Migración de JSF 1.1 con Ajax4jsf 1.x a JSF 2

Estamos migrando el proyecto JSF 1.1 (MyFaces) a JSF 2. La idea es migrar periódicamente manteniendo JSP y XHTML juntos durante algún tiempo. Utilizamos muchas etiquetas ajax4jsf-1.1.1 en las páginas JSP. No utilizamos RichFaces. Después de configurar el sistema a JSF 2 (con todos los cambios de configuración mencionados en el tutorial de Balusc) Cuando intentamos acceder a la página JSP con ajax4jsf.jar en classpath, obtenemos una excepción:

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)

Parece que ajax4jsf.jar no es compatible con JSF 2. Parece un problema con la configuración de LifeCycle.

¿Hay alguna manera de hacer que a4j funcione con JSF 2 JSP? Sé que cuando usamos XHTML no necesitamos todo esto.

Respuestas a la pregunta(1)

Su respuesta a la pregunta