Apdesigner プログラマーズガイド |
目次 索引 |
第2部 アプリケーション開発編 | > 第3章 Enterprise JavaBeans (EJB)を開発する | > 3.2 開発の流れ |
Enterprise Beanの開発手順を以下に示します。
ここでは、プロジェクトの作成からビルドまでの手順にしたがってApdesignerの使い方を中心に説明します。
Apdesignerのメニューバーから[ファイル] > [新規] > [プロジェクト]を選択し、[新規プロジェクト]ダイアログボックスから[J2EE] > [Enterprise JavaBeansプロジェクト]を選択します。
次画面以降で、プロジェクト名、フォルダ、Javaのビルドパスなどを指定し、最後にプロジェクト生成後に起動するコード生成ウィザードを選択します。
プロジェクトの作成が完了すると、選択したウィザードが起動されます。
プロジェクトが作成されると、パースペクティブがJ2EEパースペクティブに切り替わります。
J2EEパースペクティブでは、[IJServer]ビューによるInterstage Application Serverの操作が行えます。また、J2EEアプリケーション作成時に頻繁に使われるウィザードがメニューから選択することができます。
Enterprise Bean生成ウィザードは、Enterprise Beanのソースの骨格や、deployment descriptorの情報を生成する機能です。
Enterprise Bean生成ウィザードは、以下の手順で起動します。
J2EEパースペクティブから操作する場合:
その他のパースペクティブから操作する場合:
プロジェクト作成後に初めてEnterprise Beanを作成する場合には、EJB規約バージョンを指定する必要があります。1度、Enterprise Beanを作成し、deployment descriptorファイルが生成されている場合には、ファイルの内容に従い、EJB規約バージョンは自動的に設定されます。
deployment descriptorファイルはソースフォルダ配下に管理されます。そのため、1つのプロジェクトの複数のソースフォルダにEnterprise Beanを作成すると、deployment descriptorが1つのプロジェクトに複数作られることになり、ビルドによるJAR化する時に同名ファイルによる問題が発生します。Enterprise Beanは単一のソースフォルダに作成するようにしてください。
Enterprise Bean生成ウィザードの詳細については、ウィザードのヘルプを参照してください。
以下にEnterprise Bean生成ウィザードで生成されるファイルを示します。
これらのソースやdeployment descriptorファイルをApdesignerが提供している機能で編集します。
Apdesignerでは、ウィザードなど生成されるEJB関連のクラス名の命名規則をカスタマイズすることができます。カスタマイズを行うには、メニューバーから[ウィンドウ] > [設定]を選択し、[設定]ダイアログボックスで、[EJB]を選択してください。
CMP2.0リレーション定義ウィザードは、Entity Bean間の関係を定義することで、deployment descriptor、CMP拡張情報ファイル、Enterprise Beanソースにリレーションに関する定義を出力します。
CMP2.0リレーション定義ウィザードは、以下のように起動します。
CMP2.0リレーション定義ウィザードを起動する前に、リレーションを定義するEntity Beanを作成しておく必要があります。
リレーション定義の概要については、"EJBのプログラミング"を、詳細については、"Interstage Application Server J2EEユーザーズガイド"を参照してください。
Enterprise Beanの編集には、JavaエディタとEJB Deployment Descriptorエディタを使用します。
Enterprise Beanのプログラミングの概要については、"EJBのプログラミング"を、詳細については、"Interstage Application Server J2EEユーザーズガイド"を参照してください。
ここでは、Enterprise Bean編集時に使うことができるApdesignerの機能について説明します。
Apdesignerでは、deployment descriptorに記述されている情報に基づいて、Home、Remote、LocalHome、Localの各インタフェースを生成することができます。
Enterprise Bean クラスに対して、メソッドの追加・削除や、メソッド宣言(メソッド名、復帰型、パラメタ型、例外)の変更などを行った場合は、対応する Homeインタフェース、Remoteインタフェース、LocalHomeインタフェース、Localインタフェースも合わせて変更する必要があります。
CMP(Container-managed persistence)のEntity Beanの場合には、findByPrimaryKeyなどのfinderメソッドの定義は、Homeインタフェースに直接定義する必要があります。
Enterprise Beanクラスのソースを自分で作成した場合など、何らかの理由で、Enterprise Beanに対応するdeployment descriptorの情報が存在しない場合、EJB deployment descriptorを単体で生成することができます。
deployment descriptor (ejb-jar.xml)と、CMP(Container-managed persistence)の場合のマッピング情報などを格納したCMP拡張情報ファイル(FJCMP_Bean名.xml)を編集する機能です。
EJB deployment descriptorは、Enterprise Beanの動作の特性やクラス名などの名前、種別、変更可能な環境プロパティなどのカストマイズ情報を定義するファイルです。また、CMP(Container-managed persistence)の場合には、実行時にEJBコンテナがデータベースアクセスするために必要な永続化フィールドとデータベースのカラムとの対応付けや、EJB1.1の場合には、finderメソッドの検索条件などの情報をCMP拡張情報ファイルに記述しています。
これらの情報をEJB Deployment DescriptorエディタとCMP拡張情報ファイルエディタで編集することができます。
編集方法の詳細については、"Apdesignerユーザーズガイド"の"エディタ"の"EJB Deployment Descriptorエディタ"、"CMP拡張情報ファイルエディタ"を参照してください。
作成、編集した Enterprise Beanクラスのソースファイルや、Home/Componentインタフェースのソースファイルを翻訳し、EJB deployment descriptorやCMP拡張情報ファイルと一緒にEJB JARファイルにアーカイブすることができます。
EJB JARファイルへのアーカイブはプロジェクトをビルドすることで行われますが、Apdesignerの初期状態では、ファイルの保存時に自動的にビルドが行われるようにオプションが設定されており、手動で作業を行う必要はありません。
自動的にビルドを行わないようにしたい場合には、メニューより、[プロジェクト] > [自動的にビルド]を選択し、オプションを解除してください。
手動でビルドを行うには以下の方法があります。
Apdesignerでは、ビルド時に行う処理をプロジェクトのプロパティの[ビルドツール]で指定します。
EJB規約に準拠しているかどうかのチェックを行うには、[EJB仕様検査]を追加します(通常は選択されています)。
Enterprise Beanクラス、Home/Componentインタフェース、deployment descriptorなどがEJB仕様に準拠しているか検証が行われます (Enterprise Beanクラス、Home/Componentインタフェースクラスについては、クラスやメソッドの定義のレベルでチェックが実行され、処理記述についてはチェックされません)。
Home/Componentインタフェースクラスの一括生成を行う場合は、「Home/Componentインタフェース生成」を選択します。Enterprise BeanソースからHome/Componentインタフェースクラスを作成する処理が行われます。
プロジェクト新規作成時に[Enterprise JavaBeansプロジェクト]を指定している場合には、必要なビルドツールが設定されています。
目次 索引 |