Napisałem plugin, który ma za zadanie sprawdzić aktualnie zalogowanego użytkownika i w przypadku wystąpienia pewnych warunków, wyrzucić wyjątek.
I tutaj pojawia się problem. Wyjątek zgłaszany w pluginie powoduje, że layout renderuje się dwa razy. Wyjątek zgłoszony w kontrolerze nie powoduje takiego dziwnego zachowania.
ZE w wersji 1.8.4, projekt wygenerowany przez Zend_Tool, Bootstrap stworzony ręcznie ale z zachowaniem standardowych ustawień ZF. Wyjątek jest zgłaszany w metodzie postDispatch. Problem występuje również w przypadku metody preDispatch.
Jedyne info jakie udało mi się znaleźć na ten temat, to zgłoszenie błędu, który podobno został w wersji 1.6 poprawiony.
Jak rozwiązać ten problem?
Jedyne co udało mi się wymyślić, to ustawienie na sztywno modułu, kontrolera i akcji oraz ponowne wywołanie dispatchera poprzez setDispatched(false).