GET 매개 변수와 함께 서블릿에서 다른 서블릿으로 응답을 전달하는 필터 클래스를 작성하려면 어떻게해야합니까? 서블릿 체인 필터
이
내가 무엇을 시도했다의 개요입니다import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class TranslateFilter implements Filter {
private FilterConfig config = null;
public void init(FilterConfig config) throws ServletException {
this.config = config;
}
public void destroy() {
config = null;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
chain.doFilter(request, response);
..
RequestDispatcher dispatch = request.getRequestDispatcher("/Translate");
dispatch.forward(request, response);
..
}
}
(나는 this question에서의 대부분을 가지고)이를 web.xml에
<servlet-mapping>
<servlet-name>process</servlet-name>
<url-pattern>/Process
</servlet-mapping>
<servlet-mapping>
<servlet-name>translate</servlet-name>
<url-pattern>/Translate
</servlet-mapping>
<filter-mapping>
<filter-name>processChain</filter-name>
<servlet-name>process</servlet-name>
</filter-mapping>
에 그러나 그렇지 않습니다하지 작업. 두 번째 서블릿으로 전달하지 않습니다. 디버깅 환경 설정이 없으므로 어디에서 실패했는지 알 수 없지만 누군가가 올바른 방향으로 나를 가리킬 수 있습니까?
'chain.doFilter (request, response);'는이 조건입니까? –
@ JigarJoshi가 부울을 반환하는지 묻는 중입니까? –
원래 질문의 일부로 게시하지 않는 이유는 무엇입니까? 필자가 제공 한 대답의 중요한 세부 사항을 생략했습니다. 즉, 원래 응답 객체 대신 버퍼로 작동하는 응답 래퍼를 전달해야합니다. – kschneid