servlet 过滤器 错误代码http status 404

servlet 过滤器 错误代码http status 404

问题描述:

我做了一个解决中文乱码的过滤器代码是这样的:
package com.app.encoding;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

class EncodingFilter implements javax.servlet.Filter {

private String encoding;

public void destroy() {
    // TODO Auto-generated method stub

}

public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    // TODO Auto-generated method stub
    request.setCharacterEncoding("GBK");
    chain.doFilter(request, response);
}

public void init(FilterConfig filterConfig) throws ServletException {
    // TODO Auto-generated method stub
    encoding = filterConfig.getInitParameter("encoding");
}

}

web.xml的配置

解决中文乱码
EncodingFilter
com.app.encoding.EncodingFilter

encoding
GBK



EncodingFilter
/*

没有写过滤器之前执行tomcat是能出现页面的,就是有中文乱码,但是加了过滤器之后就出现了
HTTP Status 404
The requested resource is not available.
弄了快一个上午了,还是搞不明白是哪里错误了,网上说路径错误,但是我检查了都没问题的,谢谢啦

这怎么能怪EncodingFilter呢,把你的web贴出来看看,是不是有其它filter影响

没配置过滤器吧

看错 了,我没注意到web :oops:

request还是response? 8)

中规中矩,没见有什么地方错误,看你项目挺小,打包发上来,看看。

页面访问错误吧 看看 url 地址有没写错 如果是过滤器问题 就500