Przeprowadzamy migrację projektu JSF 1.1 (MyFaces) do JSF 2. Chodzi o to, aby migrować okresowo, utrzymując jednocześnie wspólną stronę JSP i XHTML. Używamy wielu znaczników ajax4jsf-1.1.1 na stronach JSP. Nie używamy RichFaces. Po skonfigurowaniu systemu do JSF 2 (ze wszystkich zmian konfiguracyjnych zawartych w poradniku przez Balusc), gdy próbowali uzyskać dostęp do strony JSP z ajax4jsf.jar w ścieżce klasy, mamy wyjątek:Migrowanie JSF 1.1 z Ajax4jsf 1.x do JSF 2
Caused by: java.lang.IllegalStateException: setViewHandler may not be executed after a lifecycle request has been completed
at org.apache.myfaces.application.ApplicationImpl.setViewHandler(ApplicationImpl.java:853)
at org.ajax4jsf.framework.ajax.InitPhaseListener.beforePhase(InitPhaseListener.java:92)
at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersBefore(PhaseListenerManager.java:76)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:131)
wygląda ajax4jsf.jar jest niezgodne z JSF 2. Wygląda na problem z konfiguracją LifeCycle.
Czy jest jakiś sposób, abyśmy mogli pracować a4j z JSP 2 JSF? Wiem, że kiedy używamy XHTML, nie potrzebujemy tego wszystkiego.
Czy próbowałeś użyciu RichFaces 4 zamiast ajax4jsf? –
Tak, próbowałem szybko. Ale w obliczu problemów związanych z nawigacją i działaniem z JSP. Nie zagłębialiśmy się w to, ponieważ planowaliśmy wykorzystać w przyszłości prymitywy i nie chcemy w tej chwili przygody z Richfaces. –
Po prostu, aby poinformować, RichFaces wchłonął projekt ajax4jsf. Nie rozumiem, dlaczego nie * przygody * w RichFaces. –