Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.7DR#1
-
Component/s: None
-
Labels:None
-
Environment:Jboss 4.2.1 GA, Tomcat 6.0.14
-
ICEsoft Forum Reference:
Description
Run the auctionMonitor sample in JBoss 4.2.1 GA server (or Tomcat 6.0.14) and open 2 or more browsers viewing the application. Communicate with each other via bidding or chat. While switching windows from one to another, the inactive windows frequently pops up internal error message and request a reload. After reloading, the application can still work but the problem repeatedly happens along the communication.
The following is the exception captured from jboss log:
7:22:52,103 ERROR [[/auctionMonitor]] Exception sending request destroyed lifec
ycle event to listener instance of class com.sun.faces.application.WebappLifecyc
leListener
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:841)
at java.util.HashMap$KeyIterator.next(HashMap.java:877)
at org.apache.catalina.util.Enumerator.<init>(Enumerator.java:101)
at org.apache.catalina.util.Enumerator.<init>(Enumerator.java:67)
at org.apache.catalina.connector.Request.getAttributeNames(Request.java:
929)
at org.apache.catalina.connector.RequestFacade.getAttributeNames(Request
Facade.java:278)
at com.sun.faces.application.WebappLifecycleListener.requestDestroyed(We
bappLifecycleListener.java:76)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:188)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
yAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
e.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
onnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Thread.java:595)
17:22:52,150 INFO [ClockBean] Disposing ClockBean for a user - cleaning up
The following is the exception captured from jboss log:
7:22:52,103 ERROR [[/auctionMonitor]] Exception sending request destroyed lifec
ycle event to listener instance of class com.sun.faces.application.WebappLifecyc
leListener
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:841)
at java.util.HashMap$KeyIterator.next(HashMap.java:877)
at org.apache.catalina.util.Enumerator.<init>(Enumerator.java:101)
at org.apache.catalina.util.Enumerator.<init>(Enumerator.java:67)
at org.apache.catalina.connector.Request.getAttributeNames(Request.java:
929)
at org.apache.catalina.connector.RequestFacade.getAttributeNames(Request
Facade.java:278)
at com.sun.faces.application.WebappLifecycleListener.requestDestroyed(We
bappLifecycleListener.java:76)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:188)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
yAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
e.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
onnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Thread.java:595)
17:22:52,150 INFO [ClockBean] Disposing ClockBean for a user - cleaning up
This appears to be a Tomcat bug as there is no ICEfaces code involved in the call chain.