2011-08-22 46 views
0

我有我的应用程序中的各种模块,如身份验证,门票,报告等。 我想仅将筛选器应用于身份验证模块,而不应用于任何其他模块。 我已经写了一个认证过滤器,我的问题是,我如何才能应用此认证过滤器适用于身份验证模块。如何使过滤器只适用于模块

<filter> 
    <filter-name>AuthenFilter</filter-name> 
    <filter-class>AuthenFilter</filter-class> 
    <init-param> 
     <param-name>test-param</param-name> 
     <param-value>Initialization Paramter</param-value> 
    </init-param> 
</filter> 


<filter-mapping> 
    <filter-name>AuthenFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

应该是url-pattern的标签下什么,以便其只适用于AuthenFilter模块

回答

1

您应该映射你的过滤器,以特定URI,就像这样:

<filter-mapping> 
    <filter-name>AuthenFilter</filter-name> 
    <url-pattern>/modules/login</url-pattern> 
</filter-mapping> 

<filter-mapping> 
    <filter-name>AuthenFilter</filter-name> 
    <url-pattern>/modules/authentication/*</url-pattern> 
</filter-mapping> 
+0

所以ypu的意思是说,所有的登录re相关的jsp的应该保持在登录文件夹下?还有什么我们需要保留在/ modules/login文件夹下? servlet是否也应该保存在serlvets中 – Kiran

+0

您也可以在过滤器中检查请求的URI,对不相关的资源没有任何影响。 – umbr