public void doGet(HttpServletRequest req, HttpServletResponse resp) { WebRequest wr = null; try { wr = WebRequest.getOrCreate(req, resp, null); handleRequest(wr); wr.flush(); } catch (Exception e) { try { if (wr != null) { wr.write("<html><body>"); wr.write("\n<h3>Exception</h3><p>"); wr.writeHtml(e.toString()); wr.write("</p>\n<p>getRequestURI: "); wr.writeHtml(wr.req.getRequestURI()); wr.write("</p>\n<p>getContextPath: "); wr.writeHtml(wr.req.getContextPath()); wr.write("</p>\n<p>getServletPath: "); wr.writeHtml(wr.req.getServletPath()); wr.write("</p>\n<pre>\n"); e.printStackTrace(new PrintWriter(wr.w)); wr.write("\n</pre>\n</body></html>"); wr.flush(); } } catch (Exception exx) { // can't do anything about this. } } }
// request to http://machine:port/application/jd/version/com/example/foo/MyClass.html private void handleRequest(WebRequest wr) throws Exception { String getContextPathStr = wr.req.getContextPath(); String getPathInfoStr = wr.req.getPathInfo(); String getPathTranslatedStr = wr.req.getPathTranslated(); String getQueryStringStr = wr.req.getQueryString(); String getRequestURIStr = wr.req.getRequestURI(); String getRequestURLStr = wr.req.getRequestURL().toString(); String getServletPathStr = wr.req.getServletPath(); Writer out = wr.w; out.write("<html>\r\n"); out.write("<head>\r\n"); out.write("\r\n"); out.write("</head>\r\n"); out.write("\r\n"); out.write("<body>\r\n"); out.write("\r\n"); out.write("<hr>\r\n"); out.write("<table>\r\n"); out.write("<tr><td> request.getRequestURL(); </td><td> "); wr.writeHtml(getRequestURLStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getScheme(); </td><td> "); wr.writeHtml(wr.req.getScheme()); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getServerName(); </td><td> "); wr.writeHtml(wr.req.getServerName()); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getServerPort(); </td><td> "); wr.writeHtml(Integer.toString(wr.req.getServerPort())); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getContextPath(); </td><td> "); wr.writeHtml(getContextPathStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getPathInfo(); </td><td> "); wr.writeHtml(getPathInfoStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getServletPath(); </td><td> "); wr.writeHtml(getServletPathStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getQueryString(); </td><td> "); wr.writeHtml(getQueryStringStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getRequestURI(); </td><td> "); wr.writeHtml(getRequestURIStr); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getProtocol(); </td><td> "); wr.writeHtml(wr.req.getProtocol()); out.write(" </td></tr>\r\n"); out.write("<tr><td> request.getPathTranslated(); </td><td> "); wr.writeHtml(getPathTranslatedStr); out.write(" </td></tr>\r\n"); out.write("</table>\r\n"); out.write("\r\n"); out.write("</body>\r\n"); out.write("</html>\r\n"); }