EJB セッション Bean の作成

ウィザードを使用してセッション Bean を作成して、それをプロジェクトに追加することができます。

セッション Bean ウィザードは、エンタープライズ・セッション Bean の作成を支援するためのもので、作成プロセスを段階的に進めながら、アプリケーション用に使用または変更できる出力ファイルを提供します。

セッション Bean を作成するには、以下のステップを実行します。

  1. Java™ EE パースペクティブの「プロジェクト・エクスプローラー」ビューで、EJB プロジェクトを展開します。
  2. 「セッション Bean」アイコンを右クリックして、ポップアップ・メニューから「新規」>「セッション Bean」を選択します。 「セッション Bean の作成」ウィザードが表示されます。
  3. プロジェクト・ウィザードのプロンプトの指示に従います。

一般情報

状態タイプ
セッション Bean には、ステートレス、ステートフル、および singleton という 3 つの種類があります。
ステートレス・セッション Bean
ステートレス・セッション Bean は、関連サービスのコレクションで、それぞれのサービスはメソッドによって表されます。この Bean は、1 つのメソッド呼び出しから次の呼び出しに移るときに状態を維持しません。 ステートレス・セッション Bean のメソッドを呼び出すと、そのメソッドが実行され、既に実行されたり今後実行されたりする他の要求の状態を認識したり意識することなく結果が返されます。 ステートレス・セッション Bean は会話型状態を維持しないため、他のセッション Bean より長く存続します。
ステートフル・セッション Bean
ステートフル・セッション Bean は、クライアントに代わってタスクを実行し、そのクライアントに関連した状態を維持します。 この状態は、ステートフル・セッション Bean とクライアントとの間の継続する会話を表すため、会話型状態と呼ばれます。 ステートフル・セッション Bean で呼び出される各メソッドは、この会話型状態との間でデータを読み書きできます。この状態は、その Bean のすべてのメソッド間で共有することができます。 ステートフル・セッション Bean には、タイムアウト期間があります。
singleton セッション Bean
singleton セッション Bean は、1 つのアプリケーションにつき 1 回インスタンス化されるセッション Bean コンポーネントです。 多数の仮想マシンにコンテナーが分散している場合、各アプリケーションは、JVM ごとに singleton の 1 つの Bean インスタンスを使用します。singleton セッション Bean がインスタンス化されると、そのインスタンスは、作成元アプリケーションの存続期間にわたって存続します。 各クライアント呼び出しの間でその状態が維持されますが、コンテナーがシャットダウンまたは異常終了したときにその状態を保持する必要はありません。 singleton セッション Bean は、共有して使用するために用意されたもので、同時アクセスをサポートします。
ビジネス・インターフェース
セッション Bean のビジネス・インターフェースは、Bean のビジネス・メソッドを格納する、通常の Java インターフェースです。 セッション Bean のビジネス・インターフェースへの参照は、ビジネス・インターフェース・メソッドのパラメーターまたは戻り値として渡すことができます。 これには、セッション Bean の状態を初期化したり、参照が不必要になり除去できるようになったことを EJB コンテナーに通知したりするメソッドが含まれています。 使用可能なオプションには、次のようなものがあります。
リモート・ビジネス・インターフェース:
クライアントは、アクセスするエンタープライズ Bean とは異なる、別のマシンまたは別の Java 仮想マシン上で実行することが可能で、Bean のロケーションは透過的です。
ローカル・ビジネス・インターフェース:
クライアントは、アクセスする Bean と同じ Java 仮想マシン上で実行する必要があり、エンタープライズ Bean のロケーションは透過的ではありません。
インターフェースなし:
これは、別個のビジネス・インターフェースを使用せずに Bean クラスの public メソッドを公開するローカル・ビューのバリエーションです。
マップされた名前
Bean のグローバル JNDI 名を指定します。 mappedName 属性を使用すると、リモート・クライアントから EJB Bean を検索するために使用できる名前を割り当てることができます。
トランザクション・タイプ
「トランザクション・タイプ」フィールドを使用して、トランザクションがコンテナーによって処理されるのか、それとも Bean で処理されるのかを指定します。
ホームおよびコンポーネントのインターフェース
ホームおよびコンポーネントのインターフェースは、EJB 2.x セッション Bean のみに使用されます。
ホーム・インターフェース:
ホーム・インターフェースでは、クライアントで、エンタープライズ Bean のインスタンスの作成、既存インスタンスの削除および検出が可能です。
コンポーネント・インターフェース:
コンポーネント・インターフェースでは、クライアントからエンタープライズ Bean のビジネス・メソッドにアクセスできます。