1

私はTomcat7を使用しています。私のプロジェクトの構造は次のとおりです。

  • as1.jsp

  • as2.jsp

の内容web.xmlは:

  <filter-mapping>  
            <filter-name>filter1</filter-name>  
            <url-pattern>/as1.jsp</url-pattern>  
        </filter-mapping>

filter1HttpServletRequestWrapperで使用されます:

...  
   RequestWrapper requestWrapper = new RequestWrapper(req);  
   requestWrapper.setParameter("params", new String[]{Item.getParams()});   
   chain.doFilter(requestWrapper, response);  
......  

の内容as1.jspは:

hi <br/>  
<jsp:include page="as2.jsp">  
        <jsp:param name="test" value="true" />            
</jsp:include>  

の内容as2.jspは:

as2 runed  
<br/>  
test:<%= request.getParameter("test") %>  

プロジェクトをデプロイすると、次の結果が得られます。

hi  
as2 runed  
test:null  

削除HttpServletRequestWrapperするfilter1と、正しい結果が得られます。

hi  
as2 runed  
test:true  

私を助けてください、どうやっrequest.getParameter("test")HttpServletRequestWrapper入りfilter1ますか?ありがとうございました。

4

1 に答える 1

0

Filter RequestWrapper 方法が無効.getParameter()であり、元のリクエストに委任されていないようです。

于 2012-04-09T08:46:19.103 に答える