12 Replies Latest reply on Sep 2, 2008 12:57 PM by Pete Muir

    seam 2.1 Build 296 Identity.systemOp can't be Serialized

    he youlin Novice

      seam 2.1 Build 296 Identity.systemOp can't be Serialized

        • 1. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
          Joshua Jackson Master

          he youlin wrote on Aug 31, 2008 12:53:


          seam 2.1 Build 296 Identity.systemOp can't be Serialized


          What is it exactly that you're looking for?

          • 2. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
            Pete Muir Master

            he youlin wrote on Aug 31, 2008 12:53:


            seam 2.1 Build 296 Identity.systemOp can't be Serialized


            Yup. Please file an issue in JIRA.

            • 3. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
              he youlin Novice

              sorry,I can't login JIRA.


              By the way Identity.systemOp can't be ThreadLocal type.It would cause javax.el.ELException with message: java.lang.NullPointerException as systemOp.get() is always null in evey thread.

              • 4. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                Pete Muir Master

                sorry,I can't login JIRA.

                Create a jboss.org account and use that to login.


                Put your comments on the problem and possible fix there.

                • 5. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                  Shane Bryzak Master

                  he youlin wrote on Aug 31, 2008 12:53:


                  seam 2.1 Build 296 Identity.systemOp can't be Serialized


                  Oops, fixed in SVN.

                  • 6. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                    Shane Bryzak Master

                    he youlin wrote on Aug 31, 2008 19:14:


                    sorry,I can't login JIRA.

                    By the way Identity.systemOp can't be ThreadLocal type.It would cause javax.el.ELException with message: java.lang.NullPointerException as systemOp.get() is always null in evey thread.


                    This is fixed too.

                    • 7. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                      he youlin Novice

                      hi,Shane Bryzak
                      this bug may not be fixed still.I download last build.
                      Shutdown tomcat 6 Identity serialized when ie client don't logout. And then start tomcat 6 Identity unserialized,refresh ie client with s:hasRole('something') included page. So javax.el.ELException with message: java.lang.NullPointerException happen still.

                      • 8. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                        he youlin Novice
                        pages has this code
                        
                        
                          <page view-id="/app/yosc/user/*">           
                            \<restrict>#{s:hasRole('admin')}</restrict>
                          </page>
                        
                        
                        
                        dubug page show
                        
                        
                           Exception during request processing: 
                        Caused by javax.el.ELException with message: "java.lang.NullPointerException" 
                        org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:333)
                        org.jboss.el.parser.AstFunction.getValue(AstFunction.java:84)
                        org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
                        org.jboss.seam.core.Expressions$1.getValue(Expressions.java:112)
                        org.jboss.seam.security.Identity.evaluateExpression(Identity.java:617)
                        org.jboss.seam.security.Identity.checkRestriction(Identity.java:186)
                        org.jboss.seam.navigation.Page.checkPermission(Page.java:229)
                        org.jboss.seam.navigation.Page.preRender(Page.java:249)
                        org.jboss.seam.navigation.Pages.preRender(Pages.java:347)
                        org.jboss.seam.jsf.SeamPhaseListener.preRenderPage(SeamPhaseListener.java:562)
                        org.jboss.seam.jsf.SeamPhaseListener.beforeRenderResponse(SeamPhaseListener.java:473)
                        org.jboss.seam.jsf.SeamPhaseListener.beforeServletPhase(SeamPhaseListener.java:146)
                        org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:116)
                        com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:214)
                        com.sun.faces.lifecycle.Phase.doPhase(Phase.java:96)
                        com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
                        javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
                        org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                        org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                        org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:38)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
                        org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
                        org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
                        org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
                        org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
                        org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:73)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                        org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                        org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                        org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
                        org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
                        org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                        org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                        org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                        org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
                        org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857)
                        org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)
                        org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
                        java.lang.Thread.run(Unknown Source)Caused by java.lang.NullPointerException with message: "" 
                        org.jboss.seam.security.Identity.hasRole(Identity.java:415)
                        org.jboss.seam.security.SecurityFunctions.hasRole(SecurityFunctions.java:12)
                        sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                        sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                        sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                        java.lang.reflect.Method.invoke(Unknown Source)
                        org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:329)
                        org.jboss.el.parser.AstFunction.getValue(AstFunction.java:84)
                        org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
                        org.jboss.seam.core.Expressions$1.getValue(Expressions.java:112)
                        org.jboss.seam.security.Identity.evaluateExpression(Identity.java:617)
                        org.jboss.seam.security.Identity.checkRestriction(Identity.java:186)
                        org.jboss.seam.navigation.Page.checkPermission(Page.java:229)
                        org.jboss.seam.navigation.Page.preRender(Page.java:249)
                        org.jboss.seam.navigation.Pages.preRender(Pages.java:347)
                        org.jboss.seam.jsf.SeamPhaseListener.preRenderPage(SeamPhaseListener.java:562)
                        org.jboss.seam.jsf.SeamPhaseListener.beforeRenderResponse(SeamPhaseListener.java:473)
                        org.jboss.seam.jsf.SeamPhaseListener.beforeServletPhase(SeamPhaseListener.java:146)
                        org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:116)
                        com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:214)
                        com.sun.faces.lifecycle.Phase.doPhase(Phase.java:96)
                        com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
                        javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
                        org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                        org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                        org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:38)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
                        org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
                        org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
                        org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
                        org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
                        org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:73)
                        org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                        org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                        org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                        org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                        org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
                        org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
                        org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                        org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                        org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                        org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
                        org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857)
                        org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)
                        org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
                        java.lang.Thread.run(Unknown Source)
                        


                        • 9. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                          Shane Bryzak Master

                          I've made some changes in SVN to create the systemOp field lazily now, in addition to performing null checks wherever it is referenced.  Hopefully that should fix your issue.

                          • 11. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                            he youlin Novice

                            By the way.Could you fix JBSEAM-3359 in StatusMessages.java and warRootDirectory components loading error in Initialization.java?


                            see
                            http://seamframework.org/Community/InSeam210BETA1FacesMessagesinstanceaddstrConnotWorking

                            • 12. Re: seam 2.1 Build 296 Identity.systemOp can't be Serialized
                              Pete Muir Master

                              Both bugs should be fixed in trunk and currently nightly builds. Please test for me.