private void respondWith503(Request baseRequest, HttpServletResponse response, String contentType, String body) throws IOException { addHeaders(response); response.setStatus(org.eclipse.jetty.http.HttpStatus.SERVICE_UNAVAILABLE_503); response.setContentType(contentType); response.getWriter().println(body); baseRequest.setHandled(true); }
if (httpRequest.getHeader("X-HEAD") != null) { httpResponse.setContentLength(1); if (httpRequest.getHeader("X-ISO") != null) { httpResponse.setContentType(TestUtils.TEXT_HTML_CONTENT_TYPE_WITH_ISO_8859_1_CHARSET); } else { httpResponse.setContentType(TestUtils.TEXT_HTML_CONTENT_TYPE_WITH_UTF_8_CHARSET); if (request.getMethod().equalsIgnoreCase("OPTIONS")) { httpResponse.addHeader("Allow", "GET,HEAD,POST,OPTIONS,TRACE"); Enumeration<String> e = httpRequest.getHeaderNames(); String headerName; while (e.hasMoreElements()) { request.setHandled(true); httpResponse.getOutputStream().flush();
private URI getRequestUri(final Request request, final URI baseUri) { try { final String serverAddress = getServerAddress(baseUri); String uri = request.getRequestURI(); final String queryString = request.getQueryString(); if (queryString != null) { uri = uri + "?" + ContainerUtils.encodeUnsafeCharacters(queryString); } return new URI(serverAddress + uri); } catch (URISyntaxException ex) { throw new IllegalArgumentException(ex); } }
@Override public void log(Request request, Response response) { if (logger.isDebugEnabled()) { logger.debug( "%s %s %s %s", request.getRemoteAddr(), request.getMethod(), request.getHttpURI().toString(), request.getProtocol() ); } } }
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException { InputStream is = baseRequest.getInputStream(); int read; do { // drain upload read = is.read(); } while (read >= 0); response.setStatus(200); response.getOutputStream().flush(); response.getOutputStream().close(); baseRequest.setHandled(true); } };
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException if (baseRequest.isHandled()) return; if(!HttpMethods.GET.equals(request.getMethod())) if(!HttpMethods.HEAD.equals(request.getMethod())) LOG.info(resource+" aliased to "+resource.getAlias()); return; baseRequest.setHandled(true); if (!request.getPathInfo().endsWith(URIUtil.SLASH)) response.sendRedirect(response.encodeRedirectURL(URIUtil.addPaths(request.getRequestURI(),URIUtil.SLASH))); return; baseRequest.setHandled(true); return; response.setStatus(HttpStatus.NOT_MODIFIED_304); baseRequest.getResponse().getHttpFields().put(HttpHeaders.ETAG_BUFFER,etag); return; response.setDateHeader(HttpHeaders.LAST_MODIFIED,last_modified); if (_etags) baseRequest.getResponse().getHttpFields().put(HttpHeaders.ETAG_BUFFER,etag);
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException String method = request.getMethod(); if(!method.equals(HttpMethods.GET) && !method.equals(HttpMethods.POST) && !method.equals(HttpMethods.HEAD)) connection.getRequest().setHandled(true); return; if (error_page!=null && request.getServletContext()!=null) String old_error_page=(String)request.getAttribute(ERROR_PAGE); if (old_error_page==null || !old_error_page.equals(error_page)) return; LOG.warn("No error page "+error_page); connection.getRequest().setHandled(true); response.setContentType(MimeTypes.TEXT_HTML_8859_1); if (_cacheControl!=null) response.setHeader(HttpHeaders.CACHE_CONTROL, _cacheControl); ByteArrayISO8859Writer writer= new ByteArrayISO8859Writer(4096); handleErrorPage(request, writer, connection.getResponse().getStatus(), connection.getResponse().getReason()); writer.flush(); response.setContentLength(writer.size()); writer.writeTo(response.getOutputStream()); writer.destroy();
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { baseRequest.setHandled(true); if ("Fetch".equalsIgnoreCase(request.getMethod())) { final int status = Integer.valueOf(target.substring("/status".length() + 1)); response.setStatus(status); response.setContentType("text/plain"); response.setContentLength(target.length()); try (PrintWriter writer = response.getWriter()) { writer.print(target); writer.flush(); } } else { response.setStatus(404); response.setContentType("text/plain"); response.setContentLength(target.length()); } } }
@Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException String method = request.getMethod(); if (!HttpMethod.GET.is(method) && !HttpMethod.POST.is(method) && !HttpMethod.HEAD.is(method)) baseRequest.setHandled(true); return; if (error_page!=null && request.getServletContext()!=null) String old_error_page=(String)request.getAttribute(ERROR_PAGE); if (old_error_page==null || !old_error_page.equals(error_page)) return; LOG.warn("No error page "+error_page); LOG.warn(Log.EXCEPTION, e); return; if (LOG.isDebugEnabled()) LOG.debug("No Error Page mapping for request({} {}) (using default)",request.getMethod(),request.getRequestURI()); baseRequest.setHandled(true); HttpField accept = baseRequest.getHttpFields().getField(HttpHeader.ACCEPT); if (accept == null || accept.contains("text/html") || accept.contains("*/*"))
public void handle(String s, Request request, HttpServletRequest req, final HttpServletResponse resp) throws IOException { resp.setContentType("text/plain;charset=utf-8"); resp.setStatus(200); final AsyncContext asyncContext = request.startAsync(); final PrintWriter writer = resp.getWriter(); executorService.submit(() -> { try { Thread.sleep(100); } catch (InterruptedException e) { logger.error("Failed to sleep for 100 ms.", e); } logger.info("Delivering part1."); writer.write("part1"); writer.flush(); }); executorService.submit(() -> { try { Thread.sleep(200); } catch (InterruptedException e) { logger.error("Failed to sleep for 200 ms.", e); } logger.info("Delivering part2."); writer.write("part2"); writer.flush(); asyncContext.complete(); }); request.setHandled(true); } };
@Override public void handle( String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response ) throws IOException { response.setContentType( "text/plain; charset=utf-8" ); response.setStatus( HttpServletResponse.SC_OK ); PrintWriter out = response.getWriter(); writeBatch( out, firstBatchSize ); out.flush(); latch.start(); innerBarrier.reached(); latch.finish(); writeBatch( out, otherBatchSize ); baseRequest.setHandled(true); }
@Override public void handle(String pathInContext, org.eclipse.jetty.server.Request request, HttpServletRequest httpRequest, HttpServletResponse httpResponse) throws IOException, ServletException { final boolean expectGet = (httpRequest.getHeader("x-expect-get") != null); final boolean expectPost = (httpRequest.getHeader("x-expect-post") != null); if (expectGet) { final String method = request.getMethod(); if (!"GET".equals(method)) { httpResponse.sendError(500, "Incorrect method. Expected GET, received " + method); return; httpResponse.setStatus(200); httpResponse.getOutputStream().write("OK".getBytes()); httpResponse.getOutputStream().flush(); return; } else if (expectPost) { final String method = request.getMethod(); if (!"POST".equals(method)) { httpResponse.sendError(500, "Incorrect method. Expected POST, received " + method); String header = httpRequest.getHeader("x-redirect"); if (header != null) {
@Override public void handle( Request request, HttpServletResponse response ) { method.set(request.getMethod()); outputParams.put("name", request.getParameter("name")); outputParams.put("number", request.getParameter("number")); response.setStatus(HTTP_OK); } };
public void handle(String s, Request r, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if ("GET".equalsIgnoreCase(request.getMethod())) { String qs = request.getQueryString(); if (isNonEmpty(qs)) { for (String qnv : qs.split("&")) { String nv[] = qnv.split("="); response.addHeader(nv[0], nv[1]); } response.setStatus(HttpServletResponse.SC_OK); } else { response.sendError(HttpServletResponse.SC_NOT_ACCEPTABLE); } } else { // this handler is to handle POST request response.sendError(HttpServletResponse.SC_FORBIDDEN); } r.setHandled(true); } }
public void handle(String target, Request baseRequest, HttpServletRequest req, HttpServletResponse resp) throws IOException { ServletInputStream in = req.getInputStream(); byte[] b = new byte[8192]; int count; int total = 0; while ((count = in.read(b)) != -1) { b = new byte[8192]; total += count; } resp.setStatus(200); resp.addHeader("X-TRANSFERRED", String.valueOf(total)); resp.getOutputStream().flush(); resp.getOutputStream().close(); baseRequest.setHandled(true); } };
public void handle(String s, org.eclipse.jetty.server.Request r, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if ("HEAD".equalsIgnoreCase(request.getMethod())) { response.setStatus(HttpServletResponse.SC_FOUND); // 302 response.setHeader("Location", request.getPathInfo() + "_moved"); } else if ("GET".equalsIgnoreCase(request.getMethod())) { response.setStatus(HttpServletResponse.SC_OK); } else { response.setStatus(HttpServletResponse.SC_FORBIDDEN); } r.setHandled(true); } }
public void handle(String s, org.eclipse.jetty.server.Request r, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { if ("GET".equalsIgnoreCase(request.getMethod())) { response.addHeader("target", r.getHttpURI().getPath()); response.setStatus(HttpServletResponse.SC_OK); } else { // this handler is to handle POST request response.sendError(HttpServletResponse.SC_FORBIDDEN); } r.setHandled(true); } }
@Override public void handle(String target, Request request, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException { if ("/ping".equals(target)) { request.setHandled(true); httpServletResponse.getWriter().print("ping"); } else if ("/restart".equals(target)) { writeTimeToFile("restartAskedAt"); request.setHandled(true); processCommands.askForRestart(); httpServletResponse.getWriter().print("ok"); } else if ("/kill".equals(target)) { writeTimeToFile("killedAt"); System.exit(0); } } });