【问题标题】:JSF 1.2 app not working with GlassFish v3JSF 1.2 应用程序不适用于 GlassFish v3
【发布时间】:2011-01-20 22:59:51
【问题描述】:
迁移到 GlassFish v3 / JDK6u18 / NB6.8 让我很头疼,现在我很困惑。我的项目(JSF、RichFaces、Spring)适用于 GlassFish v2 + JDK6u17。我正在使用相同的 JAR 和相同的 JSF 版本。
我的一个 JSP 包含一个 <rich:tree>,这渲染得很好,但如果我在此页面上发布值,我会得到:
警告:StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet 抛出异常
java.lang.IllegalArgumentException:在 AbstractTreeDataModel 中,rowIndex 必须为 -1。
在 org.richfaces.model.AbstractTreeDataModel.setRowIndex(AbstractTreeDataModel.java:52)
在 org.ajax4jsf.component.UIDataAdaptor.setRowIndex(UIDataAdaptor.java:289)
在 javax.faces.component.UIData.visitColumnsAndRows(UIData.java:1544)
在 javax.faces.component.UIData.visitTree(UIData.java:1212)
在 javax.faces.component.UIComponent.visitTree(UIComponent.java:1457)
在 javax.faces.component.UIForm.visitTree(UIForm.java:333)
在 javax.faces.component.UIComponent.visitTree(UIComponent.java:1457)
在 javax.faces.component.UIViewRoot.processRestoreState(UIViewRoot.java:869)
在 org.ajax4jsf.application.AjaxStateManager.restoreView(AjaxStateManager.java:439)
……
在我的其他页面上,发生了类似的事情。它包含一个<h:selectManyCheckbox>,它会在值更改的情况下重新呈现一些其他内容。因此,在提交的情况下,我会得到如下信息:
警告:StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet 抛出异常
java.lang.NullPointerException
在 javax.faces.component.UIComponentBase.findComponent(UIComponentBase.java:564)
在 org.ajax4jsf.component.EventValueExpression.getComponent(EventValueExpression.java:77)
在 org.ajax4jsf.component.EventValueExpression.getValue(EventValueExpression.java:130)
在 javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:2166)
在 com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributesOptimized(RenderKitUtils.java:608)
在 com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributes(RenderKitUtils.java:321)
在 com.sun.faces.renderkit.html_basic.SelectManyCheckboxListRenderer.renderOption(SelectManyCheckboxListRenderer.java:328)
在 com.sun.faces.renderkit.html_basic.SelectManyCheckboxListRenderer.encodeEnd(SelectManyCheckboxListRenderer.java:177)
在 javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:878)
……
我尝试过结合 JSF/RichFaces 的版本,但结果都是一样的。
任何帮助将不胜感激!
【问题讨论】:
标签:
jsf
glassfish
richfaces
java