Я недавно унаследовал установку RT, и после обновления до версии 4.2.12 скрипты больше не могут быть созданы. Это происходит, если кто-то пытается создать сценарий локально для определенной очереди или глобально. Стандартное сообщение "Произошла внутренняя ошибка" выкидывается.
Когда я смотрю в системный журнал, я вижу
[17510] Can't call method "Queue" on an undefined value at /opt/rt4/sbin/../lib/RT/Scrip.pm line 450.#012#012Stack:#012 [/opt/rt4/sbin/../lib/RT/Scrip.pm:450]#012
[/opt/rt4/share/html/Admin/Elements/EditScrip:83]#012
[/opt/rt4/share/html/Widgets/TitleBox:56]#012
[/opt/rt4/share/html/Admin/Elements/EditScrip:89]#012
[/opt/rt4/share/html/Admin/Queues/Scrip.html:52]#012
[/opt/rt4/share/html/Admin/autohandler:49]#012
[/opt/rt4/sbin/../lib/RT/Interface/Web.pm:681]#012
[/opt/rt4/sbin/../lib/RT/Interface/Web.pm:369]#012
[/opt/rt4/share/html/autohandler:53]#012
Trace begun at /opt/rt4/sbin/../lib/RT.pm line 303#012Log::Dispatch::__ANON__('Log::Dispatch=HASH(0x1601220)', 'Can\'t call method "Queue" on an undefined value at /opt/rt4/sbin/../lib/RT/Scrip.pm line 450.^J^JStack:^J
[/opt/rt4/sbin/../lib/RT/Scrip.pm:450]^J
[/opt/rt4/share/html/Admin/Elements/EditScrip:83]^J
[/opt/rt4/share/html/Widgets/TitleBox:56]^J
[/opt/rt4/share/html/Admin/Elements/EditScrip:89]^J
[/opt/rt4/share/html/Admin/Queues/Scrip.html:52]^J
[/opt/rt4/share/html/Admin/autohandler:49]^J
[/opt/rt4/sbin/../lib/RT/Interface/Web.pm:681]^J
[/opt/rt4/sbin/../lib/RT/Interface/Web.pm:369]^J
[/opt/rt4/share/html/autohandler:53]^J') called at /opt/rt4/sbin/../lib/RT/Interface/Web/Handler.pm line 208#012
HTML::Mason::Exception::as_rt_error('HTML::Mason::Exception=HASH(0x7a4ee40)') called at /usr/local/share/perl5/HTML/Mason/Exceptions.pm line 278#012
HTML::Mason::Exception::as_string('HTML::Mason::Exception=HASH(0x7a4ee40)', undef, '') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 567#012
HTML::Mason::Request::_handle_error('RT::Interface::Web::Request=HASH(0x7a36a48)',
HTML::Mason::Exception=HASH(0x7a4ee40)') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 518#012
HTML::Mason::Request::exec('RT::Interface::Web::Request=HASH(0x7a36a48)') called at /usr/local/share/perl5/HTML/Mason/PSGIHandler.pm line 96#012eval at /usr/local/share/perl5/HTML/Mason/PSGIHandler.pm line 96#012HTML::Mason::Requeue
Оскорбительный код находится в методе Stage () в Scrip.pm
446 sub Stage {
447 my $self = shift;
448 my %args = ( TicketObj => undef, @_ );
449 my $queue = $args{'TicketObj'}->Queue;
450 my $rec = RT::ObjectScrip->new( $self->CurrentUser );
451 $rec->LoadByCols( Scrip => $self->id, ObjectId => $queue );
452 return $rec->Stage if $rec->id;
453
454 $rec->LoadByCols( Scrip => $self->id, ObjectId => 0 );
455 return $rec->Stage if $rec->id;
456
457 return undef;
458 }
Я убедился, что $ args {'TicketObj'} не определено. Я немного не понимаю, куда идти дальше. Любая помощь приветствуется.
Предыдущий администратор внес некоторые изменения, указывающие на неправильные веб-маршруты. Я предполагаю, что некоторые URL-адреса менялись между выпусками.