[Catalyst] Operation "eq": no method found,
... Dispatcher.pm line 377
Michael Reece
mreece at vinq.com
Mon Jan 22 19:16:53 GMT 2007
i am getting intermittent errors (under mod_perl; Catalyst version
5.7003) from $c->dispatcher->uri_for_action:
Operation "eq": no method found, left argument in overloaded package
URI::_generic, right argument has no overloaded magic at /usr/local/
lib/perl5/site_perl/5.8.8/Catalyst/Dispatcher.pm line 377
sub uri_for_action {
my ( $self, $action, $captures) = @_;
$captures ||= [];
foreach my $dispatch_type ( @{ $self->dispatch_types } ) {
my $uri = $dispatch_type->uri_for_action( $action, $captures );
return( $uri eq '' ? '/' : $uri ) # line 377
if defined($uri);
}
return undef;
}
i am calling $c->dispatcher->uri_for_action like so:
my $action = $c->dispatcher->get_action_by_path($path);
unless ($action) {
$c->log->error("uri_to cannot get_action_by_path($path)");
return undef;
}
my @action_args = (defined $snippets) ? @$snippets : ();
my $uri = $c->dispatcher->uri_for_action($action, @action_args);
unless ($uri) {
$c->log->error("uri_to cannot find uri_for_action $action");
return undef;
}
any ideas?
---
michael reece :: software engineer :: mreece at vinq.com
More information about the Catalyst
mailing list