我试图通过在调用servlet之前传递要验证的参数来调用过滤器。但是,请求参数传递为null。在我的servlet中接收相同的参数时。我不知道是什么原因。
我对servlet的调用将使用javascript中的window.open。
这是我的密码
window.open ("http://localhost:8080/SEMS/testAdd?yearFormat=yyyy", "hiddenFrame");
我的过滤器
public class CBFilter implements Filter {
public void init(FilterConfig config) throws ServletException {
}
public CBFilter() {}
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
String yearFormat= request.getParameter("yearFormat");
System.out.println("[Filter] Year Format : "+yearFormat);
chain.doFilter(request, response);
}
}
网站.xml
<filter>
<display-name>CBFilter</display-name>
<filter-name>CBFilter</filter-name>
<filter-class>com.cb.CBFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CBFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
相同的请求参数在servlet中可用。
1条答案
按热度按时间mu0hgdu01#
试着铸造
ServletRequest
至HttpServletRequest
像这样:…看看能不能帮上忙