[ https://issues.apache.org/jira/browse/COCOON-2150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577744#action_12577744 ]
Rice Yeh commented on COCOON-2150: ---------------------------------- I do not know whether I am naive to say just adding !wrappedResponse.isCommited() on the if statement on line 482 in ServletServiceContext.java may solve the problem. The following is the patch. Index: C:/coffee/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java =================================================================== --- C:/coffee/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java (revision 635788) +++ C:/coffee/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java (working copy) @@ -479,7 +479,7 @@ } int status = wrappedResponse.getStatus(); - if (se != null || (status < 200 || status >= 400)) { + if (!wrappedResponse.isCommitted() && (se != null || (status < 200 || status >= 400))) { wrappedResponse.reset(); NamedDispatcher _super = (NamedDispatcher) ServletServiceContext.this.getNamedDispatcher(SUPER); if (_super != null) { > 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 > Assignee: Grzegorz Kossakowski > Fix For: 2.2-dev (Current SVN) > > > 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.