アプリケーションは、Bean のホーム・
インターフェースを介して、適切なローカル・セッション Bean にアクセスします。
このタスクを実行する理由とタイミング
セッション Bean は、プロセス・
アプリケーションの場合は LocalBusinessFlowManager
セッション Bean、ヒューマン・タスク・アプリケーションの場合は
LocalHumanTaskManager セッション Bean になります。
このタスクのステップ
- ローカル・セッション Bean への参照を
アプリケーション・デプロイメント記述子に追加します。 参照を以下のファイルの 1 つに追加します。
- Java™ 2 Platform Enterprise Edition (J2EE)
クライアント・アプリケーションの場合は、application-client.xml ファイル
- Web アプリケーションの場合は、web.xml
ファイル
- Enterprise JavaBeans™ (EJB) アプリケーションの
場合は、ejb-jar.xml ファイル
プロセス・アプリケーションの場合のローカル
・ホーム・インターフェースへの参照は、以下の例で
示されます。
<ejb-local-ref>
<ejb-ref-name>ejb/LocalBusinessFlowManagerHome</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<local-home>com.ibm.bpe.api.LocalBusinessFlowManagerHome</local-home>
<local>com.ibm.bpe.api.LocalBusinessFlowManager</local>
</ejb-local-ref>
タスク・
アプリケーションの場合のローカル・ホーム・
インターフェースへの参照は、以下の例で示されます。
<ejb-local-ref>
<ejb-ref-name>ejb/LocalHumanTaskManagerHome</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<local-home>com.ibm.task.api.LocalHumanTaskManagerHome</local-home>
<local>com.ibm.task.api.LocalHumanTaskManager</local>
</ejb-local-ref>
WebSphere® Integration Developer を使用して EJB 参照を
デプロイメント記述子に追加する場合、EJB 参照のバインディングが、アプリケーションのデプロイ時に
自動的に作成されます。EJB 参照の追加について
詳しくは、WebSphere Integration Developer の文書を
参照してください。
- Java Naming and Directory Interface
(JNDI) 検索機構を使用して、ローカル・セッション Bean の
ローカル・ホーム・インターフェースがアプリケーションから使用可能になるようにします。 以下
の例では、プロセス・アプリケーションでのこのステップを示します。
// Obtain the default initial JNDI context
InitialContext initialContext = new InitialContext();
// Lookup the local home interface of the LocalBusinessFlowManager bean
LocalBusinessFlowManagerHome processHome =
(LocalBusinessFlowManagerHome)initialContext.lookup
("java:comp/env/ejb/LocalBusinessFlowManagerHome");
ローカル・セッション Bean のホーム・インターフェースには、EJB オブジェクト
の create メソッドが含まれます。
このメソッドは、セッション Bean のローカル・
インターフェースを戻します。
- ローカル・セッション Bean のローカル・
インターフェースにアクセスします。 以下
の例では、プロセス・アプリケーションでのこのステップを示します。
LocalBusinessFlowManager process = processHome.create();
- サービス・インターフェースによって
公開されたビジネス関数を呼び出します。 以下の例では、プロセス・アプリケーションでのこのステップを示します。
process.initiate("MyProcessModel",input);
アプリケーションからの呼び出し
は、トランザクションとして実行されます。
トランザクションは、以下のいずれかの方法で確立
されて終了します。
以下に、ステップ 2 から 4 でタスク・アプリケーションを探す方法の例を示します。
// Obtain the default initial JNDI context
InitialContext initialContext = new InitialContext();
// Lookup the local home interface of the LocalHumanTaskManager bean
LocalHumanTaskManagerHome taskHome =
(LocalHumanTaskManagerHome)initialContext.lookup
("java:comp/env/ejb/LocalHumanTaskManagerHome");
...
//Access the local interface of the local session bean
LocalHumanTaskManager task = taskHome.create();
...
//Call the business functions exposed by the service interface
task.callTask(tkiid,input);