sitemesh的html中文乱码

今天用到了sitemesh,恩,装饰模式还是很棒的   上手也很快  感觉上比tiltes要好用

但是遇到一个小问题:html中文乱码

 

当然除了对JSP的乱码解决方案外

 

网上就有如是说

 

///

静态html在sitemesh中乱码的解决方法。
 前提条件:sitemesh的decorator的编码全部用UTF-8,使用SetCharacterEncodingFilter把request的encoding也
 设置成UTF-8

 问题1、decorator中的内容出现乱码。
 原因:
 解决方法:改进SetCharacterEncodingFilter,使它对response也设置encoding为UTF-8
 
 问题2、被修饰的html内容出现乱码。
 原因:sitemesh根据html的contenttype(例如:text/html;charset=utf-8)来决定html文件的encoding,
 如果contenttype是像(text/html)这样的形式,sitemesh就无法知道html的encoding,这时sitemesh就
 使用DEFAULT_ENCODING即System.getProperty("file.encoding"),在jetty中正是后面那样,估计tomcat也是这样。
 
 解决方法:使html的encoding和System.getProperty("file.encoding")相同。
   1、启动jetty时将java系统变量file.encoding设置为UTF-8,html的编码也用UTF-8.(推荐)

//

 

唉  我可以不愿来改服务器的编码,所以简单解决方案 html后缀名直接改jsp

OK了

 

希望能有智者指示下更好方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值