工作环境:Windows Server2003SE,Eclipse3.1.1,MySQL5.0,Tomcat5.5.9,JDK1.5.0_07,Ant1.6.5
在中文环境下使用AppFuse,会遇到DisplayTag的题头信息乱码现象(最新发布的AppFuse1.9.4也有这个问题),如下图:
解决方法:
1.查看web/web-inf/classes目录下是否存在displaytag_zh_CN.properties配置文件,1.9.1前的版本没有中文版本的配置文件.如果Eclipse中打开看到的是乱码,选择File->Properties 选择UTF-8类型查看,下同。
2.打开项目build.xml文件,找到target copy-resources所在位置(通过字符串copy-resources查找快)
将原来的代码:
<target name="copy-resources" depends="prepare"
description="Copy .properties and .xml files from source directory">
<copy todir="${build.dir}/web/classes" includeEmptyDirs="no">
<fileset dir="web/WEB-INF/classes">
<exclude name="ApplicationResources_zh*.properties"/>
<include name="*.properties"/>
<include name="*.xml"/>
<include name="*.vm"/>
</fileset>
<filterset refid="variables.to.replace"/>
</copy>
<native2ascii src="web/WEB-INF/classes" _fcksavedurl=""web/WEB-INF/classes"" dest="${build.dir}/web/classes"
includes="ApplicationResources_zh*.properties" encoding="UTF-8"/>
<generate-database-properties/>
<copy todir="${build.dir}/web/classes" file="database.properties"/>
</target>
修改为(添加红色的):
<target name="copy-resources" depends="prepare"
description="Copy .properties and .xml files from source directory">
<copy todir="${build.dir}/web/classes" includeEmptyDirs="no">
<fileset dir="web/WEB-INF/classes">
<exclude name="ApplicationResources_zh*.properties"/>
<exclude name="displaytag_zh*.properties"/>
<include name="*.properties"/>
<include name="*.xml"/>
<include name="*.vm"/>
</fileset>
<filterset refid="variables.to.replace"/>
</copy>
<native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
includes="ApplicationResources_zh*.properties" encoding="UTF-8"/>
<native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
includes="displaytag_zh*.properties" encoding="UTF-8"/>
<generate-database-properties/>
<copy todir="${build.dir}/web/classes" file="database.properties"/>
</target>
通过native2ascii将displaytag_zh_CN.properties配置文件同ApplicationResources_zh*.properties一样转换下,就OK了。奇怪 Matt Raible在最近AppFuse1.9.4中都没改过来:)
在中文环境下使用AppFuse,会遇到DisplayTag的题头信息乱码现象(最新发布的AppFuse1.9.4也有这个问题),如下图:
解决方法:
1.查看web/web-inf/classes目录下是否存在displaytag_zh_CN.properties配置文件,1.9.1前的版本没有中文版本的配置文件.如果Eclipse中打开看到的是乱码,选择File->Properties 选择UTF-8类型查看,下同。
2.打开项目build.xml文件,找到target copy-resources所在位置(通过字符串copy-resources查找快)
将原来的代码:
<target name="copy-resources" depends="prepare"
description="Copy .properties and .xml files from source directory">
<copy todir="${build.dir}/web/classes" includeEmptyDirs="no">
<fileset dir="web/WEB-INF/classes">
<exclude name="ApplicationResources_zh*.properties"/>
<include name="*.properties"/>
<include name="*.xml"/>
<include name="*.vm"/>
</fileset>
<filterset refid="variables.to.replace"/>
</copy>
<native2ascii src="web/WEB-INF/classes" _fcksavedurl=""web/WEB-INF/classes"" dest="${build.dir}/web/classes"
includes="ApplicationResources_zh*.properties" encoding="UTF-8"/>
<generate-database-properties/>
<copy todir="${build.dir}/web/classes" file="database.properties"/>
</target>
修改为(添加红色的):
<target name="copy-resources" depends="prepare"
description="Copy .properties and .xml files from source directory">
<copy todir="${build.dir}/web/classes" includeEmptyDirs="no">
<fileset dir="web/WEB-INF/classes">
<exclude name="ApplicationResources_zh*.properties"/>
<exclude name="displaytag_zh*.properties"/>
<include name="*.properties"/>
<include name="*.xml"/>
<include name="*.vm"/>
</fileset>
<filterset refid="variables.to.replace"/>
</copy>
<native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
includes="ApplicationResources_zh*.properties" encoding="UTF-8"/>
<native2ascii src="web/WEB-INF/classes" dest="${build.dir}/web/classes"
includes="displaytag_zh*.properties" encoding="UTF-8"/>
<generate-database-properties/>
<copy todir="${build.dir}/web/classes" file="database.properties"/>
</target>
通过native2ascii将displaytag_zh_CN.properties配置文件同ApplicationResources_zh*.properties一样转换下,就OK了。奇怪 Matt Raible在最近AppFuse1.9.4中都没改过来:)