You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2012/08/02 14:02:03 UTC

[jira] [Assigned] (WICKET-4687) ConcurrentModificationException with IFeedback instances that contain other IFeedback instances

     [ https://issues.apache.org/jira/browse/WICKET-4687?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Grigorov reassigned WICKET-4687:
---------------------------------------

    Assignee: Martin Grigorov
    
> ConcurrentModificationException with IFeedback instances that contain other IFeedback instances
> -----------------------------------------------------------------------------------------------
>
>                 Key: WICKET-4687
>                 URL: https://issues.apache.org/jira/browse/WICKET-4687
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.0.0-beta3
>            Reporter: Curtis Crabb
>            Assignee: Martin Grigorov
>              Labels: ConcurrentModificationException, IFeedback,
>         Attachments: feedbackIssue.zip
>
>
> When an implementation of IFeedback contains a component that dynamically constructs a child instance of IFeedback, a ConcurrentModificationException will occur.  This is easily replicated through the use of a FormComponentFeedbackBorder which contains a refreshing repeater (ListView) that constructs a FeedbackPanel.
> Here is the exception:
> java.util.ConcurrentModificationException
>      at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
>      at java.util.AbstractList$Itr.next(AbstractList.java:343)
>      at org.apache.wicket.Component.internalPrepareForRender(Component.java:2212)
>      at org.apache.wicket.Page.internalPrepareForRender(Page.java:246)
>      at org.apache.wicket.Component.render(Component.java:2281)
>      at org.apache.wicket.Page.renderPage(Page.java:1020)
>      at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:115)
>      at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:237)
>      at org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:165)
>      at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:814)
>      at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>      at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:253)
>      at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:210)
>      at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:281)
>      at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)
>      at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:245)
>      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1332)
>      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:477)
>      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
>      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1031)
>      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:406)
>      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:965)
>      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>      at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>      at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
>      at org.eclipse.jetty.server.Server.handle(Server.java:348)
>      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:452)
>      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:884)
>      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:938)
>      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:630)
>      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
>      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
>      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:606)
>      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
>      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
>      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)
>      at java.lang.Thread.run(Thread.java:662)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira