2010-07-12 4 views
1

getParameter() 방법을 ServletRequestWrapper으로 설정하고 getParameter() 방법을 SecurityRequestWrapper으로 설정하고 싶습니다. 예를 들어ServletRequestWrapper에서 요청 객체를 어떻게 오버라이드합니까?

, 나는 사람의 이름을 간단한 JSP 양식을 사용하고있는 경우는,

String name = request.getParameter("firstName"); 

나는 위의 getParameter() 방법은 SecurityRequestWrapper 클래스에서가되고 싶어요. getParameter 메서드는 기본적으로 모든 JSP 폼에서 호출되므로 요청 객체가 어떻게 처리되는지 이해할 수 없습니다.

답변

-2

내가 틀렸을 수도 있지만 이것이 가능하지 않다고 생각합니다. 요청 및 응답 객체는 컨테이너에 의해 생성되고 서블릿의 process 메소드로 전달되기 때문입니다. 출력을 플러시 (flush)하기를 원하기 때문에 이러한 객체가 컨테이너에 의해 생성되는 바로 그 이유입니다. 그러나 우리 자신의 요청/응답 객체를 전달하는 것이 가능한지 알고 싶습니다.

+0

틀렸어. 'HttpServletRequestWrapper'와'HttpServletReponseWrapper'를보세요. – BalusC

3

SecurityRequestWrapper은 이미 HttpServletRequestWrapper을 구현하고있는 것으로 알고 있습니다. 그렇다면 Filter을 (*.jsp)에 매핑하고 (Filter을 호출하려는 경우) doFilter() 메서드에서 기본적으로 다음을 수행합니다.

chain.doFilter(new SecurityRequestWrapper((HttpServletRequest) request, response)); 
+0

이것은 대단합니다. 나는이 필터 접근 방식을 생각하지 않기에 어리 석습니다. – Shamik

+0

@Shamik : 여기에 게시 한 관련 답변에는 몇 가지 사용 예제가 있습니다. ['HttpServletRequestWrapper'] (http://stackoverflow.com/search?q=httpservletrequestwrapper+user%3A157882) 및 ['HttpServletResponseWrapper'] (http://stackoverflow.com/search?q=httpservletresponsewrapper+user%3A157882). – BalusC

관련 문제