Bugzilla – Attachment 112487 Details for
Bug 26819
Error when adding items to course reserves - can't view items in the staff interface
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
Error trace - listing items for a course reserve
Error trace - listing items for a course reserve.txt (text/plain), 15.05 KB, created by
David Nind
on 2020-10-25 21:10:25 UTC
(
hide
)
Description:
Error trace - listing items for a course reserve
Filename:
MIME Type:
Creator:
David Nind
Created:
2020-10-25 21:10:25 UTC
Size:
15.05 KB
patch
obsolete
> >Error trace > >Template process failed: undef error - Can't use string ("REF") as a HASH ref while "strict refs" in use at /kohadevbox/koha/Koha/Template/Plugin/AuthorisedValues.pm line 83. > at /kohadevbox/koha/C4/Templates.pm line 122 > > in C4::Templates::output at /kohadevbox/koha/C4/Templates.pm line 122 > > 119: > 120: my $data; > 121: binmode( STDOUT, ":encoding(UTF-8)" ); > 122: $template->process( $self->filename, $vars, \$data ) > 123: || die "Template process failed: ", $template->error(); > 124: return $data; > 125: } > > Show function arguments > in (eval) at /kohadevbox/koha/course_reserves/course-details.pl line 72 > > 69: course_reserves => $course_reserves, > 70: ); > 71: > 72: output_html_with_http_headers $cgi, $cookie, $template->output; > > in CGI::Compile::ROOT::kohadevbox_koha_course_reserves_course_2ddetails_2epl::__ANON__ at /kohadevbox/koha/course_reserves/course-details.pl line 2 > > 1: #!/usr/bin/perl > 2: > 3: # > 4: # Copyright 2012 Bywater Solutions > 5: # > > Show function arguments > in CGI::Compile::__ANON__ at /usr/share/perl5/CGI/Compile.pm line 139 > > 136: # this is necessary for MSWin32 > 137: my $orig_warn = $SIG{__WARN__} || sub { warn(@_) }; > 138: local $SIG{__WARN__} = sub { $orig_warn->(@_) unless $_[0] =~ /^No such signal/ }; > 139: $code->($self, $data, $path, $dir, \@args) > 140: }; > 141: }; > 142: > > in CGI::Emulate::PSGI::__ANON__ at /usr/share/perl5/CGI/Emulate/PSGI.pm line 30 > > 27: local *STDOUT = $stdout; > 28: local *STDERR = $env->{'psgi.errors'}; > 29: > 30: $code->(); > 31: } > 32: } > 33: > > Show function arguments > in Plack::App::WrapCGI::call at /usr/share/perl5/Plack/App/WrapCGI.pm line 90 > > 87: > 88: sub call { > 89: my($self, $env) = @_; > 90: $self->_app->($env); > 91: } > 92: > 93: 1; > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::App::CGIBin::serve_path at /usr/share/perl5/Plack/App/CGIBin.pm line 50 > > 47: my $app = $self->{_compiled}->{$file} ||= Plack::App::WrapCGI->new( > 48: script => $file, execute => $self->would_exec($file), > 49: )->to_app; > 50: $app->($env); > 51: } > 52: > 53: 1; > > Show function arguments > in Plack::App::File::call at /usr/share/perl5/Plack/App/File.pm line 34 > > 31: $env->{'plack.file.PATH_INFO'} = ''; > 32: } > 33: > 34: return $self->serve_path($env, $file); > 35: } > 36: > 37: sub locate_file { > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::LogWarn::call at /usr/share/perl5/Plack/Middleware/LogWarn.pm line 22 > > 19: message => join '', @_ > 20: }); > 21: }; > 22: my $res = $self->app->($env); > 23: > 24: return $res; > 25: } > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::Log4perl::call at /usr/share/perl5/Plack/Middleware/Log4perl.pm line 30 > > 27: $self->logger->$level($args->{message}); > 28: }; > 29: > 30: $self->app->($env); > 31: } > 32: > 33: 1; > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::App::URLMap::call at /usr/share/perl5/Plack/App/URLMap.pm line 71 > > 68: return $self->response_cb($app->($env), sub { > 69: $env->{PATH_INFO} = $orig_path_info; > 70: $env->{SCRIPT_NAME} = $orig_script_name; > 71: }); > 72: } > 73: > 74: DEBUG && warn "All matching failed.\n"; > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Koha::Middleware::RealIP::call at /kohadevbox/koha/Koha/Middleware/RealIP.pm line 64 > > 61: } > 62: } > 63: > 64: return $self->app->($env); > 65: } > 66: > 67: =head2 get_real_ip > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Koha::Middleware::SetEnv::call at /kohadevbox/koha/Koha/Middleware/SetEnv.pm line 104 > > 101: %setenvs > 102: }; > 103: > 104: return $self->app->($env); > 105: } > 106: > 107: =head1 AUTHOR > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::Static::call at /usr/share/perl5/Plack/Middleware/Static.pm line 18 > > 15: return $res; > 16: } > 17: > 18: return $self->app->($env); > 19: } > 20: > 21: sub _handle_static { > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::ReverseProxy::call at /usr/share/perl5/Plack/Middleware/ReverseProxy.pm line 68 > > 65: } > 66: } > 67: > 68: $self->app->($env); > 69: } > 70: > 71: 1; > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::Lint::call at /usr/share/perl5/Plack/Middleware/Lint.pm line 24 > > 21: my $env = shift; > 22: > 23: $self->validate_env($env); > 24: my $res = $self->app->($env); > 25: return $self->validate_res($res); > 26: } > 27: > > Show function arguments > in Plack::Middleware::StackTrace::try {...} at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > in (eval) at /usr/share/perl5/Try/Tiny.pm line 101 > > 98: if ( $wantarray ) { > 99: @ret = $try->(); > 100: } elsif ( defined $wantarray ) { > 101: $ret[0] = $try->(); > 102: } else { > 103: $try->(); > 104: }; > > in Plack::Middleware::StackTrace::call at /usr/share/perl5/Try/Tiny.pm line 94 > > 91: > 92: # failed will be true if the eval dies, because 1 will not be returned > 93: # from the eval body > 94: my $failed = not eval { > 95: $@ = $prev_error; > 96: > 97: # evaluate the try block in the correct context > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in Plack::Middleware::AccessLog::call at /usr/share/perl5/Plack/Middleware/AccessLog.pm line 27 > > 24: my $self = shift; > 25: my($env) = @_; > 26: > 27: my $res = $self->app->($env); > 28: > 29: if ( ref($res) && ref($res) eq 'ARRAY' ) { > 30: my $content_length = Plack::Util::content_length($res->[2]); > > Show function arguments > in Plack::Component::__ANON__ at /usr/share/perl5/Plack/Component.pm line 50 > > 47: sub to_app { > 48: my $self = shift; > 49: $self->prepare_app; > 50: return sub { $self->call(@_) }; > 51: } > 52: > 53: > > Show function arguments > in (eval) at /usr/share/perl5/Plack/Util.pm line 145 > > 142: sub run_app($$) { > 143: my($app, $env) = @_; > 144: > 145: return eval { $app->($env) } || do { > 146: my $body = "Internal Server Error"; > 147: $env->{'psgi.errors'}->print($@); > 148: [ 500, [ 'Content-Type' => 'text/plain', 'Content-Length' => length($body) ], [ $body ] ]; > > in Plack::Util::run_app at /usr/share/perl5/Plack/Util.pm line 145 > > 142: sub run_app($$) { > 143: my($app, $env) = @_; > 144: > 145: return eval { $app->($env) } || do { > 146: my $body = "Internal Server Error"; > 147: $env->{'psgi.errors'}->print($@); > 148: [ 500, [ 'Content-Type' => 'text/plain', 'Content-Length' => length($body) ], [ $body ] ]; > > Show function arguments > in Starman::Server::dispatch_request at /usr/share/perl5/Starman/Server.pm line 195 > > 192: my ($self, $env) = @_; > 193: > 194: # Run PSGI apps > 195: my $res = Plack::Util::run_app($self->{app}, $env); > 196: > 197: if (ref $res eq 'CODE') { > 198: $res->(sub { $self->_finalize_response($env, $_[0]) }); > > Show function arguments > in Starman::Server::process_request at /usr/share/perl5/Starman/Server.pm line 298 > > 295: > 296: $self->_prepare_env($env); > 297: > 298: $self->dispatch_request($env); > 299: > 300: DEBUG && warn "[$$] Request done\n"; > 301: > > Show function arguments > in Net::Server::run_client_connection at /usr/share/perl5/Net/Server.pm line 74 > > 71: $self->post_accept_hook($c); # user customizable hook > 72: > 73: my $ok = $self->allow_deny($c) && $self->allow_deny_hook($c); # do allow/deny check on client info > 74: if ($ok) { > 75: $self->process_request($c); # This is where the core functionality of a Net::Server should be. > 76: } else { > 77: $self->request_denied_hook($c); # user customizable hook > > Show function arguments > in (eval) at /usr/share/perl5/Net/Server/PreFork.pm line 229 > > 226: $prop->{'connected'} = 1; > 227: print $write "$$ processing\n"; > 228: > 229: my $ok = eval { $self->run_client_connection; 1 }; > 230: if (! $ok) { > 231: print $write "$$ exiting\n"; > 232: die $@; > > in Net::Server::PreFork::run_child at /usr/share/perl5/Net/Server/PreFork.pm line 229 > > 226: $prop->{'connected'} = 1; > 227: print $write "$$ processing\n"; > 228: > 229: my $ok = eval { $self->run_client_connection; 1 }; > 230: if (! $ok) { > 231: print $write "$$ exiting\n"; > 232: die $@; > > Show function arguments > in Net::Server::PreFork::run_n_children at /usr/share/perl5/Net/Server/PreFork.pm line 187 > > 184: if ($prop->{'child_communication'}) { > 185: $prop->{'parent_sock'} = $childsock; > 186: } > 187: $self->run_child; > 188: } > 189: } > 190: } > > Show function arguments > in Net::Server::PreFork::loop at /usr/share/perl5/Net/Server/PreFork.pm line 111 > > 108: > 109: my $start = $prop->{'min_servers'}; > 110: $self->log(3, "Beginning prefork ($start processes)"); > 111: $self->run_n_children($start); > 112: > 113: $self->run_parent; > 114: } > > Show function arguments > in Net::Server::run at /usr/share/perl5/Net/Server.pm line 60 > > 57: $self->post_bind; # allow for chrooting, becoming a different user and group > 58: > 59: $self->pre_loop_hook; # user customizable hook > 60: $self->loop; # repeat accept/process cycle > 61: > 62: $self->server_close; # close the server and release the port > 63: } > > Show function arguments > in Starman::Server::run at /usr/share/perl5/Starman/Server.pm line 106 > > 103: max_requests => $options->{max_requests} || 1000, > 104: user => $options->{user} || $>, > 105: group => $options->{group} || $), > 106: listen => $options->{backlog} || 1024, > 107: check_for_waiting => 1, > 108: no_client_stdout => 1, > 109: %extra > > Show function arguments > in Plack::Handler::Starman::run at /usr/share/perl5/Plack/Handler/Starman.pm line 25 > > 22: } > 23: $self->{net_server_args} = \%nsa if %nsa; > 24: > 25: Starman::Server->new->run($app, {%$self}); > 26: } > 27: > 28: 1; > > Show function arguments > in Plack::Loader::Delayed::run at /usr/share/perl5/Plack/Loader/Delayed.pm line 20 > > 17: }; > 18: > 19: $server->{psgi_app_builder} = $self->{builder}; > 20: $server->run($app); > 21: } > 22: > 23: 1; > > Show function arguments > in Plack::Runner::run at /usr/share/perl5/Plack/Runner.pm line 277 > > 274: $loader->preload_app($app); > 275: > 276: my $server = $self->load_server($loader); > 277: $loader->run($server); > 278: } > 279: > 280: 1; > > Show function arguments > at /usr/bin/starman line 38 > > 35: } > 36: > 37: $runner->set_options(argv => \@argv); > 38: $runner->run; > 39: > 40: __END__ > 41:
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 26819
: 112487 |
112848
|
112861
|
112878
|
113926
|
113927
|
113978
|
113979
|
113980