/** * {@inheritDoc} */ @Override public void service(final HttpServletRequest request, final HttpServletResponse response) throws ServletException { response.getHeaders().setHeader(HEADER_TRANSFER_ENCODING, "chunked"); PrintWriter printWriter = response.getWriter(); printWriter.print("This is an example of chunked transfer type. "); printWriter.flush(); printWriter.print("Chunked transfer type can be used when the final length of the data is not known."); } }
/** * {@inheritDoc} */ @Override public void service(final HttpServletRequest request, final HttpServletResponse response) throws ServletException { response.getHeaders().setHeader(HEADER_TRANSFER_ENCODING, "chunked"); PrintWriter printWriter = response.getWriter(); printWriter.println("<table style='height: 40px; width: 100%; border: 0; cellspacing: 0;'>"); printWriter.println("<tr><td style='background-color: green'></td>"); for (int i = 0; i < CHUNKS_COUNT; i++) { try { Thread.sleep(SLEEP_LENGTH_IN_MS); } catch (InterruptedException e) { } printWriter.println("<td style='background-color: black'></td>"); printWriter.flush(); } printWriter.println("<tr></table>"); } }
/** * {@inheritDoc} */ @Override public void serve(final HttpServletResponse response) throws IOException { response.getHeaders().setHeader(Headers.HEADER_ALLOW, allowedMethods); super.serve(response); } }
private void serveFile(final File file, final HttpServletResponse response) throws IOException { response.setContentType(getServletContext().getMimeType(file.getName())); response.setContentLength(file.length()); response.getHeaders().setHeader(Headers.HEADER_CONTENT_DISPOSITION, "attachment; filename=" + StringUtilities.urlEncode(file.getName())); InputStream in = null; try { OutputStream out = response.getOutputStream(); in = new FileInputStream(file); IOUtilities.copyStreams(in, out); out.flush(); } finally { IOUtilities.closeSilently(in); } } }