Details
Description
When the Seam ICEfaces example is configured to use JSF 1.2, the following NullPointerException is
thrown when the first page is viewed:
Caused by: java.lang.NullPointerException
at com.icesoft.faces.application.D2DViewHandler.calculateRenderKitId(D2DViewHandler.java:696
)
at com.sun.faces.lifecycle.RestoreViewPhase.isPostback(RestoreViewPhase.java:241)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:170)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:244)
thrown when the first page is viewed:
Caused by: java.lang.NullPointerException
at com.icesoft.faces.application.D2DViewHandler.calculateRenderKitId(D2DViewHandler.java:696
)
at com.sun.faces.lifecycle.RestoreViewPhase.isPostback(RestoreViewPhase.java:241)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:170)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:244)
A post on the JBoss forum
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4002322
indicated that our D2DSeamFaceletViewHandler was missing a constructor required for
ViewHandler decorating. Initial testing shows ICEfaces working with Seam and JSF 1.2 with
the following patch:
— core/src/com/icesoft/faces/facelets/D2DSeamFaceletViewHandler.java (revision 12910)
+++ core/src/com/icesoft/faces/facelets/D2DSeamFaceletViewHandler.java (working copy)
@@ -1,5 +1,6 @@
package com.icesoft.faces.facelets;
+import javax.faces.application.ViewHandler;
import com.sun.facelets.compiler.Compiler;
import com.sun.facelets.compiler.SAXCompiler;
@@ -17,6 +18,10 @@
// Log instance for this class
private static Log log = LogFactory.getLog(D2DSeamFaceletViewHandler.class);
+ public D2DSeamFaceletViewHandler(ViewHandler delegate)
{ + super(delegate); + }+
protected void faceletInitialize() {