Hi, Have to restate the result of the update from 1.2.9 to 1.2.13 ;(
Now on another page which used to work we get a new problem which, however, has to do with basically the same saveState serialization problem. We now get an NPE when trying to do a search on a treeTable component. This search triggers the NPE because Trinidad attempts to serialize the applied treeTable see the following stack trace. Any ideas? Is it possible to get back to a less strict serialization mechanism ?? Does the row key set now always need to be set i.e. non-empty? The treeTable is simply used like this: <tr:treeTable initiallyExpanded="true" inlineStyle="table-layout:fixed; overflow:auto; margin: 0px 10px 10px 10px;" width="780" rowsByDepth="#{TC1004.rowsByDepth}" var="node" value="#{TC1004.tc1004TreeModel}"> ... </tr:treeTable> Thanks in advance.. 15:44:09,660 ERROR [viewhandler] Error Rendering View[/TC1004/TC1004-Anwenderschalter-display.xhtml] java.lang.NullPointerException at org.apache.myfaces.trinidad.model.RowKeySetTreeImpl$NodeIterator._nextEntry(RowKeySetTreeImpl.java:835) at org.apache.myfaces.trinidad.model.RowKeySetTreeImpl$NodeIterator.nextItem(RowKeySetTreeImpl.java:803) at org.apache.myfaces.trinidad.model.RowKeySetTreeImpl$NodeIterator.<init>(RowKeySetTreeImpl.java:796) at org.apache.myfaces.trinidad.model.RowKeySetTreeImpl.iterator(RowKeySetTreeImpl.java:92) at java.util.AbstractCollection.toString(AbstractCollection.java:450) at java.lang.String.valueOf(String.java:2615) at java.lang.StringBuilder.append(StringBuilder.java:116) at org.apache.myfaces.trinidad.bean.util.StateUtils.saveState(StateUtils.java:295) at org.apache.myfaces.trinidad.bean.util.PropertyHashMap.saveState(PropertyHashMap.java:109) at org.apache.myfaces.trinidad.bean.util.FlaggedPropertyMap.saveState(FlaggedPropertyMap.java:183) at org.apache.myfaces.trinidad.bean.FacesBeanImpl.saveState(FacesBeanImpl.java:370) at org.apache.myfaces.trinidad.component.UIXFacesBeanImpl.saveState(UIXFacesBeanImpl.java:124) at org.apache.myfaces.trinidad.component.FacesBeanWrapper.saveState(FacesBeanWrapper.java:146) at org.apache.myfaces.trinidad.component.UIXTree$RowKeyFacesBeanWrapper.saveState(UIXTree.java:402) at org.apache.myfaces.trinidad.component.UIXComponentBase.saveState(UIXComponentBase.java:968) at org.apache.myfaces.trinidad.component.UIXCollection.saveState(UIXCollection.java:259) at org.apache.myfaces.trinidad.component.UIXTreeTable.saveState(UIXTreeTable.java:296) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:155) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.UIXCollection.processSaveState(UIXCollection.java:244) at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1119) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at org.apache.myfaces.trinidad.component.TreeState.saveState(TreeState.java:175) at org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:896) at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1119) at com.sun.faces.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:251) at org.jboss.seam.jsf.SeamStateManager.saveSerializedView(SeamStateManager.java:64) at org.apache.myfaces.trinidadinternal.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:165) at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:615) at org.apache.myfaces.trinidadinternal.facelets.TrinidadFaceletViewHandler.renderView(TrinidadFaceletViewHandler.java:116) at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189) at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at de.pta.jsf.filter.DummyFilter.doFilter(DummyFilter.java:35) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83) at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73) at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157) at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at de.pta.jsf.filter.HttpSessionTimeoutFilter.doFilter(HttpSessionTimeoutFilter.java:80) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) Best wishes Wolfgang wolfgang.toep...@pta.de 08.04.2010 12:39 Bitte antworten an "MyFaces Discussion" <users@myfaces.apache.org> An "MyFaces Discussion" <users@myfaces.apache.org> Kopie mwessend...@gmail.com, "MyFaces Discussion" <users@myfaces.apache.org> Thema Antwort: Re: Trinidad 1.2.13: another upgrade problem: UINodePropertyKey unserializable BTW it works now. The problem was simply due to our platform approach of throwing an exception when a Trinidad ERROR occurs, in this case the serializable error one can see in the log.. ;) Best wishes, Wolfgang. wolfgang.toep...@pta.de 07.04.2010 17:25 Bitte antworten an "MyFaces Discussion" <users@myfaces.apache.org> An "MyFaces Discussion" <users@myfaces.apache.org> Kopie mwessend...@gmail.com Thema Antwort: Re: Trinidad 1.2.13: another upgrade problem: UINodePropertyKey unserializable Hi, Thanks again for the info. I will try to find out more by setting CHECK_STATE_SERIALIZATION which in this case, as far as I understood, should be the right approach, should not it? The problem seems to be with the SortableModel object and the applied UINodePropertyKey. Best wishes Wolfgang Matthias Wessendorf <mat...@apache.org> Gesendet von: mwessend...@gmail.com 07.04.2010 17:09 Bitte antworten an "MyFaces Discussion" <users@myfaces.apache.org> An MyFaces Discussion <users@myfaces.apache.org> Kopie Thema Re: Trinidad 1.2.13: another upgrade problem: UINodePropertyKey unserializable hi, https://issues.apache.org/jira/browse/TRINIDAD-1245 introduced some improvements in the direction of not sticking illegal stuff into the session. (during that we also introduced those error messages: * <!-- UNSERIALIZABLE_PROPERTY_VALUE_NO_CONTAINER --> <resource key="UNSERIALIZABLE_PROPERTY_VALUE_NO_CONTAINER" dnt="false">Nicht serialisierbarer Wert: {0} für Schlüssel: {1}</resource> * <!-- COMPONENT_CHILDREN_SAVED_STATE_FAILED --> <resource key="COMPONENT_CHILDREN_SAVED_STATE_FAILED" dnt="false">Status für untergeordnete Komponenten von Komponente: {0} konnte nicht gespeichert werden</resource> ) can you double check for the parameters ? On Wed, Apr 7, 2010 at 4:01 PM, <wolfgang.toep...@pta.de> wrote: > Hi, > > Yet another problem here when trying to upgrade to 1.2.13: > > Certain tr:commandLink within a Trinidad table that are supposed to lead > to Trinidad popup dialog show the dialog but the application crashes > shortly thereafter with the > log you can see attached below. > > In 1.2.9 this used to work perfectly! > > If this reminds anyone of any particular changes to 1.2.13, please do not > hesitate to drop a brief hint. > > We are at a loss here! > > Best wishes, > Wolfgang > > 14:51:18,780 ERROR [PropertyKey] Nicht serialisierbarer Wert: > sortablemodel[javax.faces.model.listdatamo...@5e63b2] für Schlüssel: > UINodePropertyKey[value,11] > 14:51:18,832 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: > coretable[org.apache.myfaces.trinidad.component.uixtable$rowkeyfacesbeanwrap...@d20d2a, > id=table] konnte nicht gespeichert werden > 14:51:18,841 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: HtmlRowLayout[UIXFacesBeanImpl, id=j_id36] > konnte nicht gespeichert werden > 14:51:18,841 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: CoreSubform[UINodeFacesBean, > id=dataAreaDlgForm] konnte nicht gespeichert werden > 14:51:18,841 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: CoreShowDetailItem[UINodeFacesBean, > id=dataAreaDlgId] konnte nicht gespeichert werden > 14:51:18,841 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: CorePanelAccordion[UIXFacesBeanImpl, > id=mainPanelDlgAccordion] konnte nicht gespeichert werden > 14:51:18,842 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: CoreForm[UIXFacesBeanImpl, id=MainFormDlg] > konnte nicht gespeichert werden > 14:51:18,842 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: HtmlBody[UIXFacesBeanImpl, id=j_id5] konnte > nicht gespeichert werden > 14:51:18,842 ERROR [UIXComponentBase] Status für untergeordnete > Komponenten von Komponente: HtmlHtml[UIXFacesBeanImpl, id=j_id0] konnte > nicht gespeichert werden > 14:51:18,842 ERROR [viewhandler] Error Rendering > View[/popup-overview-dialog.xhtml] > java.lang.IllegalStateException: JDK Log (ws. Trinidad) erzeugt! > at > de.pta.ctrl.TrinidadLoggingRedirector$JDKLogHandler.init$_aroundBody2(TrinidadLoggingRedirector.java:172) > at > de.pta.ctrl.TrinidadLoggingRedirector$JDKLogHandler$AjcClosure3.run(TrinidadLoggingRedirector.java:1) > at > de.pta.aspect.ExceptionTracker.ajc$around$de_pta_aspect_ExceptionTracker$1$29c98745proceed(ExceptionTracker.aj:1) > at > de.pta.aspect.ExceptionTracker.ajc$around$de_pta_aspect_ExceptionTracker$1$29c98745(ExceptionTracker.aj:20) > at > de.pta.ctrl.TrinidadLoggingRedirector$JDKLogHandler.publish(TrinidadLoggingRedirector.java:172) > at java.util.logging.Logger.log(Logger.java:452) > at > org.apache.myfaces.trinidad.logging.TrinidadLogger.doLog(TrinidadLogger.java:1540) > at > org.apache.myfaces.trinidad.logging.TrinidadLogger.log(TrinidadLogger.java:336) > at > org.apache.myfaces.trinidad.logging.TrinidadLogger.warning(TrinidadLogger.java:807) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.processSaveState(UIXComponentBase.java:905) > at > javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1119) > at > com.sun.faces.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:251) > at > org.jboss.seam.jsf.SeamStateManager.saveSerializedView(SeamStateManager.java:64) > at > org.apache.myfaces.trinidadinternal.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:165) > at > com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:615) > at > javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189) > at > org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193) > at > com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) > at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) > at > com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at de.pta.jsf.filter.DummyFilter.doFilter(DummyFilter.java:35) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83) > at > org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) > at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73) > at > org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) > at > org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) > at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) > at > org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) > at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157) > at > org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > de.pta.jsf.filter.HttpSessionTimeoutFilter.doFilter(HttpSessionTimeoutFilter.java:80) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173) > at > org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) > at > org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) > at > org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:595) > > > > PTA Programmier-Technische Arbeiten GmbH > Seckenheimer Str. 65-67, 68165 Mannheim > Amtsgericht Mannheim, HRB 1139 > USt-IdNr.: DE 143 839 368 > Geschaeftsfuehrer: > Dipl.-Ing. Peter Fischer > Dr. Harald W. Busch > Dipl.-Kfm. Knut Fischer > -- Matthias Wessendorf blog: http://matthiaswessendorf.wordpress.com/ sessions: http://www.slideshare.net/mwessendorf twitter: http://twitter.com/mwessendorf PTA Programmier-Technische Arbeiten GmbH Seckenheimer Str. 65-67, 68165 Mannheim Amtsgericht Mannheim, HRB 1139 USt-IdNr.: DE 143 839 368 Geschaeftsfuehrer: Dipl.-Ing. Peter Fischer Dr. Harald W. Busch Dipl.-Kfm. Knut Fischer PTA Programmier-Technische Arbeiten GmbH Seckenheimer Str. 65-67, 68165 Mannheim Amtsgericht Mannheim, HRB 1139 USt-IdNr.: DE 143 839 368 Geschaeftsfuehrer: Dipl.-Ing. Peter Fischer Dr. Harald W. Busch Dipl.-Kfm. Knut Fischer PTA Programmier-Technische Arbeiten GmbH Seckenheimer Str. 65-67, 68165 Mannheim Amtsgericht Mannheim, HRB 1139 USt-IdNr.: DE 143 839 368 Geschaeftsfuehrer: Dipl.-Ing. Peter Fischer Dr. Harald W. Busch Dipl.-Kfm. Knut Fischer