7.5.2. EJB クライアントコンテキストについて

JBoss Enterprise Application Platform 6 には、リモート EJB 呼び出しを管理する EJB クライアント API が導入されました。JBoss EJB クライアント API は、1 つまたは複数のスレッドで同時に関連付けたり、使用したりできる EJBClientContext を使用します。つまり、EJBClientContext には任意の数の EJB レシーバーを含めることができます。EJB レシーバーは、EJB 呼び出しを処理できるサーバーとの通信方法を知っているコンポーネントです。一般的に、EJB リモートアプリケーションは以下のように分類できます。
  • リモートクライアント。スタンドアロン Java アプリケーションとして実行されます。
  • リモートクライアント。別の JBoss Enterprise Application Platform インスタンス内で実行されます。
EJB クライアント API の観点から、リモートクライアントのタイプに応じて、1 つの JVM 内には複数の EJBClientContext が存在することがあります。
スタンドアロンアプリケーションは通常、任意の数の EJB レシーバーにより支援されることがある単一の EJBClientContext を持ちますが、これは必須ではありません。スタンドアロンアプリケーションが複数の EJBClientContext を持つ場合、EJB クライアントコンテキストセレクターは適切なコンテキストを返します。
別の JBoss Enterprise Application Platform インスタンス内で実行されるリモートクライアントの場合、デプロイされた各アプリケーションは、対応する EJB クライアントコンテキストを持ちます。このアプリケーションが別の EJB を呼び出すと、適切な EJB レシーバーを見つけるために、対応する EJB クライアントコンテキストが使用され、呼び出しが処理されます。