升级到grails 1.3.2时遇到<g:layoutTitle default="测试 - Grails" /> 显示是乱码
xiaobo_
2010-07-12
今天升级项目到grails 1.3.2时,遇到一个奇怪的问题
页面代码:
<head> <title><g:layoutTitle default="测试 - Grails" /></title> <link rel="stylesheet" href="${resource(dir:'css',file:'main.css')}" /> <link rel="shortcut icon" href="${resource(dir:'images',file:'favicon.ico')}" type="image/x-icon" /> <g:layoutHead /> <g:javascript library="application" /> </head>
|
|
xiaobo_
2010-08-04
此问题已解决
|
|
caihexi
2010-09-01
请问是如何解决的?我也是因为中文乱码的原因,所以一直都没从1.2.0升级到1.3.x。
|
|
xiaobo_
2010-09-10
我当时用的版本提:grails1.3.2
原因应该算是grails1.3.2的一个bug,框架中的编码是写死的,全部是UTF-8,而我们用tomcat等运行项目时,读取的确是操作系统的编码 GBK,这就导致了乱码。 reload 问题: 应该跟服务器上tomcat 默认编码有关。 修改 startup.bat 在启动 tomcat 时加上 "-Dfile.encoding=UTF-8" (可以参考 startup.bat中其它的 -Dxxx.xxx=xxx ,用相同方式加入) ,应该就可以解决。如果服务器是linux 就没这个问题。 如果是println打印中文乱码的话,那么就在初始化文件中增加 System.out = new PrintStream(System.out, true, "GBK") 就应该了,你测试一下吧, 这是我的一点经验,不知道现在grails版本修改了这个bug 没有。 |
|
caihexi
2010-09-25
谢谢,我们的TOMCAT是一位高手同事管理的,自己做了一些修改的,上面原先跑的一些程序需要使用GBK。GRAILS中文件的编码都是使用了UTF-8,也不想改了。
目前准备使用GRAILS的MESSAGE标签对程序代码进行重新制作。虽然很麻烦很慢,但可以无视以后GRAILS任何版本的这个BUG了。很可能GRAILS不认为这是个BUG。 目前用用1.2.0似乎也没什么大问题。等慢慢改好之后再升级了。 |
相关讨论
相关资源推荐
- Raycaster:用C ++编写的简单的光线投射3D引擎
- Unity3d shader之次表面散射
- Shader 特效 —— Film Burn (炫光光晕)效果【GLSL】
- Groovy笔记-Grails g标签之<g:message>,<g:if>,<g:else>,<g:select>实例一枚
- grails-asynchronous-mail:Grails异步邮件插件
- wsdl2java源码-grails-cxf-grails-3:grails-cxf-grails-3
- grails layout
- grails-perf-testapps:用于性能测试的简单 Grails 应用程序集合
- 20130116-使用Grails Shiro Plugin实现身份验证02
- harmonyos2-grails-hibernate-search-plugin:将HibernateSearch功能集成到Grails