“Response is committed” error during page load in AEM 6.x
Explore how to resolve the perplexing java.lang.IllegalStateException error in AEM logs, occurring during static content browsing. Learn effective solutions for seamless user experience.
Description description
Environment
Adobe Experience Manager 6.x
Issue
If AEM logs show a java.lang.IllegalStateException: Response is committed error coming from org.eclipse.jetty.server.Request.getSession while browsing to static content, similar to this:
28.12.2016 08:58:44.162 *ERROR* [ 10.150.165.69 [ 1482915520460] GET /us/en/home/about .html HTTP /1 .1] org.apache.sling.scripting.jsp.jasper.runtime.JspFactoryImpl Exception initializing page contextjava.lang.IllegalStateException: Response is committedat org.eclipse.jetty.server.Request.getSession(Request.java:1400)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:229)at org.apache.felix.http.base.internal.dispatch.ServletRequestWrapper.getSession(ServletRequestWrapper.java:233)at org.apache.felix.http.base.internal.dispatch.ServletRequestWrapper.getSession(ServletRequestWrapper.java:226)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)at org.apache.sling.scripting.jsp.jasper.runtime.PageContextImpl._initialize(PageContextImpl.java:149)at org.apache.sling.scripting.jsp.jasper.runtime.PageContextImpl.initialize(PageContextImpl.java:127)at org.apache.sling.scripting.jsp.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl.java:88)at org.apache.sling.scripting.jsp.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:57)at org.apache.sling.scripting.jsp.jasper.compiler.JspRuntimeContext$JspFactoryHandler.getPageContext(JspRuntimeContext.java:104)at org.apache.jsp.apps.geometrixx.components.page.aboutlanding_002dpage.template_002dfootlibs_jsp._jspService(template_002dfootlibs_jsp.java:44)at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:284)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:102)at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:536)at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)at com.day.cq.wcm.tags.IncludeTag.includeScript(IncludeTag.java:178)at com.day.cq.wcm.tags.IncludeTag.doEndTag(IncludeTag.java:95)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.footerlibs_jsp._jspx_meth_cq_005finclude_005f0(footerlibs_jsp.java:433)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.footerlibs_jsp._jspService(footerlibs_jsp.java:295)at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:284)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:102)at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:536)at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)at com.day.cq.wcm.tags.IncludeTag.includeScript(IncludeTag.java:178)at com.day.cq.wcm.tags.IncludeTag.doEndTag(IncludeTag.java:95)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.body_jsp._jspx_meth_cq_005finclude_005f4(body_jsp.java:549)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.body_jsp._jspService(body_jsp.java:299)at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:284)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:102)at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:536)at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)at com.day.cq.wcm.tags.IncludeTag.includeScript(IncludeTag.java:178)at com.day.cq.wcm.tags.IncludeTag.doEndTag(IncludeTag.java:95)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.base_002dtemplate_002dpage_jsp._jspx_meth_cq_005finclude_005f1(base_002dtemplate_002dpage_jsp.java:458)at org.apache.jsp.apps.geometrixx.components.page.base_002dtemplate_002dpage.base_002dtemplate_002dpage_jsp._jspService(base_002dtemplate_002dpage_jsp.java:362)at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:284)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:102)at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:536)at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:546)at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)at com.day.cq.personalization.impl.TargetComponentFilter.doFilter(TargetComponentFilter.java:96)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:133)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:265)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMDeveloperModeFilter.doFilter(WCMDeveloperModeFilter.java:114)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282)at org.apache.sling.engine.impl.SlingRequestProcessorImpl.dispatchRequest(SlingRequestProcessorImpl.java:322)at org.apache.sling.engine.impl.request.SlingRequestDispatcher.dispatch(SlingRequestDispatcher.java:211)at org.apache.sling.engine.impl.request.SlingRequestDispatcher.include(SlingRequestDispatcher.java:104)at com.day.cq.wcm.core.impl.WCMComponentFilter$ForwardRequestDispatcher.include(WCMComponentFilter.java:503)at org.apache.jsp.libs.cq.Page.Page_jsp._jspService(Page_jsp.java:106)at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:284)at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:102)at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:536)at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:546)at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)at com.day.cq.personalization.impl.TargetComponentFilter.doFilter(TargetComponentFilter.java:96)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:133)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMComponentFilter.filterRootInclude(WCMComponentFilter.java:362)at com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:177)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282)at org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)at com.adobe.cq.social.ugcbase.security.impl.SaferSlingPostServlet.doFilter(SaferSlingPostServlet.java:114)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.dam.core.impl.assetlinkshare.AdhocAssetShareAuthHandler.doFilter(AdhocAssetShareAuthHandler.java:381)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.dam.core.impl.servlet.ActivityRecordHandler.doFilter(ActivityRecordHandler.java:155)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:73)at com.adobe.granite.requests.logging.impl.RequestLoggerImpl.doFilter(RequestLoggerImpl.java:127)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.granite.csrf.impl.CSRFFilter.doFilter(CSRFFilter.java:220)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.security.impl.ContentDispositionFilter.doFilter(ContentDispositionFilter.java:181)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl.doFilter(AuthoringUIModeServiceImpl.java:292)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.warp.TimeWarpFilter.doFilter(TimeWarpFilter.java:106)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.mobile.core.impl.redirect.RedirectFilter.doFilter(RedirectFilter.java:248)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.analytics.provisioning.impl.UserAuthenticationRequestFilter.doFilter(UserAuthenticationRequestFilter.java:119)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:95)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.cq.social.commons.cors.CORSAuthenticationFilter.doFilter(CORSAuthenticationFilter.java:91)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.foundation.forms.impl.FormsHandlingServlet.doFilter(FormsHandlingServlet.java:285)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.granite.optout.impl.OptOutFilter.doFilter(OptOutFilter.java:74)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.day.cq.wcm.core.impl.WCMRequestFilter.doFilter(WCMRequestFilter.java:90)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.cq.mcm.campaign.servlets.CampaignCopyTracker.doFilter(CampaignCopyTracker.java:100)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.rewriter.impl.RewriterFilter.doFilter(RewriterFilter.java:83)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:77)at com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:56)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.granite.rest.impl.servlet.ApiResourceFilter.doFilter(ApiResourceFilter.java:67)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:129)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.bgservlets.impl.BackgroundServletStarterFilter.doFilter(BackgroundServletStarterFilter.java:169)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at com.adobe.granite.resourceresolverhelper.impl.ResourceResolverHelperImpl.doFilter(ResourceResolverHelperImpl.java:84)at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)at org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:151)at org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:216)at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:85)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:79)at com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:308)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.felix.http.sslfilter.internal.SslFilter.doFilter(SslFilter.java:89)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:290)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:129)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.sling.featureflags.impl.FeatureManager.doFilter(FeatureManager.java:116)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:75)at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:124)at org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:61)at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)at org.eclipse.jetty.server.Server.handle(Server.java:499)at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)at java.lang.Thread.run(Thread.java:745)Resolution resolution
Solutions
There are a few possible solutions to this problem:
-
If you do not need JSP sessions in your application, then make sure that this code is added at the top of every jsp file:
<%@ page session="false"%> -
Modify the application JSP code to add the JSP session in a jsp file that is loaded earlier in the sling resolution process.
To do this, set the JSP session flag to True:
<%@ page session="true"%> -
Or increase Jetty servlet engine’s response buffer size to avoid early auto-flushing.
Response Buffer Size can be set on the Jetty OSGi configuration
(http://host:port/system/console/configMgr/org.apache.felix.http).You could safely increase this as high as 200000.
Cause
The JSP Session is added too late in the sling script inclusion stack.
Since enough bytes have been written to the response, Jetty servlet engine auto-flushes the response buffer before the JSESSIONID cookie is added, which results in an error.