我在JSF應用程序中使用了Servlet篩選器。我有三組的網頁在我的申請,我要檢查驗證這些網頁在我的Servlet過濾器:爲Servlet篩選器提供多個URL模式
我的文件夾
/Admin/ *.xhtml
/Supervisor/*.xhtml
/Employee/*.xhtml
和我寫web.xml
像
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>com.ems.admin.servlet.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Employee/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Admin/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Supervisor/*</url-pattern>
</filter-mapping>
但請求像
http://localhost:8080/EMS2/faces/Html/Admin/Upload.xhtml
不進入F ILTER。
我必須爲這3個文件夾提供安全性。
如何解決這個問題?
至於我能看到多個url-pattern的元素不允許的,不能按預期工作。 – 2013-03-01 12:21:37
@SebastianG:你的具體問題是其他地方引起的。請注意,在Servlet 2.5中引入了對多個''元素的支持(幾乎7年前發佈的Java EE 5的一部分)。也許你正在研究一個史前的野獸,或者你有嚴重的配置問題,導致你的容器運行在一個與Servlet 2.4或更舊版本匹配的備用模式下,從而失去了所有的Servlet 2.5特性。 –
BalusC
2013-03-01 12:37:09
注意,如果多個''匹配相同的資源,例如一個使用'/ *',另一個使用'/ foo.xhtml'作爲'url-pattern',則會執行相同的過濾器兩次。我在JBoss AS 7.1上遇到過這種情況。 –
Paranaix
2013-04-05 12:28:41