You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@shale.apache.org by Laurie Harper <la...@holoweb.net> on 2007/06/14 07:56:39 UTC

ConcurrentModificationException under Jetty

I just upgraded various library dependencies in a project I'm working  
on, and am now getting the exception shown below on every request,  
but only when running under Jetty (via the Maven2 plugin). The same  
app runs fine under Tomcat. Is Shale doing anything in  
afterRenderResponse() that it shouldn't be, or is this likely a Jetty  
issue? Or am I barking up all the wrong trees? :-)

L.

Jun 14, 2007 1:34:09 AM  
org.apache.myfaces.lifecycle.PhaseListenerManager  
informPhaseListenersAfter
SEVERE: Exception in PhaseListener RENDER_RESPONSE(6) afterPhase
java.util.ConcurrentModificationException
         at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
         at java.util.HashMap$KeyIterator.next(HashMap.java:823)
         at java.util.Collections$1.nextElement(Collections.java:3376)
         at org.apache.myfaces.context.servlet.AbstractAttributeMap 
$KeyIterator.next(AbstractAttributeMap.java:214)
         at org.apache.myfaces.context.servlet.AbstractAttributeMap 
$EntryIterator.next(AbstractAttributeMap.java:310)
         at  
org.apache.shale.view.faces.ViewPhaseListener.afterRenderResponse 
(ViewPhaseListener.java:233)
         at org.apache.shale.view.faces.ViewPhaseListener.afterPhase 
(ViewPhaseListener.java:106)
         at  
org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAf 
ter(PhaseListenerManager.java:92)
         at org.apache.myfaces.lifecycle.LifecycleImpl.render 
(LifecycleImpl.java:134)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java: 
140)
         at org.mortbay.jetty.servlet.ServletHolder.handle 
(ServletHolder.java:442)
         at org.mortbay.jetty.servlet.ServletHandler 
$CachedChain.doFilter(ServletHandler.java:1051)
         at  
com.foo.projility.web.auth.UserAuthenticationFilter.doFilter 
(UserAuthenticationFilter.java:80)
         at org.mortbay.jetty.servlet.ServletHandler 
$CachedChain.doFilter(ServletHandler.java:1042)
         at  
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFil 
terInternal(OpenSessionInViewFilter.java:174)
         at  
org.springframework.web.filter.OncePerRequestFilter.doFilter 
(OncePerRequestFilter.java:76)
         at org.mortbay.jetty.servlet.ServletHandler 
$CachedChain.doFilter(ServletHandler.java:1042)
         at  
org.apache.shale.application.faces.ShaleApplicationFilter.doFilter 
(ShaleApplicationFilter.java:267)
         at org.mortbay.jetty.servlet.ServletHandler 
$CachedChain.doFilter(ServletHandler.java:1042)
         at  
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoF 
ilter(TrinidadFilterImpl.java:208)
         at  
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterI 
mpl(TrinidadFilterImpl.java:165)
         at  
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter 
(TrinidadFilterImpl.java:138)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter 
(TrinidadFilter.java:92)
         at org.mortbay.jetty.servlet.ServletHandler 
$CachedChain.doFilter(ServletHandler.java:1042)
         at org.mortbay.jetty.servlet.ServletHandler.handle 
(ServletHandler.java:355)
         at org.mortbay.jetty.servlet.SessionHandler.handle 
(SessionHandler.java:226)
         at org.mortbay.jetty.handler.ContextHandler.handle 
(ContextHandler.java:615)
         at org.mortbay.jetty.handler.ContextHandlerCollection.handle 
(ContextHandlerCollection.java:150)
         at org.mortbay.jetty.handler.HandlerCollection.handle 
(HandlerCollection.java:123)
         at org.mortbay.jetty.handler.HandlerWrapper.handle 
(HandlerWrapper.java:141)
         at org.mortbay.jetty.Server.handle(Server.java:272)
         at org.mortbay.jetty.HttpConnection.handlerRequest 
(HttpConnection.java:396)
         at org.mortbay.jetty.HttpConnection 
$RequestHandler.headerComplete(HttpConnection.java:652)
         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:488)
         at org.mortbay.jetty.HttpParser.parseAvailable 
(HttpParser.java:198)
         at org.mortbay.jetty.HttpConnection.handle 
(HttpConnection.java:311)
         at org.mortbay.jetty.nio.HttpChannelEndPoint.run 
(HttpChannelEndPoint.java:270)
         at org.mortbay.thread.BoundedThreadPool$PoolThread.run 
(BoundedThreadPool.java:475)

--
Laurie Harper
Open Source advocate, Java geek: http://www.holoweb.net/laurie
Founder, Zotech Software: http://www.zotechsoftware.com/




Re: ConcurrentModificationException under Jetty

Posted by Rahul Akolkar <ra...@gmail.com>.
On 6/14/07, Laurie Harper <la...@holoweb.net> wrote:
> I just upgraded various library dependencies in a project I'm working
> on, and am now getting the exception shown below on every request,
> but only when running under Jetty (via the Maven2 plugin). The same
> app runs fine under Tomcat. Is Shale doing anything in
> afterRenderResponse() that it shouldn't be, or is this likely a Jetty
> issue? Or am I barking up all the wrong trees? :-)
>
<snip/>

Appears related:

  http://issues.apache.org/struts/browse/SHALE-394

Are you in a position to try the fix (via the nightlies)?

-Rahul


> L.
>
> Jun 14, 2007 1:34:09 AM
> org.apache.myfaces.lifecycle.PhaseListenerManager
> informPhaseListenersAfter
> SEVERE: Exception in PhaseListener RENDER_RESPONSE(6) afterPhase
> java.util.ConcurrentModificationException
>          at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
>          at java.util.HashMap$KeyIterator.next(HashMap.java:823)
>          at java.util.Collections$1.nextElement(Collections.java:3376)
>          at org.apache.myfaces.context.servlet.AbstractAttributeMap
> $KeyIterator.next(AbstractAttributeMap.java:214)
>          at org.apache.myfaces.context.servlet.AbstractAttributeMap
> $EntryIterator.next(AbstractAttributeMap.java:310)
>          at
> org.apache.shale.view.faces.ViewPhaseListener.afterRenderResponse
> (ViewPhaseListener.java:233)
>          at org.apache.shale.view.faces.ViewPhaseListener.afterPhase
> (ViewPhaseListener.java:106)
>          at
> org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAf
> ter(PhaseListenerManager.java:92)
>          at org.apache.myfaces.lifecycle.LifecycleImpl.render
> (LifecycleImpl.java:134)
>          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:
> 140)
>          at org.mortbay.jetty.servlet.ServletHolder.handle
> (ServletHolder.java:442)
>          at org.mortbay.jetty.servlet.ServletHandler
> $CachedChain.doFilter(ServletHandler.java:1051)
>          at
> com.foo.projility.web.auth.UserAuthenticationFilter.doFilter
> (UserAuthenticationFilter.java:80)
>          at org.mortbay.jetty.servlet.ServletHandler
> $CachedChain.doFilter(ServletHandler.java:1042)
>          at
> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFil
> terInternal(OpenSessionInViewFilter.java:174)
>          at
> org.springframework.web.filter.OncePerRequestFilter.doFilter
> (OncePerRequestFilter.java:76)
>          at org.mortbay.jetty.servlet.ServletHandler
> $CachedChain.doFilter(ServletHandler.java:1042)
>          at
> org.apache.shale.application.faces.ShaleApplicationFilter.doFilter
> (ShaleApplicationFilter.java:267)
>          at org.mortbay.jetty.servlet.ServletHandler
> $CachedChain.doFilter(ServletHandler.java:1042)
>          at
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoF
> ilter(TrinidadFilterImpl.java:208)
>          at
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterI
> mpl(TrinidadFilterImpl.java:165)
>          at
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter
> (TrinidadFilterImpl.java:138)
>          at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter
> (TrinidadFilter.java:92)
>          at org.mortbay.jetty.servlet.ServletHandler
> $CachedChain.doFilter(ServletHandler.java:1042)
>          at org.mortbay.jetty.servlet.ServletHandler.handle
> (ServletHandler.java:355)
>          at org.mortbay.jetty.servlet.SessionHandler.handle
> (SessionHandler.java:226)
>          at org.mortbay.jetty.handler.ContextHandler.handle
> (ContextHandler.java:615)
>          at org.mortbay.jetty.handler.ContextHandlerCollection.handle
> (ContextHandlerCollection.java:150)
>          at org.mortbay.jetty.handler.HandlerCollection.handle
> (HandlerCollection.java:123)
>          at org.mortbay.jetty.handler.HandlerWrapper.handle
> (HandlerWrapper.java:141)
>          at org.mortbay.jetty.Server.handle(Server.java:272)
>          at org.mortbay.jetty.HttpConnection.handlerRequest
> (HttpConnection.java:396)
>          at org.mortbay.jetty.HttpConnection
> $RequestHandler.headerComplete(HttpConnection.java:652)
>          at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:488)
>          at org.mortbay.jetty.HttpParser.parseAvailable
> (HttpParser.java:198)
>          at org.mortbay.jetty.HttpConnection.handle
> (HttpConnection.java:311)
>          at org.mortbay.jetty.nio.HttpChannelEndPoint.run
> (HttpChannelEndPoint.java:270)
>          at org.mortbay.thread.BoundedThreadPool$PoolThread.run
> (BoundedThreadPool.java:475)
>
> --
> Laurie Harper
> Open Source advocate, Java geek: http://www.holoweb.net/laurie
> Founder, Zotech Software: http://www.zotechsoftware.com/
>
>
>
>