簡體   English   中英

支持GWT中的i18n

[英]Supporting i18n in GWT

到目前為止,我們的Web應用程序僅支持英語。 現在我們也必須為意大利人提供支持。 有一些功能的GWT模塊。 為了支持意大利語,我在文件“ APP_Module.gwt.xml ”中添加了以下行

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

我還在源代碼下放置了“XXX_it.properties”文件,其中保存了en的屬性文件。

通過以下行在jsp中設置區域設置:

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

現在,問題是如何編譯代碼。 我正在調試應用程序,但它沒有達到在WEB-INF / src下呈現的GWT的客戶端代碼。

我對GWT很新。 請建議如何編譯代碼或不需要編譯。 它將自動進行“APP_Module.gwt.xml”中所做的更改,還有一些其他問題。 我怎樣才能看到GWT的日志?

要將語言環境的支持添加到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 這就是全部,您將在生成的源文件夾中准備好您的消息。

要查看gwt的日志,您可以使用gradlew gwt,也可以使用它來編譯代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM