@Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletResponse response = (HttpServletResponse) servletResponse; final HttpServletRequest request = (HttpServletRequest) servletRequest; try { if (!(response instanceof ErrorHandlerFilterRequestWrapper)) { response = new ErrorHandlerFilterRequestWrapper(response); } filterChain.doFilter(servletRequest, response); } catch (final Exception e) { final HttpErrorController httpErrorController = PragmatachControllerFactory.getHttpErrorController(new Request(request, response, Route.HttpMethod.get, null), e); try { httpErrorController.render().render(response); } catch (final Exception e2) { throw new ServletException(e2); } } }
@Override protected void doGet(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws ServletException, IOException { try { final Router requestRouter = new Router(); final Request request = new Request(httpServletRequest, httpServletResponse, Route.HttpMethod.get, getServletConfig()); final Response response = requestRouter.route(request); addCustomResponseHeaders(request, httpServletResponse); processResponse(response, httpServletResponse); } catch (final Exception e) { throw new ServletException("Exception in doGet", e); } }
@Override protected void doPost(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws ServletException, IOException { try { final Router requestRouter = new Router(); final Request request = new Request(httpServletRequest, httpServletResponse, Route.HttpMethod.post, getServletConfig()); final Response response = requestRouter.route(request); addCustomResponseHeaders(request, httpServletResponse); processResponse(response, httpServletResponse); } catch (final Exception e) { throw new ServletException("Exception in doGet", e); } }