再开一贴:乱码问题
上一问题:
http://community.csdn.net/Expert/topic/5501/5501106.xml?temp=1.087588E-02
我把所有的jap文件的开头增加了
<%@ page contentType= "text/html;charset= UTF-8 " %>
增加了一个过滤器:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
public class EncodingFilter implements Filter{
private String encoding= "UTF-8 ";
public void init(FilterConfig config)throws
ServletException {
String s = config.getInitParameter( "Encoding ");
if(s!=null)
{
this.encoding=s;
}
}//init
public void doFilter(ServletRequest req,ServletResponse resp,FilterChain chain)throws ServletException,
IOException {
req.setCharacterEncoding(encoding);
resp.setCharacterEncoding(encoding);
chain.doFilter(req,resp);
}
public void destroy()
{
this.encoding = "UTF-8 ";
}
}
在web.xml中作了配置:
<filter>
<filter-name> EncodingFilter </filter-name>
<filter-class> addressbook.filter.EncodingFilter </filter-class>
<init-param>
<param-name> Encoding </param-name>
<param-value> UTF-8 </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name> EncodingFilter </filter-name>
<url-pattern> *.jsp </url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name> EncodingFilter </filter-name>
<url-pattern> *.do </url-pattern>
</filter-mapping>
我用的是struts,IDE为eclipse,数据库为mysql,eclipse中我把编码改为UTF-8,mysql我直接修改的my.ini文件,默认的是latin1,改为UTF-8.
现在问题是index.jsp没有问题了。我一转到logon.jsp报错,logon.jsp中包含的其他的jsp页面我统统都加了 <%@ page contentType= "text/html;charset= UTF-8 " %> ,logon.jsp对应有一个form,还有一个action,现在是打不开logon.jsp,我在index.jsp中用的link转的。
[jsp] - servlet jsp 的Servlet.service()出现错误 <
org.apache.jasper.JasperException: 没有支持的编码: UTF-8
请问是什莫地方我忽落了吗。
解决后一起结帖
------解决方案--------------------顶
------解决方案--------------------把下面这段去掉试试:
<filter-mapping>
<filter-name> EncodingFilter </filter-name>
<url-pattern> *.do </url-pattern>
</filter-mapping>
------解决方案--------------------关注
------解决方案--------------------有可能是你的service 方法中有问题,或是你看看servlet.jsp是不是哪个地方传得不对
或是eclipse 软件出现了问题,都有可能!
------解决方案--------------------去掉这句
resp.setCharacterEncoding(encoding);
------解决方案--------------------支持一下, 统一使用UTF-8编码确实是不错的选择...
------解决方案--------------------gbk 或