@Override public String getServletPath() { return httpServletRequest.getServletPath(); }
@Override public String getServletPath() { return httpServletRequest.getServletPath(); }
public String getOriginalServletPath() { String uri = (String) getAttribute(RequestDispatcher.FORWARD_SERVLET_PATH); if(uri != null) { return uri; } uri = (String) getAttribute(AsyncContext.ASYNC_SERVLET_PATH); if(uri != null) { return uri; } return getServletPath(); }
public static void handleRequest(HttpServerExchange exchange, final ServletRequestContext servletRequestContext, final Throwable exception) throws IOException { HttpServletRequestImpl req = servletRequestContext.getOriginalRequest(); StringBuilder sb = new StringBuilder(); //todo: make this good sb.append("<html><head><title>ERROR</title>"); sb.append(ERROR_CSS); sb.append("</head><body><div class=\"header\"><div class=\"error-div\"></div><div class=\"error-text-div\">Error processing request</div></div>"); writeLabel(sb, "Context Path", req.getContextPath()); writeLabel(sb, "Servlet Path", req.getServletPath()); writeLabel(sb, "Path Info", req.getPathInfo()); writeLabel(sb, "Query String", req.getQueryString()); writeLabel(sb, "Stack Trace", ""); sb.append("<pre>"); StringWriter stringWriter = new StringWriter(); exception.printStackTrace(new PrintWriter(stringWriter)); sb.append(escapeBodyText(stringWriter.toString())); sb.append("</pre></body></html>"); servletRequestContext.getOriginalResponse().setContentType("text/html"); servletRequestContext.getOriginalResponse().setCharacterEncoding("UTF-8"); try { ServletOutputStream out = servletRequestContext.getOriginalResponse().getOutputStream(); out.write(sb.toString().getBytes(StandardCharsets.UTF_8)); out.close(); } catch (IllegalStateException e) { PrintWriter writer = servletRequestContext.getOriginalResponse().getWriter(); writer.write(sb.toString()); writer.close(); } }
requestImpl.setAttribute(FORWARD_REQUEST_URI, requestImpl.getRequestURI()); requestImpl.setAttribute(FORWARD_CONTEXT_PATH, requestImpl.getContextPath()); requestImpl.setAttribute(FORWARD_SERVLET_PATH, requestImpl.getServletPath()); requestImpl.setAttribute(FORWARD_PATH_INFO, requestImpl.getPathInfo()); requestImpl.setAttribute(FORWARD_QUERY_STRING, requestImpl.getQueryString());
requestImpl.setAttribute(FORWARD_REQUEST_URI, requestImpl.getRequestURI()); requestImpl.setAttribute(FORWARD_CONTEXT_PATH, requestImpl.getContextPath()); requestImpl.setAttribute(FORWARD_SERVLET_PATH, requestImpl.getServletPath()); requestImpl.setAttribute(FORWARD_PATH_INFO, requestImpl.getPathInfo()); requestImpl.setAttribute(FORWARD_QUERY_STRING, requestImpl.getQueryString());