Eclipseによるカスタマイズコードの作成
最終更新日: 2023年3月22日
R8 | R9
カスタマイズコードはcustomizeフォルダ内に配置します。次のルールがあります。
ここでは "customer" モデルを対象に、新規登録時に初期値として値を埋め込む Java カスタマイズコードを作成してみます。
この例は標準機能でも実現できますが、Javaカスタマイズコードの例として説明します。
プロジェクトエクスプローラで customize/java フォルダでマウスの右クリックボタンを押下し、「新規>その他...」を選択します。
新規ウィザードで Java クラスを指定します。
パッケージ名、クラス名、スーパークラスを指定します。
この例では customer モデルを対象としています。パッケージ名は標準の "jp.jasminesoft.wagby" をベースにしています。
この例に示すように、カスタマイズクラスは、自動生成されたクラス(ここではCustomerHelper)を継承して、接頭語に "My" をつけたクラス名とします。
カスタマイズクラスの雛形が生成されます。(図5)
続いて、自動生成されるメソッドの上書き(オーバーライド)を行います。
編集画面にてマウスの右クリックを押下し、メニューを表示します。「ソース>メソッドのオーバーライド/実装...」を選択します。
ここでは自動生成されたメソッド initialize を指定します。(このメソッドは、新規登録画面に表示されるオブジェクトの初期値を設定するために用意されたものです。)
メソッドが用意されます。標準では親クラスのメソッドを実行するようになっています。
次のコードを追加します。
これで名前項目の初期値をセットしました。
カスタマイズコードを作成した後、WagbyDesignerでビルド(差分ビルド)を行う必要があります。
customizeフォルダ内のコードは Wagby Designerでビルドした際にWebアプリケーションに自動配置されます。
javaフォルダの内容はコンパイルされ、WEB-INF\classesに格納されます。
resourcesフォルダの内容はそのまま WEB-INF\classesに格納されます。
webappフォルダの内容は、それぞれ対応するフォルダに格納されます。
ビルド処理によって、WEB-INF\applicationContext\customer.xmlが書き変わります。CustomerHelperの代わりに(カスタマイズされたクラスである)MyCustomerHelperを使うようになります。
ビルドしたアプリケーションの実行例です。新規登録画面で、指定した値がセットされていることがわかります。
カスタマイズコードを作成したあとに再度、自動生成を行うこともできます。
この場合の手順は次のとおりです。
Wagby と Eclipse の環境設定方法をまとめます。$(DEVHOME) は Wagby がインストールされたフォルダです。
フォルダ構成
Javaコードを追加する
ワンポイント
JSHCUSTOMER.setCUSTOMERNAME("夏目 漱石");
実行
続けて自動生成を行う場合
環境設定のまとめ
フォルダ構成
対象 フォルダ バージョン管理システムの対象 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)○ 注意点