[Catalyst] Rose+CRUD tutorial attempt giving syntax error

Adam Mackler nabble at mackler.org
Wed Jan 6 18:32:55 GMT 2010


Hello Again:

At the moment I'm writing this, I am following along with the tutorial
from the 2007 Advent Calendar day 7:
http://www.catalystframework.org/calendar/2007/7.

After providing the needed code, the tutorial says: "Now start up your
app and point your browser at http://localhost:3000/rdgc/."

Doing so yields for me a syntax error, reproduced below.  It looks
like it's coming from somewhere outside of the Catalyst modules, so
this may not be the place to post it, but it's below anyway.  If
there's somewhere else I should send this (or if I'm causing this
myself) I'll be glad to learn that.

And note, the app DOES work if I point the browser at URIs such as
http://localhost:3000/rdgc/example_db/foo/list, so maybe I'm just not
supposed to be able to terminate the URI at "rdgc/" ...still I
wouldn't expect a report of a syntax error.

Anyway, here's the error.  If there's something in particular I should
do about it, grateful thanks for letting me know.  BTW I'm using
XML::Parser version 2.36, and Excel::Template::Plus::TT version 0.4.

----OUTPUT FOLLOWS

You can connect to your server at http://localhost:3000
Edit the root/rdgc/default page to change this content.
[info] *** Request 1 (0.045/s) [68583] [Wed Jan  6 13:10:44 2010] ***
[debug] "GET" request for "rdgc/" from "98.216.194.226"
[debug] Path is "rdgc"
[warn] Calling $c->view() will return a random view unless you specify
one of:
[warn] * $c->config(default_view => "the name of the default view to
use")
[warn] * $c->stash->{current_view} # the name of the view to use for
this request
[warn] * $c->stash->{current_view_instance} # the instance of the view
to use for this request
[warn] NB: in version 5.81, the "random" behavior will not work at
all.
[debug] using Excel template: rdgc/default.tt
[error] Caught exception in MyApp::View::Excel->process "
syntax error at line 1, column 0, byte 0 at
/usr/local/lib/perl5/site_perl/5.10.1/mach/XML/Parser.pm line 187
 at /usr/local/lib/perl5/site_perl/5.10.1/Excel/Template/Plus/TT.pm
 line 98
 Excel::Template::Plus::TT::_prepare_excel_template('Excel::Template::Plus::TT=HASH(0x91ca3e4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Excel/Template/Plus/TT.pm line 70
 Excel::Template::Plus::TT::__ANON__('Excel::Template::Plus::TT=HASH(0x91ca3e4)') called at /usr/local/lib/perl5/site_perl/5.10.1/mach/Class/MOP/Attribute.pm line 263
 Class::MOP::Attribute::default('Moose::Meta::Attribute=HASH(0x9218ca0)', 'Excel::Template::Plus::TT=HASH(0x91ca3e4)') called at accessor _excel_template defined at /usr/local/lib/perl5/site_perl/5.10.1/Excel/Template/Plus/TT.pm line 73
 Excel::Template::Plus::TT::_excel_template('Excel::Template::Plus::TT=HASH(0x91ca3e4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Moose/Meta/Method/Delegation.pm line 90
 Excel::Template::Plus::TT::output('Excel::Template::Plus::TT=HASH(0x91ca3e4)') called at /usr/local/lib/perl5/site_perl/5.10.1/CatalystX/CRUD/View/Excel.pm line 114
 CatalystX::CRUD::View::Excel::process('MyApp::View::Excel=HASH(0x8d32a84)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm line 65
 Catalyst::Action::execute('Catalyst::Action=HASH(0x91adf54)',
 'MyApp::View::Excel=HASH(0x8d32a84)', 'MyApp=HASH(0x8ed1da4)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 eval {...} called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 Catalyst::execute('MyApp=HASH(0x8ed1da4)', 'MyApp::View::Excel',
 'Catalyst::Action=HASH(0x91adf54)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm line 60
 Catalyst::Action::dispatch('Catalyst::Action=HASH(0x91adf54)',
 'MyApp=HASH(0x8ed1da4)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 257
 Catalyst::Dispatcher::_do_forward('Catalyst::Dispatcher=HASH(0x887a358)', 'forward', 'MyApp=HASH(0x8ed1da4)', 'MyApp::View::Excel=HASH(0x8d32a84)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 237
 Catalyst::Dispatcher::forward('Catalyst::Dispatcher=HASH(0x887a358)',
 'MyApp=HASH(0x8ed1da4)', 'MyApp::View::Excel=HASH(0x8d32a84)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 369
 Catalyst::forward('MyApp=HASH(0x8ed1da4)',
 'MyApp::View::Excel=HASH(0x8d32a84)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action/RenderView.pm
 line 58
 Catalyst::Action::RenderView::execute('Catalyst::Action::RenderView=HASH(0x8d3cea0)', 'MyApp::Controller::Root=HASH(0x8d339d0)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 eval {...} called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 Catalyst::execute('MyApp=HASH(0x8ed1da4)',
 'MyApp::Controller::Root',
 'Catalyst::Action::RenderView=HASH(0x8d3cea0)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm line 60
 Catalyst::Action::dispatch('Catalyst::Action::RenderView=HASH(0x8d3cea0)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Controller.pm line 123
 Catalyst::Controller::_END('MyApp::Controller::RDGC=HASH(0x8d3409c)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm line 65
 Catalyst::Action::execute('Catalyst::Action=HASH(0x918d7fc)',
 'MyApp::Controller::RDGC=HASH(0x8d3409c)', 'MyApp=HASH(0x8ed1da4)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 eval {...} called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 Catalyst::execute('MyApp=HASH(0x8ed1da4)',
 'MyApp::Controller::RDGC', 'Catalyst::Action=HASH(0x918d7fc)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm
 line 60
 Catalyst::Action::dispatch('Catalyst::Action=HASH(0x918d7fc)',
 'MyApp=HASH(0x8ed1da4)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 257
 Catalyst::Dispatcher::_do_forward('Catalyst::Dispatcher=HASH(0x887a358)', 'forward', 'MyApp=HASH(0x8ed1da4)', '_END') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 237
 Catalyst::Dispatcher::forward('Catalyst::Dispatcher=HASH(0x887a358)',
 'MyApp=HASH(0x8ed1da4)', '_END') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 369
 Catalyst::forward('MyApp=HASH(0x8ed1da4)', '_END') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Controller.pm line 87
 Catalyst::Controller::_DISPATCH('MyApp::Controller::RDGC=HASH(0x8d3409c)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm line 65
 Catalyst::Action::execute('Catalyst::Action=HASH(0x916aed0)',
 'MyApp::Controller::RDGC=HASH(0x8d3409c)', 'MyApp=HASH(0x8ed1da4)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 eval {...} called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1585
 Catalyst::execute('MyApp=HASH(0x8ed1da4)',
 'MyApp::Controller::RDGC', 'Catalyst::Action=HASH(0x916aed0)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Action.pm
 line 60
 Catalyst::Action::dispatch('Catalyst::Action=HASH(0x916aed0)',
 'MyApp=HASH(0x8ed1da4)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 257
 Catalyst::Dispatcher::_do_forward('Catalyst::Dispatcher=HASH(0x887a358)', 'forward', 'MyApp=HASH(0x8ed1da4)', '/rdgc/_DISPATCH') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line 237
 Catalyst::Dispatcher::forward('Catalyst::Dispatcher=HASH(0x887a358)',
 'MyApp=HASH(0x8ed1da4)', '/rdgc/_DISPATCH') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 369
 Catalyst::forward('MyApp=HASH(0x8ed1da4)', '/rdgc/_DISPATCH') called
 at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Dispatcher.pm line
 105
 Catalyst::Dispatcher::dispatch('Catalyst::Dispatcher=HASH(0x887a358)', 'MyApp=HASH(0x8ed1da4)') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1533
 Catalyst::dispatch('MyApp=HASH(0x8ed1da4)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Plugin/Static/Simple.pm line 77
 Catalyst::Plugin::Static::Simple::dispatch('MyApp=HASH(0x8ed1da4)')
 called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1870
 eval {...} called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 1861
 Catalyst::handle_request('MyApp', 'env', 'HASH(0x8e0e8c4)') called
 at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Engine/HTTP.pm line
 394
 Catalyst::Engine::HTTP::_handler('Catalyst::Engine::HTTP=HASH(0x887a560)', 'MyApp', 3000, 'GET', '/rdgc/', 'HTTP/1.1') called at /usr/local/lib/perl5/site_perl/5.10.1/Catalyst/Engine/HTTP.pm line 291
 Catalyst::Engine::HTTP::run('Catalyst::Engine::HTTP=HASH(0x887a560)',
 'MyApp', 3000, undef, 'HASH(0x856d39c)') called at
 /usr/local/lib/perl5/site_perl/5.10.1/Catalyst.pm line 2163
 Catalyst::run('MyApp', 3000, undef, 'HASH(0x856d39c)') called at
 ./script/karman_server.pl line 68
 main::__ANON__() called at ./script/karman_server.pl line 107"
[info] Request took 0.142068s (7.039/s)
.------------------------------------------------------------+-----------.
| Action                                                     | Time
|
+------------------------------------------------------------+-----------+
| /rdgc/default                                              |
0.000325s |
| /end                                                       |
0.123021s |
|  -> MyApp::View::Excel->process                           |
0.120840s |
'------------------------------------------------------------+-----------'



----END OF OUTPUT


On Tue, Jan 05, 2010 at 12:12:16PM -0600, Peter Karman wrote:
> Hi Adam,
> 
> Try the tutorial here:
> http://www.catalystframework.org/calendar/2007/7
> 
> It uses Rose::DBx::Garden::Catalyst, which assumes you are using RDBO.
> 
> If you want to use DBIx::Class as your ORM package, you can do that too,
> but it requires a little more manual intervention at present as I
> haven't CPANified the bootstrapping code I have lying around somewhere.
> 
> Either way, there are example apps for both RDBO and DBIC in their
> respective test directories here:
> http://cpansearch.perl.org/src/KARMAN/CatalystX-CRUD-ModelAdapter-DBIC-0.11/t/example
> http://cpansearch.perl.org/src/KARMAN/CatalystX-CRUD-Model-RDBO-0.22/t/lib/
> 
> Feel free to post back here with any questions/comments/patches.
> 
> pek
> 
> -- 
> Peter Karman  .  http://peknet.com/  .  peter at peknet.com



More information about the Catalyst mailing list