Javaソースコードの生成
リスト3のプロパティファイルを元に、リスト1で生成されたGWTExample1Constants-i18nコマンドを実行すると、リスト4が生成される。これはConstantsを継承し、プロパティ名称をメソッドにしたインタフェースだ。
リスト4 生成されたソースコード
package gwt.example1.client;
/**
* (省略)
*/
public interface GWTExample1Constants extends com.google.gwt.i18n.client.Constants {
/**
* Translated "クリックして!".
*
* @return translated "クリックして!"
* @gwt.key clickme
*/
String clickme();
/**
* Translated "クリックした!".
*
* @return translated "クリックした!"
* @gwt.key clicked
*/
String clicked();
}
これをアプリケーションに組み込んで日本語のメッセージを取得できるようにするには、リスト5のようにfinalでGWT.create()によりインスタンスを生成し、必要に応じてメソッドを実行する。
リスト5 アプリケーションに組み込まれたインタフェース
import com.google.gwt.core.client.GWT;
// ..... (省略) .....
final GWTExample1Constants ex1Const = (GWTExample1Constants)GWT.create( GWTExample1Constants.class );
final Button button = new Button( ex1Const.clickme() ); ← 「クリックして!」
final Label label = new Label();
// ..... (省略) .....
label.setText( ex1Const.clicked() ); ← 「クリックした!」
最後に、アプリケーションが国際化対応したことを示す設定を、リスト6でコメントをつけた行のように設定ファイルに追加しておく。これがないとアプリケーションを実行できないので注意しよう。
リスト6 設定ファイル(GWTExample1.gwt.xml)に追加