자바 서블릿 API는 버전 3.0까지 HttpServletResponse에 대한 getStatus 메소드를 제공하지 않습니다. 나는 HttpServletResponse를 감싸기 위해 getStatus를 가진 HttpServletResponseWrapper를 생성하고 그것이 설정 될 때 상태를 잡는다.저지 2 상태 코드가 HttpServletResponseWrapper에 표시되지 않습니다.
내 Jersey 2 서블릿에서는 작동하지 않습니다.
내 HttpServletResponseWrapper는 내 필터의 doFilter (request, wrapperResponse)를 통해 전달됩니다. Jersey RESTful Servlet이 엔드 포인트 일 때 필터가 호출되지만 getStatus 메소드는 호출되지 않습니다.
내가 놓친 구성이 있습니까?
응답 작성자를 사용하여 결과를 반환하고 상태를 설정합니다.
Response.status (404) .build(); Response.status (200) .type (mediaType) .entity (theEntity) .build();
안부 요헨은
'HttpServletResponseWrapper '가 필요한 이유는 무엇입니까? –
gzip 필터의 상태 코드를 얻으려면 404 또는 204 응답에 gzip 헤더가 없습니다. – ScubaInstructor