Миграция на GlassFish v3 / JDK6u18 / NB6.8 вызывает у меня сильные головные боли, и сейчас я в замешательстве. Мой проект (JSF, RichFaces, Spring) отлично работает с GlassFish v2 + JDK6u17. Я использую те же JAR и ту же версию JSF.
Одна из моих JSP содержит <rich:tree>
, это прекрасно выглядит, но если я опубликую значения на этой странице, я получу:
WARNING: StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet threw exception
java.lang.IllegalArgumentException: In AbstractTreeDataModel rowIndex must be -1.
at org.richfaces.model.AbstractTreeDataModel.setRowIndex(AbstractTreeDataModel.java:52)
at org.ajax4jsf.component.UIDataAdaptor.setRowIndex(UIDataAdaptor.java:289)
at javax.faces.component.UIData.visitColumnsAndRows(UIData.java:1544)
at javax.faces.component.UIData.visitTree(UIData.java:1212)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457)
at javax.faces.component.UIForm.visitTree(UIForm.java:333)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457)
at javax.faces.component.UIViewRoot.processRestoreState(UIViewRoot.java:869)
at org.ajax4jsf.application.AjaxStateManager.restoreView(AjaxStateManager.java:439)
....
На моей другой странице происходит нечто подобное. Он содержит <h:selectManyCheckbox>
, который переопределяет некоторые другие вещи в случае изменения значения. Так что в случае отправки я получаю что-то вроде этого:
WARNING: StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet threw exception
java.lang.NullPointerException
at javax.faces.component.UIComponentBase.findComponent(UIComponentBase.java:564)
at org.ajax4jsf.component.EventValueExpression.getComponent(EventValueExpression.java:77)
at org.ajax4jsf.component.EventValueExpression.getValue(EventValueExpression.java:130)
at javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:2166)
at com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributesOptimized(RenderKitUtils.java:608)
at com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributes(RenderKitUtils.java:321)
at com.sun.faces.renderkit.html_basic.SelectManyCheckboxListRenderer.renderOption(SelectManyCheckboxListRenderer.java:328)
at com.sun.faces.renderkit.html_basic.SelectManyCheckboxListRenderer.encodeEnd(SelectManyCheckboxListRenderer.java:177)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:878)
....
Я пытался объединить версии JSF / RichFaces, но это все равно получилось.
Любая помощь будет оценена!