Mega Code Archive

 
Categories / Java / Servlets
 

Javax servlet error request_uri

import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ErrorDisplay extends HttpServlet {   public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException,       IOException {     res.setContentType("text/html");     PrintWriter out = res.getWriter();     String code = null, message = null, type = null, uri = null;     Object codeObj, messageObj, typeObj;     Throwable throwable;     codeObj = req.getAttribute("javax.servlet.error.status_code");     messageObj = req.getAttribute("javax.servlet.error.message");     typeObj = req.getAttribute("javax.servlet.error.exception_type");     throwable = (Throwable) req.getAttribute("javax.servlet.error.exception");     uri = (String) req.getAttribute("javax.servlet.error.request_uri");     if (uri == null) {       uri = req.getRequestURI(); // in case there's no URI given     }     // Convert the attributes to string values     if (codeObj != null)       code = codeObj.toString();     if (messageObj != null)       message = messageObj.toString();     if (typeObj != null)       type = typeObj.toString();     // The error reason is either the status code or exception type     String reason = (code != null ? code : type);     out.println("<HTML>");     out.println("<HEAD><TITLE>" + reason + ": " + message + "</TITLE></HEAD>");     out.println("<BODY>");     out.println("<H1>" + reason + "</H1>");     out.println("<H2>" + message + "</H2>");     out.println("<PRE>");     if (throwable != null) {       throwable.printStackTrace(out);     }     out.println("</PRE>");     out.println("<HR>");     out.println("<I>Error accessing " + uri + "</I>");     out.println("</BODY></HTML>");   } }