Google Web Toolkitの基本情報

(a) Developer’s Guide

(b) GWT API Reference

(c) クライアントサイドで利用可能なクラス

 

■参考資料

Google Web Toolkitのプロジェクト作成方法

  1. eclipseプロジェクトの作成
  2. C:Program FilesGoogle Web Toolkit>projectCreator.cmd -eclipse GanttChart -out C:UsershogeDocumentsworkspaceGanttChart

  3. アプリケーションの作成
  4. C:Program FilesGoogle Web Toolkit>applicationCreator.cmd -eclipse GanttChart -out C:UsershogeDocumentsworkspaceGanttChart com.abeerforyou.ganttchart.client.MainApplication

  5. eclipseに既存プロジェクトとしてインポート
  6. プロジェクトの文字コードをUTF-8に変更
  7. RemoteServiceを継承したサーバー側のインターフェースIS(ex. MainService)をclientパッケージ内に作る
  8. 通信のためのメソッドを作成。
    public String myMethod(String str);

  9. クライアント側のインターフェースIC(Ex. MainServiceAsync)をclientパッケージ内に作る
  10. インターフェース名は5)のインターフェース名にAsyncを付加したもの。
    ISとICには同じ名前のメソッドを作成
    public void myMethod(String str, AsyncCallback callback);

  11. clientパッケージと同列にserverパッケージを作成
  12. RemoteServiceServletクラス、インタフェースISを実装したサービス実装クラスCS(Ex. MainServiceImpl)をserverパッケージ内に作成
  13. MainApplicationクラスにクライアントを実装。

  14. private final MainServiceAsync m_serviceAsync;
    public MainApplication() {
    m_serviceAsync = (MainServiceAsync)GWT.create(MainService.class);
    ServiceDefTarget endpoint = (ServiceDefTarget)m_serviceAsync;
    String moduleRelativeURL = GWT.getModuleBaseURL() + "(Access Path)";
    endpoint.setServiceEntryPoint(moduleRelativeURL);
    }

  15. (アプリ名).gwt.xmlを編集(servletタグの追加など)。
  16. <servlet path=’/(Access path)’ class=’com.abeerforyou.(Package Name).server.MainServiceImpl’ />

  17. MyApplication-complile.cmdを実行してWEB用ファイルを生成
  18. tomcatのwebapps配下にフォルダ作成

  19. webapps --- MyApplication --- --- WEB-INF --- --- classes --- (eclipseプロジェクトのbin以下をコピー)~
    |               |
    |               |--- lib     --- gwt-servlet.jarをコピー
    |               |
    |               |--- web.xml(eclipseプロジェクトのtomcatwebappsROOTWEB-INFweb.xmlをコピー)
    |
    |--- (eclipseプロジェクトのwww/パッケージ名/以下を全てコピー)

    ※tomcatフォルダはeclipse上で実行後に自動生成される。

  20. 必要に応じてweb.xml書き換え(呼び出し名とか)
  21. <servlet>
    <servlet-name>識別子</servlet-name>
    <servlet-class>com.abeerforyou.server.MainServiceImpl(パッケージ名付CSクラス名)</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>識別子</servlet-name>
    <url-pattern>/(適当な名称)</url-pattern>
    </servlet-mapping>
    ※eclipseプロジェクト内では、servlet-class=”com.google.gwt.dev.shell.GWTShellServlet”, url-pattern=”/*”を書き換えないこと。エラーが発生する。
    ※「www/パッケージ名/*」のファイルを「webapps/MyApplication」以外に配置する場合、url-patternの記述に注意。
    webapps — MyApplication — test — (www/パッケージ名/以下のファイル)
    とする場合
    url-pattern=”/test/(適当な名称)”

  22. http://localhost:8080/(アプリケーション名)/(呼び出し名).htmlで実行
  23. ※画像などのリソースはclientパッケージと同列に自動作成されているpublicフォルダ内に配置する。

参考リンク