[Catalyst] crud example not working

Marc Gamontini marc.gamontini at gmail.com
Mon Jul 26 12:57:21 GMT 2010


hi,

I tried to install an old CRUD Catalyst example (Rockway's AddressBook app,
detailed in chapter 3 from his PACKT book) and I got errors.  I've fully
fonctional examples (from the Definitive Guide), like SneayCat - thank you,
it's an excellent one ! - on the same machine, a CentOS 5.5 config with Perl
5.8.8, Catalyst 5.80024 and modules, among them :

Catalyst::Devel is up to date (1.28)
DBIx::Class is up to date (0.08123).
Catalyst::Model::DBIC::Schema is up to date (0.43)
Catalyst::Devel is up to date (1.28).
Catalyst::Plugin::Authentication is up to date (0.10016).
Catalyst::Plugin::Authorization::Roles is up to date (0.08).
Catalyst::Plugin::ConfigLoader is up to date (0.28).
Catalyst::Plugin::Session is up to date (0.30).
Catalyst::Plugin::Session::State::Cookie is up to date (0.17).
Catalyst::Plugin::Session::Store::FastMmap is up to date (0.13).
Catalyst::Plugin::StackTrace is up to date (0.11).
Catalyst::Plugin::Static::Simple is up to date (0.29).
Class::MOP is up to date (1.04)
I applied changes detailed here (*AddressBook::Schema::AddressDB::Result*):
http://wiki.catalystframework.org/wiki/thebookerrata
http://lists.scsys.co.uk/pipermail/catalyst/2009-April/021929.html

It doesn't work for me and i'm lost : I don't understand why the
component can't be instantiated. Is something missing ?
Thank you in advance for your help !
Marc

Report :

#script/addressbook_server.pl
Couldn't load class (AddressBook) because: Couldn't instantiate component
"AddressBook::Model::AddressDB", "Couldn't load class
(AddressBook::Schema::AddressDB) because:
DBIx::Class::Schema::throw_exception(): DBIx::Class::Row::throw_exception():
Can't locate AddressBook/Schema/AddressDB/Result/Addresses.pm in @INC (@INC
contains: /root/AddressBook/script/../lib
/root/perl5/lib/perl5/i386-linux-thread-multi /root/perl5/lib/perl5
/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl
/usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at
/root/perl5/lib/perl5/Class/C3/Componentised.pm line 135.
Compilation failed in require at
/root/perl5/lib/perl5/Class/C3/Componentised.pm line 135.
Compilation failed in require at
/root/perl5/lib/perl5/Class/C3/Componentised.pm line 135.
Compilation failed in require at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 114.
 at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 120
        Class::MOP::__ANON__('DBIx::Class::Schema::throw_exception():
DBIx::Class::Row::thr...') called at /root/perl5/lib/perl5/Try/Tiny.pm line
98
        Try::Tiny::try('CODE(0xaefb290)', 'Try::Tiny::Catch=3DREF(0xaeb31b0=
)')
called at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line
125

Class::MOP::load_first_existing_class('AddressBook::Schema::AddressDB')
called at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line
137
        Class::MOP::load_class('AddressBook::Schema::AddressDB') called at
/root/perl5/lib/perl5/Catalyst/Model/DBIC/Schema/Types.pm line 21

Catalyst::Model::DBIC::Schema::Types::__ANON__('AddressBook::Schema::Addres=
sDB')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/TypeCoercion.pm
line 63

Moose::Meta::TypeCoercion::__ANON__('AddressBook::Schema::AddressDB') called
at /root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/TypeCoercion.pm
line 97

Moose::Meta::TypeCoercion::coerce('Moose::Meta::TypeCoercion=3DHASH(0xae2b0=
e4)',
'AddressBook::Schema::AddressDB') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/TypeConstraint.pm
line 90

Moose::Meta::TypeConstraint::coerce('Moose::Meta::TypeConstraint=3DHASH(0xa=
e6f4dc)',
'AddressBook::Schema::AddressDB') called at
/root/perl5/lib/perl5/MooseX/Types/TypeDecorator.pm line 206
        eval {...} called at
/root/perl5/lib/perl5/MooseX/Types/TypeDecorator.pm line 205

MooseX::Types::TypeDecorator::AUTOLOAD('MooseX::Types::TypeDecorator=3DHASH=
(0xadcaef0)',
'AddressBook::Schema::AddressDB') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Attribute.pm line
742

Moose::Meta::Attribute::_coerce_and_verify('Moose::Meta::Attribute=3DHASH(0=
xaeab4e0)',
'AddressBook::Schema::AddressDB',
'AddressBook::Model::AddressDB=3DHASH(0xaf55448)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Attribute.pm line
398

Moose::Meta::Attribute::initialize_instance_slot('Moose::Meta::Attribute=3D=
HASH(0xaeab4e0)',
'Moose::Meta::Instance=3DHASH(0xaefb254)',
'AddressBook::Model::AddressDB=3DHASH(0xaf55448)', 'HASH(0xaf55304)') called
at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Class.pm line 567

Class::MOP::Class::_construct_instance('Moose::Meta::Class=3DHASH(0xadd3528=
)',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Class.pm line 540
        Class::MOP::Class::new_object('Moose::Meta::Class=3DHASH(0xadd3528)=
',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Class.pm line 256
        Moose::Meta::Class::new_object('Moose::Meta::Class=3DHASH(0xadd3528=
)',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Object.pm line 25
        Moose::Object::new('AddressBook::Model::AddressDB', 'AddressBook',
'HASH(0xae9ed8c)') called at generated method (unknown origin) line 3
        Catalyst::Model::DBIC::Schema::new('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xae9ed8c)') called at
/root/perl5/lib/perl5/MooseX/Traits/Pluggable.pm line 131

MooseX::Traits::Pluggable::new_with_traits('AddressBook::Model::AddressDB',
'AddressBook') called at /root/perl5/lib/perl5/CatalystX/Component/Traits.pm
line 145

CatalystX::Component::Traits::COMPONENT('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 48

Class::MOP::Method::Wrapped::__ANON__('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 89

Catalyst::Model::DBIC::Schema::COMPONENT('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/Catalyst.pm line 2502
        eval {...} called at /root/perl5/lib/perl5/Catalyst.pm line 2502
        Catalyst::setup_component('AddressBook',
'AddressBook::Model::AddressDB') called at /root/perl5/lib/perl5/Catalyst.pm
line 2416
        Catalyst::setup_components('AddressBook') called at
/root/perl5/lib/perl5/Catalyst.pm line 1142
        Catalyst::setup('AddressBook') called at
/root/AddressBook/script/../lib/AddressBook.pm line 42
        require AddressBook.pm called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 114
        Class::MOP::__ANON__() called at /root/perl5/lib/perl5/Try/Tiny.pm
line 71
        eval {...} called at /root/perl5/lib/perl5/Try/Tiny.pm line 67
        Try::Tiny::try('CODE(0x9f9cd50)', 'Try::Tiny::Catch=3DREF(0xa74b390=
)')
called at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line
125
        Class::MOP::load_first_existing_class('AddressBook') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 137
        Class::MOP::load_class('AddressBook') called at
/root/perl5/lib/perl5/Catalyst/ScriptRole.pm line 61

Catalyst::ScriptRole::_run_application('Catalyst::Script::Server=3DHASH(0xa=
7726f4)')
called at /root/perl5/lib/perl5/Catalyst/Script/Server.pm line 181

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 48

Class::MOP::Method::Wrapped::__ANON__('Catalyst::Script::Server=3DHASH(0xa7=
726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 89

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at /root/perl5/lib/perl5/Catalyst/ScriptRunner.pm line 20
        Catalyst::ScriptRunner::run('Catalyst::ScriptRunner', 'AddressBook',
'Server') called at script/addressbook_server.pl line 8
 at /root/perl5/lib/perl5/MooseX/Types/TypeDecorator.pm line 208

MooseX::Types::TypeDecorator::AUTOLOAD('MooseX::Types::TypeDecorator=3DHASH=
(0xadcaef0)',
'AddressBook::Schema::AddressDB') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Attribute.pm line
742

Moose::Meta::Attribute::_coerce_and_verify('Moose::Meta::Attribute=3DHASH(0=
xaeab4e0)',
'AddressBook::Schema::AddressDB',
'AddressBook::Model::AddressDB=3DHASH(0xaf55448)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Attribute.pm line
398

Moose::Meta::Attribute::initialize_instance_slot('Moose::Meta::Attribute=3D=
HASH(0xaeab4e0)',
'Moose::Meta::Instance=3DHASH(0xaefb254)',
'AddressBook::Model::AddressDB=3DHASH(0xaf55448)', 'HASH(0xaf55304)') called
at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Class.pm line 567

Class::MOP::Class::_construct_instance('Moose::Meta::Class=3DHASH(0xadd3528=
)',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Class.pm line 540
        Class::MOP::Class::new_object('Moose::Meta::Class=3DHASH(0xadd3528)=
',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Meta/Class.pm line 256
        Moose::Meta::Class::new_object('Moose::Meta::Class=3DHASH(0xadd3528=
)',
'HASH(0xaf55304)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Moose/Object.pm line 25
        Moose::Object::new('AddressBook::Model::AddressDB', 'AddressBook',
'HASH(0xae9ed8c)') called at generated method (unknown origin) line 3
        Catalyst::Model::DBIC::Schema::new('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xae9ed8c)') called at
/root/perl5/lib/perl5/MooseX/Traits/Pluggable.pm line 131

MooseX::Traits::Pluggable::new_with_traits('AddressBook::Model::AddressDB',
'AddressBook') called at /root/perl5/lib/perl5/CatalystX/Component/Traits.pm
line 145

CatalystX::Component::Traits::COMPONENT('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 48

Class::MOP::Method::Wrapped::__ANON__('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 89

Catalyst::Model::DBIC::Schema::COMPONENT('AddressBook::Model::AddressDB',
'AddressBook', 'HASH(0xaf553a0)') called at
/root/perl5/lib/perl5/Catalyst.pm line 2502
        eval {...} called at /root/perl5/lib/perl5/Catalyst.pm line 2502
        Catalyst::setup_component('AddressBook',
'AddressBook::Model::AddressDB') called at /root/perl5/lib/perl5/Catalyst.pm
line 2416
        Catalyst::setup_components('AddressBook') called at
/root/perl5/lib/perl5/Catalyst.pm line 1142
        Catalyst::setup('AddressBook') called at
/root/AddressBook/script/../lib/AddressBook.pm line 42
        require AddressBook.pm called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 114
        Class::MOP::__ANON__() called at /root/perl5/lib/perl5/Try/Tiny.pm
line 71
        eval {...} called at /root/perl5/lib/perl5/Try/Tiny.pm line 67
        Try::Tiny::try('CODE(0x9f9cd50)', 'Try::Tiny::Catch=3DREF(0xa74b390=
)')
called at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line
125
        Class::MOP::load_first_existing_class('AddressBook') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 137
        Class::MOP::load_class('AddressBook') called at
/root/perl5/lib/perl5/Catalyst/ScriptRole.pm line 61

Catalyst::ScriptRole::_run_application('Catalyst::Script::Server=3DHASH(0xa=
7726f4)')
called at /root/perl5/lib/perl5/Catalyst/Script/Server.pm line 181

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 48

Class::MOP::Method::Wrapped::__ANON__('Catalyst::Script::Server=3DHASH(0xa7=
726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 89

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at /root/perl5/lib/perl5/Catalyst/ScriptRunner.pm line 20
        Catalyst::ScriptRunner::run('Catalyst::ScriptRunner', 'AddressBook',
'Server') called at script/addressbook_server.pl line 8"Compilation failed
in require at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm
line 114.
 at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 120
        Class::MOP::__ANON__('Couldn\'t instantiate component
"AddressBook::Model::AddressD...') called at
/root/perl5/lib/perl5/Try/Tiny.pm line 98
        Try::Tiny::try('CODE(0x9f9cd50)', 'Try::Tiny::Catch=3DREF(0xa74b390=
)')
called at /root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line
125
        Class::MOP::load_first_existing_class('AddressBook') called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP.pm line 137
        Class::MOP::load_class('AddressBook') called at
/root/perl5/lib/perl5/Catalyst/ScriptRole.pm line 61

Catalyst::ScriptRole::_run_application('Catalyst::Script::Server=3DHASH(0xa=
7726f4)')
called at /root/perl5/lib/perl5/Catalyst/Script/Server.pm line 181

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 48

Class::MOP::Method::Wrapped::__ANON__('Catalyst::Script::Server=3DHASH(0xa7=
726f4)')
called at
/root/perl5/lib/perl5/i386-linux-thread-multi/Class/MOP/Method/Wrapped.pm
line 89

Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0xa7726f4)')
called at /root/perl5/lib/perl5/Catalyst/ScriptRunner.pm line 20
        Catalyst::ScriptRunner::run('Catalyst::ScriptRunner', 'AddressBook',
'Server') called at script/addressbook_server.pl line 8
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20100726/de74c=
d33/attachment.htm


More information about the Catalyst mailing list