[ 
https://issues.apache.org/jira/browse/TOMAHAWK-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12891983#action_12891983
 ] 

Jan-Kees van Andel commented on TOMAHAWK-1529:
----------------------------------------------

I'm pretty sure it has nothing to do with MyFaces...

I've seen issues like this one very often in the field. Most of the time the 
cause was a direct remove action on the collection (not remove() on the 
iterator) while iterating it.
You're passing in a Transformer into CollectionUtils.collect(), somewhere in 
"com.utmb.web.beans.searchController.getsrch1revvals". I can't see the line 
number in the stack trace, but it should be there.
I'm very curious what this Transformer looks like.

> ConcurrentModificationException when using t:selectManyPickList and 
> h:selectOneMenu
> -----------------------------------------------------------------------------------
>
>                 Key: TOMAHAWK-1529
>                 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1529
>             Project: MyFaces Tomahawk
>          Issue Type: Bug
>    Affects Versions: 1.1.10-SNAPSHOT
>         Environment: Solaris 5.8, Java HotSpot(TM) Server VM (build 
> 1.5.0_05-b05, mixed mode)
> Tomcat 6.0.26 running with Security Manager
> MyFaces 1.1.7
>            Reporter: suresh t
>
> I have a backend bean supporting jsf page. It has many components similar to 
> one shown below. where srch1vals is a ArrayList of SelectItem  s
>                               <h:selectOneMenu id="search_search1" 
> immediate="true"  value="#{searchController.vSrch1}" 
> styleClass="selectOneMenu">
>                                       <f:selectItems 
> value="#{searchController.srch1vals}" />
>                               </h:selectOneMenu>
>             There is one other components selectManyPickList that has value 
> set to srch1revvals. srch1revvals clones srch1vals in the Get accesor using 
> CollectionUtils.collect() method.
>                               <t:selectManyPicklist id="select_pick1" 
> size="5"  value="#{searchController.selectedPicks}" 
> valueChangeListener="#{searchController.selectionChanged}" 
> rendered="#{searchController.searchvalsResults}">
>                                       <f:selectItems 
> value="#{searchController.srch1revvals}" />
>                               </t:selectManyPicklist>
>         I am getting occasional ConcurrentModificationException as follows.
> Jul 6, 2010 4:35:38 PM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.util.ConcurrentModificationException
>         at 
> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:4
> 49)
>         at java.util.AbstractList$Itr.next(AbstractList.java:420)
>         at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:631)
>         at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:610)
>         at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:575)
>         at com.utmb.web.beans.searchController.getsrch1revvals(Unknown Source)
>         at sun.reflect.GeneratedMethodAccessor780.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at 
> org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolv
> erImpl.java:459)
>         at 
> org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverI
> mpl.java:85)
>         at 
> org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELPars
> erHelper.java:539)
>         at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
>         at 
> org.apache.myfaces.el.ValueBindingImpl.getValue(ValueBindingImpl.java
> :386)
>         at 
> javax.faces.component.UISelectItems.getValue(UISelectItems.java:108)
>         at 
> org.apache.myfaces.shared_tomahawk.util.SelectItemsIterator.hasNext(S
> electItemsIterator.java:127)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.internalGe
> tSelectItemList(RendererUtils.java:462)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.getSelectI
> temList(RendererUtils.java:448)
>         at 
> org.apache.myfaces.custom.picklist.HtmlPicklistRenderer.encodeEnd(Htm
> lPicklistRenderer.java:161)
>         at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:
> 775)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChil
> d(RendererUtils.java:431)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.renderChildren(HtmlGridRendererBase.java:229)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.encodeEnd(HtmlGridRendererBase.java:101)
>         at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:
> 775)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChil
> d(RendererUtils.java:431)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.renderChildren(HtmlGridRendererBase.java:229)
>         at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.encodeEnd(HtmlGridRendererBase.java:101)
>         at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:
> 775)
>         at 
> javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:678)
>         at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:546)
>         at 
> org.apache.jsp.protected_.query_jsp._jspx_meth_t_005fpanelGrid_005f4(
> query_jsp.java:1343)
>        at 
> org.apache.jsp.protected_.query_jsp._jspx_meth_h_005fform_005f0(query
> _jsp.java:727)
>         at 
> org.apache.jsp.protected_.query_jsp._jspx_meth_f_005fview_005f0(query
> _jsp.java:620)
>         at org.apache.jsp.protected_.query_jsp._jspService(query_jsp.java:215)
>         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
> .java:377)
>         at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
> 13)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at sun.reflect.GeneratedMethodAccessor46.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at 
> org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:269
> )
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>         at 
> org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:3
>     at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.
> java:162)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:283)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.access$000(Applicatio
> nFilterChain.java:56)
>         at 
> org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilt
> erChain.java:189)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:185)
>         at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDisp
> atcher.java:646)
>         at 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applica
> tionDispatcher.java:436)
>         at 
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationD
> ispatcher.java:374)
>         at 
> org.apache.catalina.core.ApplicationDispatcher.access$000(Application
> Dispatcher.java:65)
>         at 
> org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.run(
> ApplicationDispatcher.java:80)
>    at java.security.AccessController.doPrivileged(Native Method)
>         at 
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDis
> patcher.java:294)
>         at 
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
> h(ServletExternalContextImpl.java:426)
>         at 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
> iewHandlerImpl.java:255)
>         at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderRes
> ponseExecutor.java:41)
>         at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
> 146)
>         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:147)
>         at sun.reflect.GeneratedMethodAccessor354.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at 
> org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:269
> )
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>         at 
> org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:3
> 01)
>   at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.
> java:243)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:230)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.access$000(Applicatio
> nFilterChain.java:56)
>         at 
> org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilt
> erChain.java:189)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:185)
>         at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
> alve.java:233)
>         at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
> alve.java:191)
>         at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
> torBase.java:558)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
> ava:127)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
> ava:102)
>  at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
> 555)
>         at 
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.ja
> va:421)
>         at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
> ve.java:109)
>         at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
> a:298)
>         at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
> :852)
>         at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
> ss(Http11Protocol.java:588)
>         at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:48
> 9)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to