[
https://jira.jboss.org/jira/browse/JBAS-7759?page=com.atlassian.jira.plug...
]
Jason T. Greene updated JBAS-7759:
----------------------------------
Fix Version/s: Unscheduled
(was: 6.0.0.M3)
Unscheduling due to inactivity. Reassign to a release that you feel comfortable resolving
this issue in, or leave as is.
Weld applications throw javax.ejb.NoSuchEJBException after certain
time of inactivity in a session
--------------------------------------------------------------------------------------------------
Key: JBAS-7759
URL:
https://jira.jboss.org/jira/browse/JBAS-7759
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: EJB3, Web (Tomcat) service, Weld/CDI
Reporter: Martin Gencur
Assignee: Marius Bogoevici
Fix For: Unscheduled
When using stateful session beans with CDI, the following exception is thrown after
approximately 11 minutes of inactivity in a session. I'm not using any specific
settings - just defaults. My SFSB class in the stacktrace is
org.jboss.weld.examples.pastecode.session.History
13:40:23,427 INFO
[org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/weld-pastecode]]
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter INFO: loaded (conf ok)
13:51:08,812 ERROR
[org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/weld-pastecode]] Session
event listener threw exception: javax.ejb.NoSuchEJBException: Could not find Stateful
bean: 3j011-vkamuu-g5s27uvi-1-g5s42hod-ac
at org.jboss.ejb3.cache.simple.SimpleStatefulCache.remove(SimpleStatefulCache.java:544)
at
org.jboss.ejb3.stateful.StatefulContainer.destroySession(StatefulContainer.java:1452)
at
org.jboss.ejb3.endpoint.deployers.impl.EndpointImpl.destroySession(EndpointImpl.java:61)
at
org.jboss.weld.integration.ejb.JBossSessionObjectReference.remove(JBossSessionObjectReference.java:62)
at
org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:108)
at org.jboss.weld.util.CleanableMethodHandler.invoke(CleanableMethodHandler.java:43)
at
org.jboss.weld.examples.pastecode.session.History_$$_javassist_54.destroy(History_$$_javassist_54.java)
at org.jboss.weld.bean.SessionBean.destroy(SessionBean.java:329)
at org.jboss.weld.context.ForwardingContextual.destroy(ForwardingContextual.java:34)
at org.jboss.weld.context.AbstractMapContext.destroy(AbstractMapContext.java:146)
at org.jboss.weld.context.AbstractMapContext.destroy(AbstractMapContext.java:163)
at
org.jboss.weld.context.AbstractThreadLocalMapContext.destroy(AbstractThreadLocalMapContext.java:68)
at org.jboss.weld.context.ContextLifecycle.endSession(ContextLifecycle.java:80)
at org.jboss.weld.servlet.ServletLifecycle.endSession(ServletLifecycle.java:96)
at org.jboss.weld.servlet.WeldListener.sessionDestroyed(WeldListener.java:141)
at org.apache.catalina.session.StandardSession.expire(StandardSession.java:686)
at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:581)
at org.apache.catalina.session.ManagerBase.processExpires(ManagerBase.java:690)
at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:675)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1383)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1675)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1684)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1684)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1664)
at java.lang.Thread.run(Thread.java:619)
Steps to reproduce (use a new weld jsf application "Pastecode"):
1) setup your desired session-timeout in war/src/main/webapp/WEB-INF/web.xml file (10
minutes is OK to see the exception)
1) package the app (simply "mvn clean package")
2) deploy the resulting EAR to JBoss AS 6.0.x
3) go to
http://localhost:8080/weld-pastecode
4) click the "History" link
5) and wait for 10+ minutes :)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira