我使用Java,GWT,Spring,Maven和Tomcat。存储在.properties文件中的字段验证消息中的每一个都保存了UTF-8编码。其中一个文件有用俄语写的字,所以当我将网络界面语言改为俄语时,我会收到错误编码的验证信息,如下所示:
нÐμÐ'олжнобÑÑÑnull
(来自文件的右侧消息如下:недолжнобытьnull)
本地化消息按类提供,扩展了com.google.gwt.i18n.client.Messages
有什么建议吗?
答案 0 :(得分:0)
我用Native2Ascii Maven插件解决了我的问题。通过选择正确的工作目录('target'目录而不是'source')和插件执行的正确阶段来解决这个问题。 '测试'阶段适合我。所以文件正在目标目录中复制,然后以ANSI编码进行转换,但原始文件保持不变。这是我的配置:
<project>
[...]
<build>
[...]
<plugins>
[...]
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>native2ascii-maven-plugin</artifactId>
</executions>
<execution>
<execution>
<id>native2ascii-utf8-validation</id>
<phase>test</phase>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>UTF8</encoding>
<includes>
<include>ValidationMessages*.properties</include>
</includes>
<workDir>${basedir}/target/classes/app/validation</workDir>
</configuration>
</execution>
</execution>
[...]
</executions>
[...]
</plugin>
[...]
</plugins>
[...]
</build>
[...]
</project>