2013-05-29 60 views
3

到目前为止,我们的Web应用程序仅支持英文。现在我们也必须为意大利人提供支持。有一些功能的GWT模块。为了支持意大利语我已经在文件中添加以下行“APP_Module.gwt.xml在GWT中支持国际邮件

<extend-property name="locale" values="it"/> 

我也放在“XXX_it.properties”文件的源代码中的属性文件连接下保持。

通过以下线设置在JSP语言环境:现在

<meta name="gwt:property" content="locale=${locale}"> 

,问题是如何编译的代码。我正在调试应用程序,但它没有触及WEB-INF/src下提供的GWT的客户端代码。

我对GWT很新。请建议我如何编译代码或者不需要编译。它会自动接受在“APP_Module.gwt.xml”中完成的更改,还有其他一些问题。我怎样才能看到GWT的日志?

回答

2

要添加的语言环境GWT应用程序的支持,你需要做你的xxx.gwt.xml如下:

<module>下添加这包括支持:

<inherits name="com.google.gwt.i18n.I18N" /> 

和这它配置:

<extend-property name="locale" values="en,it"/> 
<set-property-fallback name="locale" value="en"/> 

添加所有的属性文件下的一些包是这样的:

src/main/resources/foo/bar/client/i18n/MyMessages.properties 
src/main/resources/foo/bar/client/i18n/MyMessages_it.properties 

然后你需要告诉GWT将它们编译成类。这是一个来自pom.xml文件的例子(如果你不使用maven,你将不得不使用不同的方式,但你仍然需要配置它)。

 <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>gwt-maven-plugin</artifactId> 
      <version>1.3.1.google</version> 
      <executions> 
       <execution> 
        <goals> 
         <goal>i18n</goal> 
         <goal>generateAsync</goal> 
         <goal>compile</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <i18nMessagesBundles> 
        <resourceBundle>foo.bar.client.i18n.MyMessages</resourceBundle> 
       </i18nMessagesBundles> 
      </configuration> 
     </plugin> 

然后您需要重新编译代码。在maven mvn compile。就这样,您将在生成的源文件夹中准备好您的消息。

+0

大部分信息可以在这里找到:https://developers.google.com/web-toolkit/doc/latest/DevGuideI18n – sm4

+0

谢谢@ sm4它的工作正常。但是现在发生的是像ù这样的字符,ì显示不正确。有没有我们设置编码的地方? – Infotechie

+0

这很可能是因为您直接将UTF-8(或任何其他编码)放入.properties中。这些文件必须采用ISO-8859-1编码。尝试使用这个问题的插件:http://stackoverflow.com/q/863838/1667977正确的方法是让属性中的所有特殊字符都转义出来,这个插件会为你做。 – sm4

0

为了查看gwt的日志,你可以使用gradlew gwt,你也可以使用它来编译代码。