Apcoordinator ユーザーズガイド
目次 前ページ次ページ

第2部 Apcoordinatorコアの機能> 第7章 EJBの呼び出し> 7.2 一般的なEJBの呼び出し

7.2.1 EJBCallFactoryクラスからリモートインタフェースを取得する方法

以下のように記述します。


import com.fujitsu.uji.ejb.EJBCallFactory;
import com.fujitsu.uji.ext.CallFactory;

public void someMethod(DispatchContext context, MyDataBean dataBean) {
  EJBCallFactory callFactory=(EJBCallFactory)context.getCallFactory(CallFactory.EJB);
  SomeSession remote=(SomeSession)callFactory.create("java:comp/env/ejb/someSessionBean"); 
  remote.someBusinessMethod(....);
  ...
}

ここで、SomeSessionはセションBeanのリモートインタフェースです。EJBCallFactoryのオブジェクトはDispatchContextクラスのgetCallFactoryメソッドで取得します。EJBCallFactoryのcreateメソッドは、指定された名前のEJBのオブジェクトを作成し、そのリモートインタフェースを返します。ここで、createの引数に与えるのはJNDIで検索する名前です。

この方法を使用する場合、EJBのホームインタフェースには引数なしのcreateメソッドが定義されている必要があります。

EJBCallFactoryのcreateメソッドで作成されたEJBオブジェクトは、ビジネスクラスを呼び出した処理が終了するときに自動的に削除されます。詳細は セションBeanオブジェクトの自動削除を参照してください。


目次 前ページ次ページ

All Rights Reserved, Copyright © 富士通株式会社 2000-2005