我基本上有一個過濾器和它的doFilter方法,我只是打印一條消息到控制檯,我已經應用該過濾器到我的示例Web應用程序的每個頁面。過濾器不工作
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>
com.mypkg.filters.LoginFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>utility.jsp</welcome-file>
和我的過濾代碼 LoginFilter.java
package com.mypkg.filters;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.HttpServletResponse;
//other imports
public class LoginFilter implements Filter {
@Override
public void init(FilterConfig config) throws ServletException {
System.out.println("Filter init ran!");
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {
System.out.println("Filter running!");
}
@Override
public void destroy(FilterConfig config) throws ServletException {
//System.out.println("Filter destoryed!");
}
現在,當我第一次跑這個過濾器,我得到了 「過濾器運行」 的消息,但之後,我包括休眠和其他庫,它停止工作,我刪除他們和相同的結果。過濾器不會運行。檢查URL模式和一切..無能爲力!
任何指針?
所以現在你可以看到init()調用? – 2012-08-03 11:52:02
是的,init正在運行!但不是doFilter。 – magiclko 2012-08-03 11:59:44