日期:2014-05-17 浏览次数:20641 次
今天遇到一个jsp页面中包含一个.shtml静态页面时,中文出现乱码,在jsp页面设置编码为utf-8也没有用,网上一搜才知道
?
运行.shtml的页面需要开启tomcat的SSI功能,具体修改如下:
?
主要修改tomcat的web.xml文件
?
<servlet> <servlet-name>ssi</servlet-name> <servlet-class> org.apache.catalina.ssi.SSIServlet </servlet-class> <init-param> <param-name>buffered</param-name> <param-value>1</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>expires</param-name> <param-value>666</param-value> </init-param> <init-param> <param-name>isVirtualWebappRelative</param-name> <param-value>0</param-value> </init-param> <load-on-startup>4</load-on-startup> </servlet>
?
<load-on-startup>4</load-on-startup>
在这一行的上面加上如下代码:
<init-param> <param-name>inputEncoding</param-name> <param-value>utf-8</param-value> </init-param> <init-param> <param-name>outputEncoding</param-name> <param-value>utf-8</param-value> </init-param>
?另外还需要去掉servlet SSI映射的注释
?
<servlet-mapping> <servlet-name>ssi</servlet-name> <url-pattern>*.shtml</url-pattern> </servlet-mapping>
?
那jsp页面包含.shtml中文乱码问题就解决了
?