Fatal error v Presenteri

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
kravčo
Člen | 721
+
0
-

Po update na rev115 mi moja aplikácia začala hádzať dvojicu Notice + Fatal error:

Notice: Undefined index: in Nette/Application/Presenter.php on line 990

Fatal error: Unsupported operand types in Nette/Application/Presenter.php on line 990

Keď som sa vymotal zo všetkých __toString()ov, dospel som k tomu, že problém je v tom, že sa presenteru nepodarí uložiť globalState a následne sa z neho snaží vytiahnuť prvok (= Notice), čo vedie k zlým operandom (= Fatal).

Toto sa deje pri vykresľovaní formulára v templejte (Presenter::PHASE_RENDER), z čoho jasne vyplýva prečo sa presenteru nepodarí uložiť globalState. Proces vykresľovania zlyhá pri generovaní cieľa pre formulár.

Stack trace:
#0 Nette/Application/PresenterComponent.php(269): Presenter->createSubRequest('', '', Array)
#1 Nette/Application/Presenter.php(656): PresenterComponent->link('this!', Array)
#2 Nette/Application/Link.php(107): Presenter->link('this!', Array)
#3 Nette/Web/Html.php(508): Link->__toString()
#4 Nette/Forms/Renderers/ConventionalRenderer.php(237): Html->startTag()
#5 Nette/Forms/Renderers/ConventionalRenderer.php(156): ConventionalRenderer->renderBegin()
#6 Nette/Forms/Form.php(716): ConventionalRenderer->render(Object(AppForm))
#7 %cacheBase%Nette.Template%00form.phtml(#): Form->__toString()

Predpokladám, že to súvisí s prepisovaním vecí okolo globalState v rev115…

David Grudl
Nette Core | 8154
+
0
-

Ajaj, 115 se neměla vůbec dostat ven. Díky za hlášení, hned to opravím.