appfuse 乱码问题

appfuse 乱码问题

     捣鼓了一个晚上,又是ant new又是ant setup,好不容易搭建起来了appfuse, 乐呵呵的打开appfuse deploy到tomcat的测试项目,突然发现有些乱码,又是修改tomcat的URLEncording="UTF8",又是把 ApplicationResources_zh_cn.properties 拷贝来拷贝去,google,baidu齐上阵,searching了下,看来这个问题还是非常普遍,但是中文乱码的原因有很多种,特罗列如下,看了appfuse对中文的支持有点问题.

     1.build.xml里面display资源没有国际化处理,也就是没有进行编码,在build.xml进行修改使之进行国际化.
     修改方案:
        <native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
            includes=" ApplicationResources_zh*.properties" encoding="UTF-8"/>
        <generate-database-properties/>
     改为:
        <native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
            includes=" *_zh*.properties" encoding="UTF-8"/>
        <generate-database-properties/>

    2.Tomcat 的URLEnCording要设置为UTF8,应为appfuse是以utf-8打包的

    3.就是要对原始 ApplicationResources_zh_cn.properties进行ascii编码转换然后丢到classes里面,不要用他ant自动转换过的 .奇怪的是appfuse的ant的时候是对文件进行转换了,但是还是有部分中文存在乱码,奇怪ing......不知道是appfuse的疏忽还是什么.继续研究中...我是 appfuse-1.9-src的包.但是我手工转了下ant之前的源码,发现乱码问题消失.就这个原因搞了我一个晚上....郁闷
    修改方案:
   
native2ascii -encoding UTF-8   ApplicationResources_zh_CN.properties te   (te为转后文件名)
   
native2ascii  te  ApplicationResources_zh_CN.properties1 -reverse(转回来 呵呵)

    补充一点,在appfuse的appfuse-1.9-src这个包里的 ApplicationResource...直接打开是中文是乱码,可以采用上面的两条命令把它还原出来.便于我们的开发然后修改ant任务即可.而对于appfuse-jsf-1.9-src来说,它的applicationResource...打开后就是我们可以看懂的中文:).
 
总之,new之后的项目的ApplicationResources...要用原来的文件替换掉.





你可能感兴趣的:(appfuse 乱码问题)