RSS
 

Archive for the ‘Perl/Catalyst’ Category

Catalystで学校JP復活!SaaSesにて公開予定

14 4月

学校JPを閉鎖しました から半年、
PerlフレームワークCatalystを用いて復活させます!!

———————————–
$ catalyst.pl App
$ App/script/app_create.pl view TT TT
$ App/script/app_create.pl model DBIC DBIC::Schema Blog::Schema create=static dbi:mysql:schooljp 【username】 【password】
———————————–

cf. CatalystにおけるScaffoldコマンド!

———————————–
$ vi App/lib/App.pm
———————————–

use Catalyst qw/
        Unicode
        ConfigLoader
        Static::Simple
        Charsets::Japanese
        Session
        Session::Store::FastMmap
        Session::State::Cookie
        FormValidator::Simple
        Email
/;

__PACKAGE__->config(
        name => 'App',
        email => ['Sendmail'],
        validator => {
                plugins => ['Japanese'],
                options => {charset => 'utf8'},
        },
);

———————————–
$ vi App/lib/App/View/TT.pm
———————————–

__PACKAGE__->config(
    TEMPLATE_EXTENSION => '.tpl',
    ENCODING => 'utf-8',
    render_die => 1,
);

———————————–
$ vi App/lib/App/Model/DBIC.pm
———————————–

__PACKAGE__->config(
    schema_class => 'App::Schema',

    connect_info => {
        dsn => 'dbi:mysql:schooldb',
        user => '*************',
        password => '*************',
        AutoCommit => q{1},
        mysql_enable_utf8 => 1,
        on_connect_do => ["SET NAMES utf8"],
   }
);

———————————–
$ vi App/lib/App/Controller/Root.pm
———————————–

sub category :Regex('^category/(\d{1,})$') {...}
sub detail :Regex('^category/(\d{1,})/prefecture/(\d{1,})/detail/(\d{1,})\.html$') {...}
.....

———————————–
$ sudo vi /etc/apache2/sites-available/gakko
———————————–

cf. Apache x mod_perl x Catalyst(Ubuntu10.04)

 

Mechanizeでダメなら、Seleniumだ!

21 11月

Javascriptで制御されているなどの理由で
Mechanizeが使えない場合は、Seleniumで対応!

本来は、Seleniumは自動テストに使うらしいのですがw
cf .ブラウザを選ばずWebテストを自動化するSelenium

Ubuntu10.10では以下のように設定し、実現しました!
Mechanizeでできなかった箇所はSeleniumでやれば無敵ww

__________________________

(1) Selenium RCをインストール
http://seleniumhq.org/download/

(2) Selenium IDEをインストール(firefox-addon)
https://addons.mozilla.org/ja/firefox/addon/2079/

(3) Perlモジュールなどその他インストール

% sudo cpan Time::HiRes Test::WWW::Selenium Test::More Test::Exception
% sudo aptitude install libtest-www-selenium-perl

__________________________

設定は以上。
Perlで書いたあとに以下のようにすることで実行可能。

% java -jar selenium-server.jar
% perl submit.pl

cf. [Testing][Perl]Test::WWW::SeleniumでPerlからSelenium RCを操作する

 
 

Apache x mod_perl x Catalyst(Ubuntu10.04)

20 10月

% sudo aptitude install apache2-mpm-prefork
% sudo aptitude install libapache2-mod-perl2
% sudo cpan Catalyst::Engine::Apache
% sudo a2enmod perl

% sudo vi /etc/apache2/sites-available/MyApp

—————————————————

<VirtualHost *:80>
ServerName gakko.jpn.com
DocumentRoot /var/www/gakko.jpn.com/App
PerlOptions +Parent
PerlSwitches -I/var/www/gakko.jpn.com/App/lib
PerlModule App
SetHandler  modperl
PerlResponseHandler App
</VirtualHost>

—————————————————

% sudo a2ensite MyApp
% sudo /etc/init.d/apache2 restart