ICEfaces-EE
  1. ICEfaces-EE
  2. IPCK-100

tabView - Non-serializable attribute exception

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.2.GA_P01
    • Fix Version/s: 1.8.2.GA_P02
    • Component/s: Facelet Components
    • Labels:
      None
    • Environment:
      Clustered environments
    • Affects:
      Compatibility/Configuration

      Description

      The tabView component throws the following exception when deployed in a clustered environment:

      SEVERE: Servlet.service() for servlet Persistent Faces Servlet threw exception
      java.lang.IllegalArgumentException: setAttribute: Non-serializable attribute
              at org.apache.catalina.session.StandardSession.setAttribute(StandardSession.java:1295)
              at org.apache.catalina.session.StandardSession.setAttribute(StandardSession.java:1256)
              at org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:130)
              at com.icesoft.faces.webapp.http.servlet.ProxyHttpSession.setAttribute(ProxyHttpSession.java:139)
              at com.icesoft.faces.webapp.http.servlet.ServletSessionAttributeMap.setAttribute(ServletSessionAttributeMap.java:52)
              at com.icesoft.faces.context.AbstractAttributeMap.put(AbstractAttributeMap.java:156)
              at com.sun.faces.mgbean.BeanManager$ScopeManager$SessionScopeHandler.handle(BeanManager.java:442)
              at com.sun.faces.mgbean.BeanManager$ScopeManager.pushToScope(BeanManager.java:417)
              at com.sun.faces.mgbean.BeanManager.createAndPush(BeanManager.java:369)
              at com.sun.faces.mgbean.BeanManager.create(BeanManager.java:222)
              at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:86)
              at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
              at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
              at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
              at org.apache.el.parser.AstValue.getValue(AstValue.java:107)
              at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
              at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
              at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
              at com.icesoft.faces.component.UIXhtmlComponent.getTagAttributes(UIXhtmlComponent.java:103)
              at com.icesoft.faces.renderkit.dom_html_basic.XMLRenderer.encodeBegin(XMLRenderer.java:52)
              at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:813)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:490)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:498)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:498)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:498)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:498)
              at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:498)
              at com.icesoft.faces.facelets.D2DFaceletViewHandler.renderResponse(D2DFaceletViewHandler.java:281)
              at com.icesoft.faces.application.D2DViewHandler.renderView(D2DViewHandler.java:158)
              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 com.icesoft.faces.webapp.http.core.JsfLifecycleExecutor.apply(JsfLifecycleExecutor.java:51)
              at com.icesoft.faces.context.View$2$1.respond(View.java:80)
              at com.icesoft.faces.webapp.http.servlet.ServletRequestResponse.respondWith(ServletRequestResponse.java:233)
              at com.icesoft.faces.context.View$2.serve(View.java:114)
              at com.icesoft.faces.context.View.servePage(View.java:186)
              at com.icesoft.faces.webapp.http.core.SingleViewServer.service(SingleViewServer.java:84)
              at com.icesoft.faces.webapp.http.common.ServerProxy.service(ServerProxy.java:43)
              at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet$4.service(MainSessionBoundServlet.java:181)
              at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:55)
              at com.icesoft.faces.webapp.http.servlet.BasicAdaptingServlet.service(BasicAdaptingServlet.java:48)
              at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:55)
              at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:92)
              at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:55)
              at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:183)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
              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:233)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
              at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
              at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
              at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
              at java.lang.Thread.run(Thread.java:619)

      To reproduce this in a non-clustered environment I added the <distributable/> tag to my applications web.xml and ran it on Tomcat with session persistence turned on (default).

        Activity

          People

          • Assignee:
            Arran Mccullough
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: