This conversation has been locked due to inactivity. Please create a new post.
This conversation has been locked due to inactivity. Please create a new post.
Hi All,
I have configured ACS error page handler with my 6.2 application. I have attached the config snapshot . The 404 behavior works fine but i am struggling to get the 500 error work.
After checking the error.log file I can see the following error. -- org.apache.sling.engine.impl.DefaultErrorHandler handleError: Response already committed; cannot send error 500java.lang.Error: Unresolved compilation problems:
The complete stack trace is below
Caused by: org.apache.sling.api.scripting.ScriptEvaluationException: An exception occurred processing JSP page /apps/acs-commons/components/utilities/errorpagehandler/default.jsp at line 47
at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:416)
at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)
at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:4 91)
at org.apache.sling.servlets.resolver.internal.SlingServletResolver.handleError(SlingServlet Resolver.java:765)
... 51 common frames omitted
Caused by: org.apache.sling.api.SlingException: An exception occurred processing JSP page /apps/acs-commons/components/utilities/errorpagehandler/default.jsp at line 47
at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.handleJspExceptionInterna l(JspServletWrapper.java:683)
at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.handleJspException(JspSer vletWrapper.java:608)
at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper .java:529)
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.j ava:102)
at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngin eFactory.java:536)
at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)
... 54 common frames omitted
Caused by: java.lang.IllegalStateException: Committed
at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1243)
at org.eclipse.jetty.server.Response.resetForForward(Response.java:1235)
at org.eclipse.jetty.server.Response.reset(Response.java:1181)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at javax.servlet.ServletResponseWrapper.reset(ServletResponseWrapper.java:186)
at com.adobe.acs.commons.errorpagehandler.impl.ErrorPageHandlerImpl.resetRequestAndResponse( ErrorPageHandlerImpl.java:764)
at org.apache.jsp.apps.sling.servlet.errorhandler.default_jsp._jspService(default_jsp.java:3 30)
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)
... 59 common frames omitted
19.12.2016 20:47:47.352 *ERROR* [0:0:0:0:0:0:0:1 [1482160667209] GET /content/mecommerce/americas/US/en/signup/password.html HTTP/1.1] org.apache.sling.engine.impl.DefaultErrorHandler handleError: Response already committed; cannot send error 500java.lang.Error: Unresolved compilation problems:
At line 47 of default.jsp has the following code
errorPageHandlerService.resetRequestAndResponse(slingRequest, slingResponse, status);
Adding code for errorPageHandlerService.resetRequestAndResponse
/** * Reset response attributes to support printing out a new page (rather than one that potentially errored out). * This includes clearing clientlib inclusion state, and resetting the response. * <p> * If the response is committed, and it hasnt been closed by code, check the response AND jsp buffer sizes and * ensure they are large enough to NOT force a buffer flush. * * @param request * @param response * @param statusCode */ public void resetRequestAndResponse(SlingHttpServletRequest request, SlingHttpServletResponse response, int statusCode) { // Clear client libraries // Replace with proper API call is HtmlLibraryManager provides one in the future; // Currently this is our only option. request.setAttribute("com.day.cq.widget.HtmlLibraryManager.included", new HashSet<String>()); // Fixes AEM 6.2 issue (https://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/790) request.setAttribute("com.adobe.granite.ui.clientlibs.HtmlLibraryManager.included", new HashSet<String>()); // Clear the response response.reset(); response.setContentType("text/html"); response.setStatus(statusCode); }
Can you please help me if there is any configuration that needs to be done for AEM 6.2 ?
Views
Replies
Total Likes
See the comments here - they discuss this: https://adobe-consulting-services.github.io/acs-aem-commons/features/errorpagehandler.html
Views
Replies
Total Likes
Yes, I posted the question there as well. So David's answer did solve my issue. Increasing the Response buffer size in Apache Felix Jetty Based HTTP Service to 49152 fixed it.
However there's a catch, if i again revert my value to the default 24576 value, i am not able to replicate the error i observed in the first place.
Views
Replies
Total Likes
Views
Likes
Replies
Views
Likes
Replies