[
https://issues.apache.org/jira/browse/COCOON-2150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12553346
]
Carsten Ziegeler commented on COCOON-2150:
------------------------------------------
If an error handler has already written to the response, than the error has
been handled. In this case no exception should be thrown.
I don't know if this is the case and I've no
idea what the PathDispatcher.forward method really does and why it forwards to
super in case of an exception.
But I think the simplest fix for this is to check if the response has already
been committed and only if not, it should reset it and forward to super.
But it seems to me that the whole processing should be checked.
> Error on resetting response
> ---------------------------
>
> Key: COCOON-2150
> URL: https://issues.apache.org/jira/browse/COCOON-2150
> Project: Cocoon
> Issue Type: Bug
> Components: - Servlet service framework
> Affects Versions: 2.2-dev (Current SVN)
> Reporter: Jörg Heinicke
> Priority: Minor
>
> This is the exception shown on the console:
> java.lang.IllegalStateException: Committed
> at org.mortbay.jetty.Response.resetBuffer(Response.java:855)
> at org.mortbay.jetty.Response.reset(Response.java:834)
> at
> javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:182)
> at
> org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:576)
> at
> org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:545)
> at
> org.apache.cocoon.servletservice.spring.ServletFactoryBean$ServiceInterceptor.invoke(ServletFactoryBean.java:230)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
> at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
> at $Proxy2.service(Unknown Source)
> at
> org.apache.cocoon.servletservice.DispatcherServlet.service(DispatcherServlet.java:102)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:459)
> It seems to be thrown whenever the response object is reseted after the
> actual response has been sent by the sitemap error handler. In this case
> reset is no longer possible since the response has already been committed as
> stated in the error message.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.