Hello there! Few weeks ago I've post a concern about having opensession in view filter (both spring and hivemind approach) on a very requested web page. When we ran our stress test today, we got thousands of the following exceptions below (we had a few hundred of users accessing the application, average of 50 requests/second).
Well, since Spring filter is at the bottom of the stack, I believe he is the one to blame. So we need to remove the opensession for the chat pages, that are readonly and got thousands of ajax requests... The first Ideia I got in mind is simply dumping tapestry for it and using pure servlets. I'm pretty worried with the whole sequence of events: browser -> Spring Filter -> Tapestry Servlet -> Engine Service -> Page -> EngineService -> Spring Filter -> browser And using a servlet I'd have: browser -> Servlet -> browser Please I'm not by any means criticizing Tapestry. I just would like to hear from you gurus, if my concern is valid. And if that exception thrown by tapestry will compromise my application, for example not returning an exception. Regards ERROR ApplicationServerThread-16 org.apache.tapestry.web.ServletWebResponse - Unable to reset response buffer: Response has already been committed java.lang.IllegalStateException: Response has already been committed at com.evermind.server.http.EvermindHttpServletResponse.resetBuffer(EvermindHttpServletResponse.java:1848) at com.evermind.server.http.EvermindHttpServletResponse.reset(EvermindHttpServletResponse.java:1874) at com.evermind.server.http.EvermindHttpServletResponse.reset (EvermindHttpServletResponse.java:1842) at org.apache.tapestry.web.ServletWebResponse.reset(ServletWebResponse.java:128) at org.apache.tapestry.web.ServletWebResponse.getPrintWriter(ServletWebResponse.java:90) at $WebResponse_10d7962d0da.getPrintWriter($WebResponse_10d7962d0da.java) at $WebResponse_10d7962cfb6.getPrintWriter($WebResponse_10d7962cfb6.java) at org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse (ResponseRendererImpl.java:67) at $ResponseRenderer_10d7962cfce.renderResponse($ResponseRenderer_10d7962cfce.java) at org.apache.tapestry.error.ExceptionPresenterImpl.presentException(ExceptionPresenterImpl.java:46) at $ExceptionPresenter_10d7962cfbe.presentException($ExceptionPresenter_10d7962cfbe.java) at org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngine.java:121) at org.apache.tapestry.engine.AbstractEngine.service (AbstractEngine.java:280) at org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60) at $WebRequestServicer_10d7962d016.service($WebRequestServicer_10d7962d016.java) at $WebRequestServicer_10d7962d012.service($WebRequestServicer_10d7962d012.java) at org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56) at $ServletRequestServicer_10d7962cff8.service($ServletRequestServicer_10d7962cff8.java) at org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) at $ServletRequestServicerFilter_10d7962cff4.service($ServletRequestServicerFilter_10d7962cff4.java) at $ServletRequestServicer_10d7962cffa.service($ServletRequestServicer_10d7962cffa.java) at org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) at $ServletRequestServicerFilter_10d7962cff2.service($ServletRequestServicerFilter_10d7962cff2.java) at $ServletRequestServicer_10d7962cffa.service($ServletRequestServicer_10d7962cffa.java) at org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) at $ServletRequestServicerFilter_10d7962cff6.service($ServletRequestServicerFilter_10d7962cff6.java) at $ServletRequestServicer_10d7962cffa.service($ServletRequestServicer_10d7962cffa.java) at $ServletRequestServicer_10d7962cfec.service($ServletRequestServicer_10d7962cfec.java) at org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123) at org.apache.tapestry.ApplicationServlet.doGet (ApplicationServlet.java:79) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at com.evermind.server.http.ResourceFilterChain.doFilter (ResourceFilterChain.java:64) at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:77) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:629) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java :376) at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451) at com.evermind.server.http.HttpRequestHandler.serveOneRequest (HttpRequestHandler.java:218) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:119) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112) at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run (ServerSocketReadHandler.java:260) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) at java.lang.Thread.run(Thread.java:595) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]