Apcoordinator ユーザーズガイド |
目次 |
第2部 Apcoordinatorコアの機能 | > 第7章 EJBの呼び出し | > 7.1 Apcoordinatorで作成したセションBeanの呼び出し |
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); UjiSessionCall call=callFactory.createUjiSessionCall("java:comp/env/ejb/someSessionBean"); ResponseBean response=(ResponseBean)call.invoke(dataBean,verb); ... }
UjiSessionCallクラスのinvokeメソッドによってセションBeanのビジネスクラスが呼び出されます。ビジネスクラスのメソッドの第2引数に与えられるオブジェクトは次のとおりです。
また、invokeメソッドの返り値は次のとおりです。
データBean変換機能と上書き機能についてはセションBeanとクライアントとの連携を参照してください。
セションBeanの実行中に例外が発生し、それが呼び出し側に通知される例外の場合、invokeメソッドはcom.fujitsu.uji.ejb.EJBApplicationException例外を発生します。この例外のgetRootCauseメソッドによって、セションBeanで発生した例外を取得できます。 セションBeanからクライアントへの例外の通知については、例外処理を参照してください。
EJBCallFactoryのcreateUjiSessionCallメソッドで作成されたセションBeanオブジェクトは、ビジネスクラスを呼び出した処理が終了するときに自動的に削除されます。詳細は セションBeanオブジェクトの自動削除を参照してください。
目次 |