[jboss-jira] [JBoss JIRA] Commented: (JBSEAM-279) Component lifetimes not guaranteed for SFSB backed components.
German de la Cruz (JIRA)
jira-events at jboss.com
Mon Aug 21 12:39:44 EDT 2006
[ http://jira.jboss.com/jira/browse/JBSEAM-279?page=comments#action_12341522 ]
German de la Cruz commented on JBSEAM-279:
------------------------------------------
Same with lastest nightly build (20060821)
13:20:00,566 DEBUG [Contexts] destroying: org.apache.myfaces.renderkit.html.util.DummyFormUtils.DUMMY_FORM_INFO
13:20:00,567 DEBUG [Contexts] destroying: specieFinder
13:20:00,567 DEBUG [StatefulSessionFilePersistenceManager] Attempting to activate; id=3j001-60w7lw-er51brl5-1-er521wug-2z
13:20:00,567 DEBUG [StatefulSessionFilePersistenceManager] Reading session state from: /tmp/jboss4/default/tmp/sessions/SpecieFinderBean-er51ohbw-24/3j001-60w7lw-er51brl5-1-er521wug-2z.ser
13:20:00,568 ERROR [STDERR] javax.ejb.EJBNoSuchObjectException: Could not find Stateful bean: 3j001-60w7lw-er51brl5-1-er521wug-2z
13:20:00,569 ERROR [STDERR] at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:266)
13:20:00,569 ERROR [STDERR] at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:59)
13:20:00,569 ERROR [STDERR] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
13:20:00,569 ERROR [STDERR] at org.jboss.ejb3.stateful.StatefulRemoveInterceptor.invoke(StatefulRemoveInterceptor.java:81)
13:20:00,569 ERROR [STDERR] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
13:20:00,569 ERROR [STDERR] at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
13:20:00,570 ERROR [STDERR] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
13:20:00,570 ERROR [STDERR] at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
13:20:00,570 ERROR [STDERR] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
13:20:00,570 ERROR [STDERR] at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
13:20:00,570 ERROR [STDERR] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
13:20:00,570 ERROR [STDERR] at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:188)
13:20:00,570 ERROR [STDERR] at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
13:20:00,570 ERROR [STDERR] at $Proxy429.destroy(Unknown Source)
13:20:00,571 ERROR [STDERR] at manchot.actions.SpecieFinder$$FastClassByCGLIB$$7265d8d8.invoke(<generated>)
13:20:00,571 ERROR [STDERR] at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
13:20:00,571 ERROR [STDERR] at org.jboss.seam.interceptors.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:73)
13:20:00,571 ERROR [STDERR] at org.jboss.seam.ejb.SeamInterceptor.invokeInContexts(SeamInterceptor.java:177)
13:20:00,571 ERROR [STDERR] at org.jboss.seam.ejb.SeamInterceptor.invoke(SeamInterceptor.java:143)
13:20:00,571 ERROR [STDERR] at org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:130)
13:20:00,571 ERROR [STDERR] at org.jboss.seam.interceptors.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:44)
13:20:00,572 ERROR [STDERR] at org.jboss.seam.interceptors.ClientSideInterceptor.intercept(ClientSideInterceptor.java:38)
13:20:00,572 ERROR [STDERR] at manchot.actions.SpecieFinder$$EnhancerByCGLIB$$bce1eb41.destroy(<generated>)
13:20:00,572 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
13:20:00,572 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
13:20:00,572 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
13:20:00,572 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
13:20:00,572 ERROR [STDERR] at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
13:20:00,572 ERROR [STDERR] at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:82)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.Component.callComponentMethod(Component.java:1476)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.Component.callDestroyMethod(Component.java:1464)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:189)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.contexts.Lifecycle.flushAndDestroyContexts(Lifecycle.java:638)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:492)
13:20:00,573 ERROR [STDERR] at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:112)
13:20:00,573 ERROR [STDERR] at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89)
13:20:00,573 ERROR [STDERR] at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:391)
13:20:00,574 ERROR [STDERR] at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
13:20:00,574 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
13:20:00,574 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
13:20:00,574 ERROR [STDERR] at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
13:20:00,574 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
13:20:00,574 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
13:20:00,574 ERROR [STDERR] at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:30)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
13:20:00,575 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
13:20:00,575 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
13:20:00,575 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
13:20:00,576 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
13:20:00,576 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
13:20:00,576 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
13:20:00,576 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
13:20:00,576 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
13:20:00,576 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
13:20:00,576 ERROR [STDERR] at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
13:20:00,576 ERROR [STDERR] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
13:20:00,577 ERROR [STDERR] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
13:20:00,577 ERROR [STDERR] at java.lang.Thread.run(Thread.java:595)
13:20:00,577 WARN [Contexts] Could not destroy component: specieFinder
javax.ejb.EJBNoSuchObjectException: Could not find Stateful bean: 3j001-60w7lw-er51brl5-1-er521wug-2z
at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:266)
at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:59)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.stateful.StatefulRemoveInterceptor.invoke(StatefulRemoveInterceptor.java:81)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:188)
at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
at $Proxy429.destroy(Unknown Source)
at manchot.actions.SpecieFinder$$FastClassByCGLIB$$7265d8d8.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
at org.jboss.seam.interceptors.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:73)
at org.jboss.seam.ejb.SeamInterceptor.invokeInContexts(SeamInterceptor.java:177)
at org.jboss.seam.ejb.SeamInterceptor.invoke(SeamInterceptor.java:143)
at org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:130)
at org.jboss.seam.interceptors.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:44)
at org.jboss.seam.interceptors.ClientSideInterceptor.intercept(ClientSideInterceptor.java:38)
at manchot.actions.SpecieFinder$$EnhancerByCGLIB$$bce1eb41.destroy(<generated>)
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:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:82)
at org.jboss.seam.Component.callComponentMethod(Component.java:1476)
at org.jboss.seam.Component.callDestroyMethod(Component.java:1464)
at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:189)
at org.jboss.seam.contexts.Lifecycle.flushAndDestroyContexts(Lifecycle.java:638)
at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:492)
at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:112)
at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:391)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:30)
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.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.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:595)
13:20:00,581 DEBUG [Contexts] destroying: org.apache.myfaces.application.jsp.JspStateManagerImpl.SERIALIZED_VIEW
13:20:00,581 DEBUG [Contexts] destroying: org.apache.myfaces.AddResourceFactory.CACHE_MAP_KEY
13:20:00,581 DEBUG [Contexts] destroying: javax.faces.component.UIForm.org.apache.myfaces.HIDDEN_COMMAND_INPUTS_SET_searchForm
13:20:00,581 DEBUG [Contexts] destroying: org.apache.myfaces.component.html.util.ExtensionFilter.doFilterCalled
13:20:00,581 DEBUG [Contexts] destroying: facelets.Encoding
13:20:00,581 DEBUG [Contexts] destroying: org.apache.myfaces.SCROLL_HIDDEN_INPUT_dataTableForm
13:20:00,581 DEBUG [Contexts] destroying: com.sun.facelets.legacy.ELCONTEXT
13:20:00,581 DEBUG [Lifecycle] destroying conversation context
13:20:00,582 DEBUG [Contexts] destroying: facesMessages
13:20:00,582 DEBUG [Contexts] destroying: breedEditor
13:20:00,582 DEBUG [ExtendedPersistenceContextPropagationInterceptor] ++++ LongLivedSessionPropagationInterceptor
13:20:00,582 DEBUG [Contexts] destroying: conversation
13:20:00,583 DEBUG [Lifecycle] flushing server-side conversation context
13:20:00,583 DEBUG [Lifecycle] <<< End web request
13:20:00,583 DEBUG [AbstractSeamPhaseListener] No active conversation context
13:21:01,125 DEBUG [Lifecycle] >>> Begin call
13:21:01,126 DEBUG [Lifecycle] destroying event context
13:21:01,126 DEBUG [Component] instantiating Seam component: org.jboss.seam.core.manager
13:21:01,126 DEBUG [Component] initializing new instance of: org.jboss.seam.core.manager
13:21:01,126 DEBUG [Lifecycle] destroying conversation context
13:21:01,126 DEBUG [Lifecycle] flushing server-side conversation context
13:21:01,126 DEBUG [Lifecycle] <<< End call
13:23:02,075 DEBUG [IdleRemover] run: IdleRemover notifying pools, interval: 450000
> Component lifetimes not guaranteed for SFSB backed components.
> --------------------------------------------------------------
>
> Key: JBSEAM-279
> URL: http://jira.jboss.com/jira/browse/JBSEAM-279
> Project: JBoss Seam
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.0.1
> Reporter: ryan dewell
>
> Seam does not guarantee component lifecycles for SFSB backed components.
> The container controls when SFSB's are removed / timed out. When Seam accesses an SFSB that has been removed by the container, it results in an EJBNoSuchObjectException.
> The JBoss specific workaround for Session scoped components is to use the @CacheConfig annotation, setting the idle timeout to match the HttpSession timeout. Similar changes would have to be made to any Conversation scoped component that uses a timeout greater than the default SFSB timeout of 5 minutes (which just happens to be the default timeout for Seam conversations).
> There is no workaround for Application scoped components. Once removed by the container, EJBNoSuchObjectException's will continue to be thrown as Seam tries to access them.
> Seam's context model needs to somehow guarantee that its SFSB instances aren't removed by the container before Seam is finished with them. And/or, it needs to recover from EJBNoSuchObjectException's more gracefully, especially with regards to Application scoped components for which there is no workaround.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list