Eclipseによるカスタマイズコードの作成

最終更新日: 2023年3月22日
R8 | R9

フォルダ構成

カスタマイズコードはcustomizeフォルダ内に配置します。次のルールがあります。

javaコード
customize/javaに格納します。
設定ファイル
propertiesなどのファイルはcustomize/resourcesに格納します。
Webで公開されるファイル
HTML,JSP,画像ファイルなどWebで公開されるファイルはcustomize/webappに格納します。
customizeフォルダ

Javaコードを追加する

ここでは "customer" モデルを対象に、新規登録時に初期値として値を埋め込む Java カスタマイズコードを作成してみます。

ワンポイント

この例は標準機能でも実現できますが、Javaカスタマイズコードの例として説明します。

プロジェクトエクスプローラで customize/java フォルダでマウスの右クリックボタンを押下し、「新規>その他...」を選択します。

新しいファイルを作成する

新規ウィザードで Java クラスを指定します。

Javaクラスを作成する

パッケージ名、クラス名、スーパークラスを指定します。

この例では customer モデルを対象としています。パッケージ名は標準の "jp.jasminesoft.wagby" をベースにしています。

この例に示すように、カスタマイズクラスは、自動生成されたクラス(ここではCustomerHelper)を継承して、接頭語に "My" をつけたクラス名とします。

カスタマイズクラスの命名

カスタマイズクラスの雛形が生成されます。(図5)

カスタマイズクラスの雛形が用意される

続いて、自動生成されるメソッドの上書き(オーバーライド)を行います。 編集画面にてマウスの右クリックを押下し、メニューを表示します。「ソース>メソッドのオーバーライド/実装...」を選択します。

メソッドのオーバーライドを行う

ここでは自動生成されたメソッド initialize を指定します。(このメソッドは、新規登録画面に表示されるオブジェクトの初期値を設定するために用意されたものです。)

メソッドを指定する

メソッドが用意されます。標準では親クラスのメソッドを実行するようになっています。

用意されたカスタマイズ用メソッド

次のコードを追加します。

JSHCUSTOMER.setCUSTOMERNAME("夏目 漱石");

これで名前項目の初期値をセットしました。

コードを追加する

実行

カスタマイズコードを作成した後、WagbyDesignerでビルド(差分ビルド)を行う必要があります。

※ Tomcatが起動していた場合は、いったん停止してビルドを行ってください。

customizeフォルダ内のコードは Wagby Designerでビルドした際にWebアプリケーションに自動配置されます。 javaフォルダの内容はコンパイルされ、WEB-INF\classesに格納されます。 resourcesフォルダの内容はそのまま WEB-INF\classesに格納されます。 webappフォルダの内容は、それぞれ対応するフォルダに格納されます。

WagbyDesignerでビルドする

ビルド処理によって、WEB-INF\applicationContext\customer.xmlが書き変わります。CustomerHelperの代わりに(カスタマイズされたクラスである)MyCustomerHelperを使うようになります。

ビルドしたアプリケーションの実行例です。新規登録画面で、指定した値がセットされていることがわかります。

カスタマイズしたアプリケーションの実行

続けて自動生成を行う場合

カスタマイズコードを作成したあとに再度、自動生成を行うこともできます。 この場合の手順は次のとおりです。

  1. Webアプリケーションを停止し、Eclipseをいったん終了する。
  2. WagbyDesignerにて自動生成とビルドを行う。
  3. Eclipseを起動し、プロジェクトののリフレッシュを行う。

環境設定のまとめ

Wagby と Eclipse の環境設定方法をまとめます。$(DEVHOME) は Wagby がインストールされたフォルダです。

フォルダ構成

対象フォルダバージョン管理システムの対象
Wagbyアプリケーション$(DEVHOME)/wagbyapp
カスタマイズコードJavaコード$(DEVHOME)/customize/java
プロパティファイル等$(DEVHOME)/customize/resources
その他(jsp等)$(DEVHOME)/customize/webapp
リポジトリ$(DEVHOME)/repository
Wagby Designer$(DEVHOME)/wagbydesigner
Eclipse 設定ファイル$(DEVHOME)/.project
$(DEVHOME)/.classpath
$(DEVHOME)/.setting (folder)

注意点

  • WagbyDesigner で設定したプロジェクト名が eclipse のプロジェクト名となります。プロジェクト名を変更した場合は eclipse 関連の設定は一旦やり直しとなります。
  • Eclispe の設定ファイル (.project や .classpath) を変更した場合(例:ビルドパスに新しいjarファイルを指定した、など)は、変更したファイルを customize/eclipse フォルダの直下に保存してください。(*)
customize/eclipse フォルダはインストール直後の Wagby には用意されていません。手動で(フォルダを)作成してください。