页面乱码与Tomcat的配置有关。
<Connector port=”8080″
maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″
enableLookups=”false” redirectPort=”8443″ acceptCount=”100″
connectionTimeout=”20000″ disableUploadTimeout=”true”
URIEncoding=”UTF-8″ useBodyEncodingForURI=”true” />
缓存乱码的解决:修改Cache.jsp中的代码行
String encoding = (String) metaData.get("CharEncodingForConversion");
if (encoding != null) {
try {
content = new String(bean.getContent(details), encoding);
}
catch (UnsupportedEncodingException e) {
// fallback to windows-1252
content = new String(bean.getContent(details), "windows-1252");
}
}
else
content = new String(bean.getContent(details));
}
%>
Content =new String(bean.getContent(details),"GBK");
注意:经过以上处理,部分UTF-8的页面依然会出现乱码。要想彻底解决,需要将Content 内容先做判断,如果Meta标签中有charset="utf-8"标志,则
Content =new String(bean.getContent(details),"utf-8");
经过以上处理,基本上不会有乱码的缓存页面存在。