[Catalyst] How and where to run a method at Catalyst start up?

Emmanuel Quevillon tuco at pasteur.fr
Tue May 19 19:24:19 GMT 2009


Tomas Doran wrote:
>
> On 19 May 2009, at 13:01, Emmanuel Quevillon wrote:
>>
>> I tried what you mentioned but it didn't change anything
>> unfortunately. Has someone in the list another idea what's is going
>> wrong?
>
> No idea as we don't know where it's being called from, or why it's 
> failing.
>
> Try with perl -MDevel::SimpleTrace and post a stack trace.
>
Hi Tom,

Thanks to try helping me. Here is the Trace from Devel::SimpleTrace. 
Actually, the error is not even when I try
to call my method from my Catalyst::Model but when I start the dev server :

tuco at gin bibliolist$ perl -MDevel::SimpleTrace script/bibliolist_server.pl
Couldn't instantiate component "BiblioList::Model::Mapping", "Can't call 
method "search" on an undefined value
    at 
BiblioList::Model::Mapping::_load_BiblioRemote_mapping(/home/tuco/src/perl/projects/Catalyst/BiblioList/dev/bibliolist-0.08/script/../lib/BiblioList/Model/Mapping.pm:37)
    at 
BiblioList::Model::Mapping::BUILD(/home/tuco/src/perl/projects/Catalyst/BiblioList/dev/bibliolist-0.08/script/../lib/BiblioList/Model/Mapping.pm:20)
    at 
Class::MOP::Method::execute(/usr/local/lib/perl/5.10.0/Class/MOP/Method.pm:120)
    at 
Moose::Object::BUILDALL(/usr/local/share/perl/5.10.0/Moose/Object.pm:55)
    at Moose::Object::new(/usr/local/share/perl/5.10.0/Moose/Object.pm:28)
    at Catalyst::Model::new(generated method (unknown origin):2)
    at 
Catalyst::Component::COMPONENT(/usr/local/share/perl/5.10.0/Catalyst/Component.pm:85)
    at <eval>(/usr/local/share/perl/5.10.0/Catalyst.pm:2202)
    at 
Catalyst::setup_component(/usr/local/share/perl/5.10.0/Catalyst.pm:2202)
    at 
Catalyst::setup_components(/usr/local/share/perl/5.10.0/Catalyst.pm:2156)
    at Catalyst::setup(/usr/local/share/perl/5.10.0/Catalyst.pm:1071)
    at 
<eval>(/home/tuco/src/perl/projects/Catalyst/BiblioList/dev/bibliolist-0.08/script/../lib/BiblioList.pm:75)    
<== call to BiblioList->setup()
    at main::__ANON__(script/bibliolist_server.pl:66)
    at main::(script/bibliolist_server.pl:104)" at 
script/bibliolist_server.pl line 66
Compilation failed in require at script/bibliolist_server.pl line 66.



> I'd also recommend you start a new TestApp, and try to make just the 
> smallest subset of an application you can to demonstrate / prototype 
> out the functionality you want.
>
> a) This is gonna be easier to debug for you as there are less moving 
> parts
> b) It's then possible to post your app on github or upload a tarball 
> somewhere, and an interested party could have a play and see if they 
> can see your issue, without conjecture/guessing, and also without 
> having to wade through the rest of your application.
>
> Cheers
> t0m
>
I'll do it and post it to the list (github).
Cheers
Emmanuel



More information about the Catalyst mailing list