1 30 31 package org.apache.commons.httpclient; 32 33 import java.io.IOException ; 34 import java.io.PrintWriter ; 35 36 import javax.servlet.ServletException ; 37 import javax.servlet.ServletInputStream ; 38 import javax.servlet.http.HttpServletRequest ; 39 import javax.servlet.http.HttpServletResponse ; 40 41 public class RequestBodyServlet extends MultiMethodServlet { 42 protected void genericService(HttpServletRequest request, HttpServletResponse response) throws IOException , ServletException { 43 response.setContentType("text/html"); 44 PrintWriter out = response.getWriter(); 45 StringBuffer buf = null; 46 if(request.getContentLength() > 0) { 47 buf = new StringBuffer (); 48 ServletInputStream in = request.getInputStream(); 49 int i = 0; 50 while(i<request.getContentLength()) { 51 int c = in.read(); 52 if(c == -1) { 53 break; 54 } else { 55 buf.append((char)c); 56 } 57 } 58 } else if("chunked".equalsIgnoreCase(request.getHeader("Transfer-Encoding"))) { 59 buf = new StringBuffer (); 60 ServletInputStream in = request.getInputStream(); 61 for(int c = in.read(); c != -1; c = in.read()) { 62 if(c == -1) { 63 break; 64 } else { 65 buf.append((char)c); 66 } 67 } 68 } 69 70 out.println("<html>"); 71 out.println("<head><title>Request Body Servlet: " + request.getMethod() + "</title></head>"); 72 out.println("<body>"); 73 74 out.println("<p>This is a response to an HTTP " + request.getMethod() + " request.</p>"); 75 out.println("<p>Body:</p>"); 76 if(null != buf) { 77 out.println("<p><tt>" + buf.toString() + "</tt></p>"); 78 } else { 79 out.println("No body submitted."); 80 } 81 out.println("</body>"); 82 out.println("</html>"); 83 } 84 } 85 86 | Popular Tags |