@Override public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String method = request.getMethod().toUpperCase(); if (!"GET".equals(method)) { // force reading properties because jersey is consuming one // character // from the input stream - see WebComponent.isEntityPresent. request.getParameterMap(); } super.service(request, response); }
@Override protected void containerService(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (isDirty) { reloadContainer(); } String method = request.getMethod().toUpperCase(); if (!"GET".equals(method)) { // force reading properties because jersey is consuming one // character // from the input stream - see WebComponent.isEntityPresent. request.getParameterMap(); } container.service(request, response); } }
@Override @Loggable(value = Loggable.DEBUG, ignore = WebApplicationException.class) public void service(final HttpServletRequest request, final HttpServletResponse response) throws ServletException, IOException { final long start = System.currentTimeMillis(); super.service(request, response); final long duration = System.currentTimeMillis() - start; if (duration > TimeUnit.SECONDS.toMillis(1L)) { Logger.warn( this, "#service(%s %s): %[ms]s is too slow (IP=%s)", request.getMethod(), request.getRequestURI(), duration, request.getRemoteAddr() ); } response.addHeader("X-Rexsl-Millis", Long.toString(duration)); response.addHeader( "X-Rexsl-Version", String.format( "%s/r%s", Manifests.read("ReXSL-Version"), Manifests.read("ReXSL-Build") ) ); }
protected void containerService(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (isDirty) { reloadContainer(); } String method = request.getMethod().toUpperCase(); if (!"GET".equals(method)) { // force reading properties because jersey is consuming one // character // from the input stream - see WebComponent.isEntityPresent. request.getParameterMap(); } ResourceContext ctx = new ResourceContext(app); ctx.setRequest(request); ResourceContext.setContext(ctx); request.setAttribute(ResourceContext.class.getName(), ctx); try { container.service(request, response); } finally { ResourceContext.destroyContext(); request.removeAttribute(ResourceContext.class.getName()); } }
build(); final int status = service(baseUri, requestUri, request, response);
build(); final int status = service(baseUri, requestUri, request, response);
build(); final int status = service(baseUri, requestUri, request, response);
build(); service(baseUri, requestUri, request, response);
build(); service(baseUri, requestUri, request, response);
build(); service(baseUri, requestUri, request, response);