11 Replies Latest reply on Sep 29, 2012 7:26 AM by tejaspajai

    ConcurrentModificationException after migrating to richfaces 3.3.3.Final version

    tejaspajai

      Hi,

      Our application uses jsf 1.2, facelets 1.1.14 and jboss-portal-2.6.5.SP1. We recently migrated the richfaces libraries from 3.3.0.GA to 3.3.3.Final.

      After this migration we started getting ConcurrentModificationExceptions randomly. These exceptions cannot be reproduced at will and could occur on even the simplest of user actions like checking a checkbox.

      Another observation is that these issues are more frequent when the server is under load.

       

      When going through the online discussions, I found the following thread particularly interesting:

      https://issues.jboss.org/browse/RF-8558

       

      The issue discussed in the above bug is similar to what we are facing but has been closed because it was not reproducible.

       

      Any suggestions/ideas?

       

      ERROR: 2011-06-24 07:10:48,196[http-0.0.0.0-1080-6::facelets.viewhandler]: [user:rsahdev] [context:/] Error Rendering View[/pages/explorePortlet/view.jspx]

      java.util.ConcurrentModificationException

          at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)

          at java.util.HashMap$EntryIterator.next(HashMap.java:834)

          at java.util.HashMap$EntryIterator.next(HashMap.java:832)

          at java.util.HashMap.putAllForCreate(HashMap.java:435)

          at java.util.HashMap.<init>(HashMap.java:225)

          at org.ajax4jsf.component.UIDataAdaptorBase.createChildStateCopy(UIDataAdaptorBase.java:894)

          at org.ajax4jsf.component.UIDataAdaptorBase.saveState(UIDataAdaptorBase.java:1554)

          at org.richfaces.component.UIDataTable.saveState(UIDataTable.java:181)

          at org.richfaces.component.html.HtmlDataTable.saveState(HtmlDataTable.java:1361)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1078)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:1094)

          at org.ajax4jsf.component.AjaxViewRoot.processSaveState(AjaxViewRoot.java:751)

          at org.ajax4jsf.application.AjaxStateManager.getComponentStateToSave(AjaxStateManager.java:179)

          at org.ajax4jsf.application.AjaxStateManager.buildViewState(AjaxStateManager.java:515)

          at org.ajax4jsf.application.AjaxStateManager.saveSerializedView(AjaxStateManager.java:467)

          at javax.faces.application.StateManagerWrapper.saveSerializedView(StateManagerWrapper.java:71)

          at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:615)

          at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)

          at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)

          at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)

          at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)

          at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)

          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)

          at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)

          at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)

          at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at com.nielsen.online.dashboard.filter.TopFilter.doFilter(TopFilter.java:97)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at com.nielsen.online.iat.shared.filters.Log4jMDCFilter.doFilter(Log4jMDCFilter.java:76)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

          at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)

          at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)

          at org.apache.catalina.authenticator.NBMFormAuthenticator.invoke(NBMFormAuthenticator.java:109)

          at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)

          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

          at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)

          at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:420)

          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)

          at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)

          at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

          at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)

          at java.lang.Thread.run(Thread.java:619)