外部JNDI名のサポート

ヒューマン・ワークフロー・サービスは、WebサービスとRemote Method Invocation (RMI)を介してJ2EEアプリケーションと統合できます。他の管理対象サーバーやクラスタ、または他のOracle WebLogic ServerドメインにあるEnterprise JavaBeansのリモート・ルックアップを容易にするために、Oracle WebLogic Serverには外部JNDIプロバイダが組み込まれています。外部JNDIプロバイダは、リモート・サーバーのホストとポートを使用して、リモート・サーバーのEnterprise JavaBeansをローカル・サーバーのJNDIツリーにリンク付けするように構成されています。

ワークフロー・サービスでは、表34-3にリストされているEnterprise JavaBeansが公開されます。これらのEnterprise JavaBeansは、タスク問合せサービス、ヒューマン・タスクに対するADFタスク・フローの登録、埋込みワークリスト・リージョンのユースケースを完全にサポートするために、外部JNDIプロバイダを介してすべてリンクされている必要があります。

外部JNDI名のサポートを提供するには:

  1. Oracle WebLogic Remote Consoleプロバイダにログインします。
  2. 「ツリーの編集」「サービス」「外部JNDIプロバイダ」に移動します。

    ローカルJNDIネームスペースに対するリモートEnterprise JavaBeans名を、外部JNDIプロバイダを介して同じOracle WebLogic Serverドメイン内のSOAサーバーから特定の管理対象サーバーまたはクラスタにリンク付けする場合は、注意事項が1つあります。ローカルJNDI名は、そのドメイン内のすべての管理対象サーバーに公開されます。このようにリンク付けすると、そのドメイン内のSOAサーバー上でネームスペースの競合が発生します。これは、Oracle BPM Worklistから登録されたEnterprise JavaBeansがすでに存在しているためです。競合を回避して構成を最小限に維持する別の方法として、JNDI接尾辞を使用する方法があります。これを実行するには、リモート・ワークフローEnterprise JavaBeansのすべてのローカルJNDIリンクの末尾に一貫性のある接尾辞を追加し、接尾辞キーが含まれた単純なwf_client_config.xmlファイルを作成します。

    クライアント・プロパティの定義には様々な方法があります。詳細は、「構成オプション」を参照してください。

  3. 表34-3に示した各Enterprise JavaBeans名にJNDI接尾辞を追加し、外部JNDI名を登録します。
    • ejb/bpel/services/workflow/TaskServiceGlobalTransactionean_server1

    • ejb/bpel/services/workflow/TaskServiceBean_server1

    • ejb/bpel/services/workflow/TaskMetadataServiceBean_server1

    • TaskQueryService_server1

    • UserMetadataService_server1

    • RuntimeConfigService_server1

    • TaskReportServiceBean_server1

    • TaskEvidenceServiceBean_server1

  4. 次のコード・サンプルに示すように、wf_client_config.xmlファイルにejbJndiSuffix要素の値のみを指定して、リモート名を定義します。JAXBオブジェクトのWorkflowServicesClientConfigurationTypeを使用することも、Map<CONNECTION_PROPERTY, String>プロパティでCONNECTION_PROPERTY.EJB_JNDI_SUFFIXを使用することもできます。
    <remoteClient>
          <ejbJndiSuffix>_server1</ejbJndiSuffix>
    </remoteClient>