前へ12345678910...次へWagbyのアーキテクチャとカスタマイズ方針を説明します。アーキテクチャWagbyはSpring,Hibernateといったオープンソース系ミドルウェアをベースに構築されています。商用ミドルウェアは含まれていません。サーバサイド(Java)およびクライアント(HTML,JavaScript)いずれのコードも生成します。ここではサーバサイドの代表的なクラスを紹介します。データを格納するクラス。いった目的に応じたModelクラスが用意される。UIと業務ロジックを媒介するクラス。Wagbyが定義する画面機能に応じた基本的なControllerが用意されている。Controllerから呼び出される。トランザクション境界となり、必要に応じて複数のDaoを呼び出す。トランザクション制御はSpring3の@Transactionalアノテーションを使う。データアクセスクラス。一つのモデルに関するCRUD処理を一つのDaoが受け持つ。4が提供する)CriteriaクエリAPIを用いる。適切な初期化を伴うモデルクラスのインスタンス生成や計算、モデルの相互変換を行う。設計情報に記述されたさまざまなプロパティがコード化されたクラスになる。モデルに関するメタ情報(項目名と型をはじめ、主キーはどの項目かといった情報)を管理する。Controller,Service,Dao,Helperの関係を図2に示します。処理の流れコードのカスタマイズ方針Wagbyが自動生成したJavaソースコードをカスタマイズできます。パターンと呼ばれるものです。自動生成されたクラスを継承するカスタマイズクラスをご用意いただき、必要なメソッドをオーバーライドします。パターン図3の例では、自動生成されるCustomerHelperを継承したMyCustomerHelperを用意しています。このクラスをcustomizeフォルダに保存してビルドすると自動的に認識されます。アプリケーション内では、CustomerHelperではなくMyCustomerHelperのインスタンスが使われるようになります。このアプローチによるカスタマイズの柔軟性は高く、ほとんどの処理をオーバーライドできます。ライセンス認証に関わるため、カスタマイズできません。権限の扱いシングルサインオンの対応を含む、認証・認可系のカスタマイズはジャスミンソフトによる個別対応を行います。詳細はお問い合わせください。