Stiamo migrando il progetto JSF 1.1 (MyFaces) a JSF 2. L'idea è di migrare periodicamente mantenendo sia JSP che XHTML insieme per qualche tempo. Utilizziamo molti tag ajax4jsf-1.1.1 nelle pagine JSP. Non usiamo RichFaces. Dopo aver configurato il sistema per JSF 2 (con tutte le modifiche di configurazione di cui tutorial di Balusc) Quando ha cercato di accedere alla pagina JSP con ajax4jsf.jar nel percorso di classe, si ottiene un'eccezione:Migrazione di JSF 1.1 con Ajax4jsf 1.x in 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)
Sembra ajax4jsf.jar è non compatibile con JSF 2. Sembra un problema con la configurazione di LifeCycle.
C'è un modo per far funzionare a4j con JSP JSF 2? So che quando usiamo XHTML non abbiamo bisogno di tutto questo.
Hai provato a usare RichFaces 4 invece di Ajax4jsf? –
Sì, ho provato rapidamente. Ma affrontano problemi con la navigazione e la gestione delle azioni con JSP. Non l'ho approfondito perché avevamo in programma di utilizzare primefaces in futuro e non vogliamo avventurarci in Richfaces al momento. –
Per farvi sapere, RichFaces ha assorbito il progetto ajax4jsf. Non capisco perché non * avventura * in RichFaces. –