-
1. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 1:50 PM (in response to jjarkko)After adding
<listener> <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> </listener>
to web.xml the application works just fine (as far i tested it, couple clicks). But an exception is logged after each click:20:44:48,109 ERROR [PhaseListenerManager] Exception in PhaseListener RENDER_RESPONSE(6) afterPhase java.lang.IllegalStateException: No active event context at org.jboss.seam.core.Manager.instance(Manager.java:233) at org.jboss.seam.contexts.Lifecycle.flushAndDestroyContexts(Lifecycle.java:367) at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:259) at org.jboss.seam.jsf.SeamPortletPhaseListener.afterPhase(SeamPortletPhaseListener.java:87) at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89) at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:391) at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:322) at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:297) at org.apache.myfaces.portlet.MyFacesGenericPortlet.facesRender(MyFacesGenericPortlet.java:379) at org.apache.myfaces.portlet.MyFacesGenericPortlet.doView(MyFacesGenericPortlet.java:265) at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235) at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
Previously having the listener in web.xml caused "everything" to fail, but with the same " No active event context" message. -
2. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
gavin.king Oct 23, 2006 2:19 PM (in response to jjarkko)This exception happens because you did not set myFacesLifecycleBug=false when upgrading MyFaces.
-
3. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 2:44 PM (in response to jjarkko)Ah,
But i've it set to false<component name="org.jboss.seam.core.init"> <property name="debug">true</property> <property name="myFacesLifecycleBug">false</property> <property name="jndiPattern">tc3/#{ejbName}/local</property> <!-- For server-less testing only <property name="jndiPattern">#{ejbName}/local</property> --> </component>
-
4. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 3:05 PM (in response to jjarkko)After there're more than one Seam portlets open, the excetion count increases.
22:02:43,884 ERROR [PhaseListenerManager] Exception in PhaseListener RESTORE_VIEW(1) afterPhase java.lang.IllegalStateException: No phase id bound to current thread (make sure you do not have two SeamPhaseListener instances installed) at org.jboss.seam.contexts.PageContext.getPhaseId(PageContext.java:139) at org.jboss.seam.contexts.PageContext.isRenderResponsePhase(PageContext.java:151) at org.jboss.seam.contexts.PageContext.getCurrentReadableMap(PageContext.java:74) at org.jboss.seam.contexts.PageContext.get(PageContext.java:64) at org.jboss.seam.core.Manager.restoreConversation(Manager.java:466) at org.jboss.seam.jsf.AbstractSeamPhaseListener.restoreAnyConversationContext(AbstractSeamPhaseListener.java:43) at org.jboss.seam.jsf.SeamPortletPhaseListener.afterPhase(SeamPortletPhaseListener.java:73) at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89) at org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:181) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:66) at org.apache.myfaces.portlet.MyFacesGenericPortlet.processAction(MyFacesGenericPortlet.java:220) at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:83) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:295) at com.liferay.portlet.CachePortlet.processAction(CachePortlet.java:144) at com.liferay.portal.action.LayoutAction._processPortletRequest(LayoutAction.java:232) at com.liferay.portal.action.LayoutAction._processActionRequest(LayoutAction.java:250) at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:86) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:189) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:437) at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:825) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.doFilter(LayoutCacheFilter.java:205) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:619) 22:02:43,908 ERROR [PhaseListenerManager] Exception in PhaseListener INVOKE_APPLICATION(5) afterPhase java.lang.IllegalStateException: No active event context at org.jboss.seam.core.Manager.instance(Manager.java:233) at org.jboss.seam.jsf.SeamPortletPhaseListener.afterPhase(SeamPortletPhaseListener.java:91) at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89) at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:345) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86) at org.apache.myfaces.portlet.MyFacesGenericPortlet.processAction(MyFacesGenericPortlet.java:220) at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:83) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:295) at com.liferay.portlet.CachePortlet.processAction(CachePortlet.java:144) at com.liferay.portal.action.LayoutAction._processPortletRequest(LayoutAction.java:232) at com.liferay.portal.action.LayoutAction._processActionRequest(LayoutAction.java:250) at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:86) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:189) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:437) at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:825) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.doFilter(LayoutCacheFilter.java:205) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:619) 22:02:44,098 ERROR [PortletLocalServiceImpl] Portlet not found for trueconcept.fi tc3Portlet_kohteen_tehtavat_ja_toimenpiteet_WAR_TrueConcept 22:02:44,197 ERROR [PhaseListenerManager] Exception in PhaseListener RENDER_RESPONSE(6) afterPhase java.lang.IllegalStateException: No active event context at org.jboss.seam.core.Manager.instance(Manager.java:233) at org.jboss.seam.contexts.Lifecycle.flushAndDestroyContexts(Lifecycle.java:367) at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:259) at org.jboss.seam.jsf.SeamPortletPhaseListener.afterPhase(SeamPortletPhaseListener.java:87) at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89) at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:391) at fi.jab.jsf.MyFacesGenericPortlet.facesRender(MyFacesGenericPortlet.java:86) at org.apache.myfaces.portlet.MyFacesGenericPortlet.doView(MyFacesGenericPortlet.java:265) at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235) at javax.portlet.GenericPortlet.render(GenericPortlet.java:163) at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:89) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:295) at com.liferay.portlet.CachePortlet.render(CachePortlet.java:155) at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:708) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:948) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:123) at com.liferay.portlet.layoutconfiguration.util.velocity.PortletColumnLogic.processContent(PortletColumnLogic.java:76) at com.liferay.portlet.layoutconfiguration.util.velocity.TemplateProcessor.processColumn(TemplateProcessor.java:58) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:267) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:197) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.Velocity.evaluate(Velocity.java:316) at org.apache.velocity.app.Velocity.evaluate(Velocity.java:210) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:165) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:146) at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(portlet_jsp.java:414) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:63) at org.apache.jsp.html.portal.layout_jsp._jspService(layout_jsp.java:417) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:63) at org.apache.jsp.html.themes.classic.templates.portal_005fnormal_jsp._jspService(portal_005fnormal_jsp.java:1024) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.ThemeUtil.includeJSP(ThemeUtil.java:139) at com.liferay.taglib.util.ThemeUtil.include(ThemeUtil.java:93) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:58) at org.apache.jsp.html.common.themes.portal_jsp._jspx_meth_liferay$1theme_include_1(portal_jsp.java:555) at org.apache.jsp.html.common.themes.portal_jsp._jspx_meth_c_otherwise_0(portal_jsp.java:527) at org.apache.jsp.html.common.themes.portal_jsp._jspService(portal_jsp.java:433) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.liferay.portal.struts.StrutsUtil.forward(StrutsUtil.java:93) at com.liferay.portal.struts.PortalRequestProcessor.doForward(PortalRequestProcessor.java:214) at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239) at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:302) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241) at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:189) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:437) at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:825) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.doFilter(LayoutCacheFilter.java:205) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:619) 22:02:44,741 ERROR [PhaseListenerManager] Exception in PhaseListener RENDER_RESPONSE(6) afterPhase java.lang.IllegalStateException: No active event context at org.jboss.seam.core.Manager.instance(Manager.java:233) at org.jboss.seam.contexts.Lifecycle.flushAndDestroyContexts(Lifecycle.java:367) at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:259) at org.jboss.seam.jsf.SeamPortletPhaseListener.afterPhase(SeamPortletPhaseListener.java:87) at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89) at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:391) at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:322) at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:297) at org.apache.myfaces.portlet.MyFacesGenericPortlet.facesRender(MyFacesGenericPortlet.java:379) at org.apache.myfaces.portlet.MyFacesGenericPortlet.doView(MyFacesGenericPortlet.java:265) at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235) at javax.portlet.GenericPortlet.render(GenericPortlet.java:163) at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:89) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:295) at com.liferay.portlet.CachePortlet.render(CachePortlet.java:155) at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:708) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:948) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:123) at com.liferay.portlet.layoutconfiguration.util.velocity.PortletColumnLogic.processContent(PortletColumnLogic.java:76) at com.liferay.portlet.layoutconfiguration.util.velocity.TemplateProcessor.processColumn(TemplateProcessor.java:58) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:267) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:197) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.Velocity.evaluate(Velocity.java:316) at org.apache.velocity.app.Velocity.evaluate(Velocity.java:210) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:165) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:146) at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(portlet_jsp.java:414) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:63) at org.apache.jsp.html.portal.layout_jsp._jspService(layout_jsp.java:417) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:63) at org.apache.jsp.html.themes.classic.templates.portal_005fnormal_jsp._jspService(portal_005fnormal_jsp.java:1024) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499) at com.liferay.taglib.util.ThemeUtil.includeJSP(ThemeUtil.java:139) at com.liferay.taglib.util.ThemeUtil.include(ThemeUtil.java:93) at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:58) at org.apache.jsp.html.common.themes.portal_jsp._jspx_meth_liferay$1theme_include_1(portal_jsp.java:555) at org.apache.jsp.html.common.themes.portal_jsp._jspx_meth_c_otherwise_0(portal_jsp.java:527) at org.apache.jsp.html.common.themes.portal_jsp._jspService(portal_jsp.java:433) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.liferay.portal.struts.StrutsUtil.forward(StrutsUtil.java:93) at com.liferay.portal.struts.PortalRequestProcessor.doForward(PortalRequestProcessor.java:214) at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239) at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:302) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241) at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:189) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:437) at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:825) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.doFilter(LayoutCacheFilter.java:205) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:619)
-
5. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
gavin.king Oct 23, 2006 4:11 PM (in response to jjarkko)So I tested the portal example in 4.0.5 portal profile. It's working fine.
-
6. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 4:15 PM (in response to jjarkko)Huh,
I managed to make the system "work" by doing very uglyt hacking in SeamStateManager.javapublic void writeState(FacesContext ctx, SerializedView sv) throws IOException { { ExternalContext extCtx = ctx.getExternalContext(); Object serialFactoryObj = extCtx.getApplicationMap().get( StateUtils.SERIAL_FACTORY); if (serialFactoryObj == null) { SerialFactory serialFactory; serialFactory = new DefaultSerialFactory(); extCtx.getApplicationMap().put(StateUtils.SERIAL_FACTORY, serialFactory); } } stateManager.writeState(ctx, sv); }
That is, NO org.apache.myfaces.webapp.StartupServletContextListener configured in web.xml.
Maybe this is MyFaces bug, because in org.apache.myfaces.portlet.MyFacesGenericPortlet has a lot of methods for all kind of initaliazation (like init() and initMyFaces()). Especially interesting is the initMyFaces() which looks like replacement of StartupServletContextListener.initFaces(), but for portal/portlets. Somehow however, i couldn't get the SERIAL_FACTORY hack work from initMyFaces() due to FacesContext being null.
I hope i'm not missing anything else (critical) from StartupServletContextListener initalization if the MyFacesGenericPortlet is not working correclty. -
7. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
andyd Oct 23, 2006 5:13 PM (in response to jjarkko)Just manager to get things working by adding the following to web.xml
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
<context-param>
<param-name>org.apache.myfaces.SERIAL_FACTORY</param-name>
<param-value>org.apache.myfaces.JbossSerialFactory</param-value>
</context-param>
Andy. -
8. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
andyd Oct 23, 2006 5:15 PM (in response to jjarkko)Should of course be the usual listener tags around the listener-class tag - got stripped by the forum.
Andy -
9. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
andyd Oct 23, 2006 5:19 PM (in response to jjarkko)Found out about this at
http://wiki.apache.org/myfaces/Performance
I'm a little unsure as I haven't buuild the reference classes. Either this has already been added somewhere, or something strange is happening that I don't quite understand yet. -
10. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 6:01 PM (in response to jjarkko)I managed to get things going by adding the following methods to my own MyFacesGenericPortlet.java. I'm more convinced that the portlet portition of myfaces is a little bit off sync compared to "normal" MyFaces usage.
I thought i sawpackage fi.jab.jsf; import java.io.IOException; import javax.faces.context.ExternalContext; import javax.faces.context.FacesContext; import javax.portlet.PortletException; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.myfaces.config.FacesConfigurator; import org.apache.myfaces.context.FacesContextWrapper; import org.apache.myfaces.context.ReleaseableExternalContext; import org.apache.myfaces.context.portlet.PortletExternalContextImpl; import org.apache.myfaces.context.servlet.ServletFacesContextImpl; import org.apache.myfaces.shared_impl.util.ClassUtils; import org.apache.myfaces.shared_impl.util.StateUtils; import org.apache.myfaces.shared_impl.util.serial.DefaultSerialFactory; import org.apache.myfaces.shared_impl.util.serial.SerialFactory; import org.apache.myfaces.shared_impl.webapp.webxml.WebXml; /** * java.lang.IllegalStateException: Can not call encodeNamespace() during a portlet ActionRequest * http://issues.apache.org/jira/browse/MYFACES-1359?page=all * This seems to be fixed in 1.1.4. * * http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/portlet/MyFacesGenericPortlet.java?revision=417505&view=markup * * @author jarkko * */ public class MyFacesGenericPortlet extends org.apache.myfaces.portlet.MyFacesGenericPortlet { private static final Log log = LogFactory .getLog(MyFacesGenericPortlet.class); @Override protected void nonFacesRequest(RenderRequest request, RenderResponse response) throws PortletException { super.nonFacesRequest(request, response); } @Override protected void nonFacesRequest(RenderRequest request, RenderResponse response, String view) throws PortletException { super.nonFacesRequest(request, response, view); } @Override // http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/portlet/MyFacesGenericPortlet.java?revision=417505&view=markup protected void facesRender(RenderRequest request, RenderResponse response) throws PortletException, IOException { if (log.isTraceEnabled()) log.trace("called facesRender"); setContentType(request, response); String viewId = request.getParameter(VIEW_ID); if ((viewId == null) || sessionTimedOut(request)) { setPortletRequestFlag(request); nonFacesRequest(request, response); return; } setPortletRequestFlag(request); try { ServletFacesContextImpl facesContext = (ServletFacesContextImpl) request .getPortletSession().getAttribute(CURRENT_FACES_CONTEXT); // depending on the Portal implementation, facesContext could be // null after a redeploy if (facesContext == null) { setPortletRequestFlag(request); nonFacesRequest(request, response); return; } // TODO: not sure if this can happen. Also double check this against // spec section 2.1.3 if (facesContext.getResponseComplete()) return; ReleaseableExternalContext ctx = makeExternalContext(request, response); facesContext.setExternalContext(ctx); lifecycle.render(facesContext); } catch (Throwable e) { handleExceptionFromLifecycle(e); } } @Override protected void initMyFaces() { try { Boolean b = (Boolean) portletContext.getAttribute(FACES_INIT_DONE); if (b == null || b.booleanValue() == false) { log.trace("Initializing MyFaces"); // Load the configuration ExternalContext externalContext = new PortletExternalContextImpl( portletContext, null, null); // And configure everything new FacesConfigurator(externalContext).configure(); // parse web.xml - not sure if this is needed for portlet WebXml.init(externalContext); // What is this supposed to do?? // if (portletContext.getInitParameter(StateUtils.INIT_SECRET) != null) { // // Yes, but how? // // StateUtils.initSecret( externalContext ); // } handleSerialFactory(externalContext); portletContext.setAttribute(FACES_INIT_DONE, Boolean.TRUE); } else { // FIXME do we want to show this? log.info("MyFaces already initialized"); } } catch (Exception ex) { log.error("Error initializing MyFacesGenericPortlet", ex); } log.info("Portlet " + getPortletName() + " initialized"); } public static void handleSerialFactory(ExternalContext externalContext) { String serialProvider = externalContext .getInitParameter(StateUtils.SERIAL_FACTORY); SerialFactory serialFactory = null; if (serialProvider == null) { serialFactory = new DefaultSerialFactory(); } else { try { serialFactory = (SerialFactory) ClassUtils .newInstance(serialProvider); } catch (ClassCastException e) { log.error("Make sure '" + serialProvider + "' implements the correct interface", e); } catch (Exception e) { log.error(e); } finally { if (serialFactory == null) { serialFactory = new DefaultSerialFactory(); log.error("Using default serialization provider"); } } } log.info("Serialization provider : " + serialFactory.getClass()); externalContext.getApplicationMap().put(StateUtils.SERIAL_FACTORY, serialFactory); } }
-
11. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
andyd Oct 23, 2006 6:15 PM (in response to jjarkko)Ok, the SERIAL thing in my previous post was a red herring. I got an error in the log file and it made no difference when I removed it from web.xml, as I hadn't compiled and installed the included java.
What did fix it for me was adding StartupServletContextListener as a listener in web.xml. As far as I can see the modified booking app we derived from the "portlets + jsf + faclets" thread now works in 4.0.5GA.
Here is my complete web.xml file.
Incidentally, this was using the install from the web with the Portal option.
Andy.
------------------------------------ web.xml ------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- Seam -->
<listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
<!-- Propagate conversations across redirects -->
<filter-name>Seam Redirect Filter</filter-name>
<filter-class>org.jboss.seam.servlet.SeamRedirectFilter</filter-class>
<filter-mapping>
<filter-name>Seam Redirect Filter</filter-name>
<url-pattern>*.seam</url-pattern>
</filter-mapping>
<!-- Extensions Filter -->
<filter-name>extensionsFilter</filter-name>
<filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</filter-class>
<init-param>
Set the size limit for uploaded files.
Format: 10 - 10 bytes
10k - 10 KB
10m - 10 MB
1g - 1 GB
<param-name>uploadMaxFileSize</param-name>
<param-value>100m</param-value>
</init-param>
<init-param>
Set the threshold size - files
below this limit are stored in memory, files above
this limit are stored on disk.
Format: 10 - 10 bytes
10k - 10 KB
10m - 10 MB
1g - 1 GB
<param-name>uploadThresholdSize</param-name>
<param-value>100k</param-value>
</init-param>
<!-- extension mapping for adding , , and other resource tags to JSF-pages -->
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>*.jsf</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<!-- JSF -->
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
<context-param>
<param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.PRETTY_HTML</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
<context-param>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>true</param-value>
</context-param>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.seam</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<!-- Seam Remoting -->
<servlet-name>Seam Remoting</servlet-name>
<servlet-class>org.jboss.seam.remoting.SeamRemotingServlet</servlet-class>
<servlet-mapping>
<servlet-name>Seam Remoting</servlet-name>
<url-pattern>/seam/remoting/*</url-pattern>
</servlet-mapping>
</web-app> -
12. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 6:19 PM (in response to jjarkko)At least with the MyFacesGenericPortlet above one can use the JBossSerialization factory.
01:14:41,310 INFO [MyFacesGenericPortlet] Serialization provider : class org.apache.myfaces.JbossSerialFactory
No idea, wheter it made any performance increase.. But maybe it's better than the DefaultSerialFactory.
Just added<context-param> <param-name>org.apache.myfaces.SERIAL_FACTORY</param-name> <param-value>org.apache.myfaces.JbossSerialFactory</param-value> </context-param>
without the<listener> <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> </listener>
-
13. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
jjarkko Oct 23, 2006 6:38 PM (in response to jjarkko)If i add the <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
in web.xml i get one01:24:39,354 ERROR [PhaseListenerManager] Exception in PhaseListener INVOKE_APPLICATION(5) afterPhase java.lang.IllegalStateException: No active event context at org.jboss.seam.core.Manager.instance(Manager.java:233)
for each Seam portlet on the page (and on one page i've 10 ;). Plus one additional01:24:39,329 ERROR [PhaseListenerManager] Exception in PhaseListener RESTORE_VIEW(1) afterPhase java.lang.IllegalStateException: No phase id bound to current thread (make sure you do not have two SeamPhaseListener instances installed) at org.jboss.seam.contexts.PageContext.getPhaseId(PageContext.java:139)
But hey, I'm using Seam for very nice and neat Intra Portlet Communication ;)
This requires modified SeamPortletFaceletViewHandler, PortletSessionImpl and WebSessionContext. It seems that PortletSessionImpl should use PortletSession.APPLICATION_SCOPE as the default, this enables "normal" operation of seam just like in usual Seam apps + IPC.
The next step is little more difficult, i'm thinking to teach Seam to use PortletSession.PORTLET_SCOPE for some Seam scopes. But this seems quite difficult.Seam Scope = Portlet Scope STATELESS = PORTLET_SCOPE EVENT = PORTLET_SCOPE PAGE = PORTLET_SCOPE, or? CONVERSATION = Depends, if we want to conversations propagate between different portlets. This is tricky. If mapped to APPLICATION_SCOPE conversations work pretty weird if there're multiple portlets with active conversations. SESSION = APPLICATION_SCOPE BUSINESS_PROCESS=Depends
-
14. Re: JBoss 4.0.5.GA: java.lang.NullPointerException: serialF
ssilvert Oct 23, 2006 9:59 PM (in response to jjarkko)You were correct to remove the StartupServletContextListener. MyFacesGenericPortlet handles all of the init stuff for portlets. In a portlet environment, we shouldn't use servlet constructs like a ServletContextListener. If you set things up in a ServletContextListener then it may or may not work depending on the Portal implementation.
It sounds like that when the SerialFactory stuff was added to MyFaces it broke portlet support. However, that feature has been there for awhile and I suspect I would have heard something by now if portlets simply quit working. Maybe you have hit an edge case.
The botton line is that this is almost certainly a MyFaces bug. Please open a task in MyFaces Jira: http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10600
Stan Silvert