doFilter HttpServletRequest返回null

时间:2014-09-20 05:13:29

标签: java servlets httprequest httpresponse servlet-filters

这个在dofilter方法中,ServletRequest总是返回null值我不知道是什么原因?

Filter.java

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    logger.debug("Entering doFilter");         
    HttpServletRequest httpReq = (HttpServletRequest) request;
    HttpServletResponse httpResp = (HttpServletResponse) response;
}

的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <servlet>
        <servlet-name>SecurityMgr</servlet-name>
        <servlet-class>com.SecurityMgr</servlet-class>
        <async-supported>true</async-supported>
    </servlet>

    <servlet-mapping>
        <servlet-name>SecurityMgr</servlet-name>
        <url-pattern>/authentication</url-pattern>
    </servlet-mapping>

    <filter>
        <filter-name>Filter</filter-name>
        <filter-class>com.Filter</filter-class>
        <async-supported>true</async-supported>
    </filter>
    <filter-mapping>
        <filter-name>Filter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <listener>
        <listener-class>com.Initialization</listener-class>
    </listener>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>

    <session-config>
        <session-timeout>0</session-timeout>
    </session-config>

</web-app>

1 个答案:

答案 0 :(得分:-1)

您的方法应如下所示:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    logger.debug("Entering doFilter");         
    HttpServletRequest httpReq = (HttpServletRequest) request;
    HttpServletResponse httpResp = (HttpServletResponse) response;
    chain.doFilter(request, response);
}