Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-8114

Automatically set EJB timeout greater than session timeout if CDI is enabled

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • No Release
    • 6.0.0.M3
    • Weld/CDI
    • None

      The EJB timeout (for SFSBs) should automatically be set to be longer than the session timeout, if CDI/Weld is enabled . Otherwise we can get exceptions such as the following, if a SFSB times out before the session ends:

      javax.ejb.NoSuchEJBException: Could not find stateful bean: 3j001-kry0ga-gaj04tmw-1-gal0kea7-ek
      org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:479)
      org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCache.java:430)
      org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:59)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
      org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.interceptor.EJB3TCCLInterceptor.invoke(EJB3TCCLInterceptor.java:86)
      org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
      org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:193)
      org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:109)
      org.jboss.ejb3.nointerface.impl.invocationhandler.NoInterfaceViewInvocationHandler.invoke(NoInterfaceViewInvocationHandler.java:148)
      org.jboss.ejb3.proxy.javassist.JavassistInvocationHandlerAdapter.invoke(JavassistInvocationHandlerAdapter.java:71)
      org.jboss.weld.examples.pastecode.session.History_$$javassist_737.search(History$$_javassist_737.java)
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:304)
      org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54)
      org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163)
      org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:298)
      org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:127)
      org.jboss.weld.util.CleanableMethodHandler.invoke(CleanableMethodHandler.java:43)
      org.jboss.weld.examples.pastecode.session.History_$$javassist_724.search(History$$_javassist_724.java)
      sun.reflect.GeneratedMethodAccessor2070.invoke(Unknown Source)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:304)
      org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54)
      org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163)
      org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:298)
      org.jboss.weld.bean.proxy.ClientProxyMethodHandler.invoke(ClientProxyMethodHandler.java:113)
      org.jboss.weld.util.CleanableMethodHandler.invoke(CleanableMethodHandler.java:43)
      org.jboss.weld.examples.pastecode.session.History_$$javassist_735.search(History$$_javassist_735.java)
      sun.reflect.GeneratedMethodAccessor2069.invoke(Unknown Source)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.apache.el.parser.AstValue.invoke(AstValue.java:196)
      org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
      org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:43)
      org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:72)
      org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:43)
      org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:72)
      com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:98)
      com.sun.faces.facelets.tag.jsf.core.DeclarativeSystemEventListener.processEvent(EventHandler.java:118)
      javax.faces.component.UIComponent$ComponentSystemEventListenerAdapter.processEvent(UIComponent.java:2345)
      javax.faces.event.SystemEvent.processListener(SystemEvent.java:102)
      com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:1993)
      com.sun.faces.application.ApplicationImpl.invokeComponentListenersFor(ApplicationImpl.java:1941)
      com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:285)
      com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:243)
      org.jboss.weld.integration.webtier.jsf.ForwardingApplication.publishEvent(ForwardingApplication.java:336)
      com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:114)
      com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
      com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
      org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:68)
      org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
      org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
      org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
      org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:417)

              marius.bogoevici Marius Bogoevici (Inactive)
              sbryzak@redhat.com Shane Bryzak (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: