gwt.xml

gwt.xml

gwt.xmlGWTアプリケーションにおいて非常に重要な設定ファィルである。
EclipseからGWTのプロジェクトを作成すると プロジェクト名.gwt.xmlという名前のXMLファイルが生成される。

<?xml version="1.0" encoding="UTF-8"?>
<module rename-to='testecho'>
  <inherits name='com.google.gwt.user.User'/>
  <inherits name='com.google.gwt.user.theme.standard.Standard'/>
  <entry-point class='net.kazzz.client.TestEcho'/>
  <source path='client'/>
  <source path='shared'/>
</module>

GWTアプリケーションは1つ以上のモジュールにより構成されるが、gwt.xmlはそのモジュールを定義する。
なお、gwt.xmlの各XML要素の意味だが、

module

モジュール定義のルート要素。GWT内部で認識されるモジュールの名前はデフォルトではエントリポイントと同じ名前になるが完全修飾名は長くなりがちなので、rename-to属性でモジュール名に別名を付けることができる。(GWT.getModuleName()で取得される名前もこの名前となる)

inherits

直訳すると継承だが、モジュール上での意味合いはどちらかというと「import」や「include」に近い。GWTアプリケーションで必要な他のモジュールを記述する。その実体もモジュール(xxx.gwt.xml)であり、他のモジュールを包含している。

主な標準モジュール
モジュール 論理名 モジュール定義名 内容
User com.google.gwt.user.User User.gwt.xml GWTコア
HTTP com.google.gwt.http.HTTP HTTP.gwt.xml HTTPローレベル通信ライブラリィ
JSON com.google.gwt.json.JSON JSON.gwt.xml JSONの生成とパース
JUnit com.google.gwt.junit.JUnit JUnit.gwt.xml JUnitテスト統合
XML com.google.gwt.xml.XML XML.gwt.xml XML文書生成とパース
テーマ用モジュール(ユーザインタフェースのテーマを設定する)
モジュール 論理名 モジュール定義名 内容
Chrome com.google.gwt.user.theme.chrome.Chrome Chrome.gwt.xml Chromeテーマのためのスタイルシートとイメージ
Dark com.google.gwt.user.theme.dark.Dark Dark.gwt.xml Dark テーマのためのスタイルシートとイメージ
Standard com.google.gwt.user.theme.standard.Standard Standard.gwt.xml Standard テーマのためのスタイルシートとイメージ

entry-point

Webブラウザからユーザのリクエストを最初に受け付けるクラスを記述する。必ず実装するEntryPointインタフェース唯一のonModuleLoadメソッドによりGWTウィジェットクラスの初期化つまりGWTアプリケーションにおける画面を構成する処理を記述する。

source

GWTアプリケーションのソースコードパスを指定する。この要素で指定したパスに置かれたソースコードの一部はjavascriptに変換される。

参考:Organizing Projects - Google Web Toolkit - Google Code