ヘッダーをスキップ
Oracle Application Server Adapter for Tuxedoユーザーズ・ガイド
10g (10.1.3.1.0)
B31895-01
  目次へ
目次
索引へ
索引

前へ
前へ
 
次へ
次へ
 

4 Oracle BPEL Process ManagerとのOracleAS Adapter for Tuxedoの統合

OracleAS Adapter for Tuxedoをデプロイし、Oracle BPEL Process Managerと統合するには、BPEL Process Managerを構成する必要があります。

この項の構成は、次のとおりです。

Oracle BPEL Process ManagerとのOracleAS Adapter for Tuxedoの統合の概要

Oracle BPEL Process Managerは、BPELビジネス・プロセスを作成、デプロイおよび管理するための包括的なソリューションを提供します。 Oracle BPEL Process Managerは、サービス指向アーキテクチャ(SOA)に基づいて、企業に対してWebサービスおよびビジネス・プロセスの柔軟性、相互運用性、再利用性、拡張性および迅速な実装性を提供します。 Oracle BPEL Process Managerによって、既存のビジネス・プロセスを管理、変更、拡張および再デプロイする全体的なコストが削減されます。 各ビジネス・アクティビティは、自己完結型で自己記述的なモジュラ・アプリケーションです。そのインタフェースはWSDLで定義され、そのビジネス・プロセスはWebサービスとしてモデル化されます。

Webサービスは、最初に公開され、次にビジネス・フローに作成または編成されます。サービスの公開は、既存のアプリケーションまたはシステム内の機能を取り入れ、標準的な方法で使用できるようにすることで実装されます。一方、サービスの編成は、複数のサービスを単一のエンドツーエンド・ビジネス・プロセスに作成することで実装されます。 OracleAS Adapter for Tuxedoの構成の一部として定義される相互作用は、PartnerLinkとして編成に統合されます。 各PartnerLinkは、Webサービスを記述するWSDLにリンクされます。

OracleAS Adapter for TuxedoとOracle BPEL Process Managerを統合するには、次のタスクを指定された順序で実行する必要があります。

  1. OracleAS Adapter for Tuxedoのインストールおよび構成

  2. OC4JとのOracleAS Adapter for Tuxedoの統合

  3. OracleAS Adapter for Tuxedoとの相互作用のためのOracle BPEL Process Managerの構成


関連項目:

『Oracle Application Server Adapter概要』

OracleAS Adapter for Tuxedoとの相互作用のためのOracle BPEL Process Managerの構成

この項の構成は、次のとおりです。

Oracle Connect Serverとの接続の設定

Oracle Connectサーバーとの接続を設定する手順は、次のとおりです。

  1. 「Oracle BPEL Admin」ウィンドウを開きます。

  2. 「Server」タブの「Configuration」タブで、次の項目を指定します。

    • LegacyServer: Oracle ConnectがインストールされるサーバーのIPアドレス。 単一のサーバーの場合、デフォルトはlocalhostです。

    • LegacyPort: Oracle Connectがインストールされるサーバーのポート番号。 単一のサーバーの場合、デフォルトは2551です。

  3. Oracle BPEL Process Managerによって使用される各Oracle Connectサーバーについて、前述の手順を繰り返します。 異なるサーバーおよびポート間のセパレータにはカンマを使用します。

  4. 「Apply」をクリックします。

  5. Oracle BPEL Process Managerがインストールされているサーバーを再起動します。

Oracle JDeveloperを使用したメタデータの可用性の確認

Oracle ConnectサーバーのメタデータがOracle BPEL Process Managerで使用できることを検証する手順は、次のとおりです。

  1. Oracle JDeveloperを開きます。

  2. 「接続」で、「Integration Server」ノードを開き、OC4Jサーバーのリストを表示します。

  3. JCA 1.5 Tuxedoアダプタを構成したOC4Jサーバーのノードを開きます(「OC4JとのOracleAS Adapter for Tuxedoの統合」を参照)。

  4. 「Adapters」ノード下の「Legacy」ノードを開き、「Oracle BPEL Admin」ウィンドウを使用して定義したOracle Connectサーバーのリストを表示します。

  5. 確認するメタデータが存在するOracle Connectサーバーのノード下で、デーモン(IRPCD)のノードを開き、ワークスペースのリストを表示します。

    ワークスペースには、インバウンドまたはアウトバウンド・アプリケーション用のアダプタが含まれています。

  6. 作業をするアダプタが含まれているワークスペースのノードで、関連のあるアダプタのノードを開き、相互作用のリストを表示します。

    インバウンド・アプリケーション用のアダプタを含むワークスペースを選択した場合、アダプタにはEventStreamという単一の相互作用のみ含まれます。

  7. 相互作用をダブルクリックすると、WSDLが表示されます。

アウトバウンド・アプリケーションのWSDLの構成

アウトバウンド・アプリケーションを構築すると、Oracle BPEL Process Managerにより、相互作用に対応するWSDLが自動的に作成されます。 WSDLで、アダプタのコネクション・ファクトリの名前を<service>セクションの<jca:address>要素のadapterInstanceJndi属性の値として指定します。 名前は自動的に生成されます。 この名前のコネクション・ファクトリがOC4Jサーバー上に存在することを確認する必要があります。 存在しない場合、この名前のコネクション・ファクトリを作成するか、またはこのコネクション・ファクトリの名前を既存のコネクション・ファクトリの名前に変更する必要があります。

次に、アウトバウンド・アプリケーションの場合のWSDLの例を示します。

<?xml version = '1.0' encoding = 'UTF-8'?>
<definitions name="add" targetNamespace="http://xmlns.oracle.com/pcbpel/calc/add" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:legacyReq="noNamespace://calc" xmlns:tns="http://xmlns.oracle.com/pcbpel/calc/add" xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/" xmlns:pc="http://xmlns.oracle.com/pcbpel/" xmlns:legacyRes="noNamespace://calc">
   <types>
       <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="noNamespace://calc" targetNamespace="noNamespace://calc" elementFormDefault="qualified" attributeFormDefault="unqualified">
           <xsd:element name="binput" type="binput"/>
           <xsd:complexType name="binput">
               <xsd:attribute name="p1" type="xsd:int"/>
               <xsd:attribute name="p2" type="xsd:int"/>
           </xsd:complexType>
       </xsd:schema>
       <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="noNamespace://calc" targetNamespace="noNamespace://calc" elementFormDefault="qualified" attributeFormDefault="unqualified">
            <xsd:element name="output" type="output"/>
           <xsd:complexType name="output">
               <xsd:attribute name="result" type="xsd:int"/>
           </xsd:complexType>
       </xsd:schema>
   </types>
   <message name="request">
       <part name="input_add" element="legacyReq:binput"/>
   </message>
   <message name="response">
       <part name="output_add" element="legacyReq:output"/>
   </message>
   <portType name="addPortType">
       <operation name="add">
           <input name="Input_add" message="tns:request"/>
           <output name="Output_add" message="tns:response"/>
       </operation>
   </portType>
   <binding name="addJCABinding" type="tns:addPortType">
       <jca:binding XMLRecordConverterCallout="oracle.tip.adapter.fw.record.attunity.AttuXMLRecordConverterImpl"/>
       <operation name="add">
           <jca:operation FunctionName="add" InteractionSpec="com.attunity.adapter.AttuInteractionSpec" ExecutionTimeout="120"/>
           <input/>
           <output/>
       </operation>
   </binding>
   <service name="addService">
       <port name="addPort" binding="tns:addJCABinding">
           <jca:address adapterInstanceJndi="eis/legacy/calc"/>
       </port>
   </service>
   <plt:partnerLinkType name="addPartnerLinkType">
       <plt:role name="addRole">
           <plt:portType name="tns:addPortType"/>
       </plt:role>
   </plt:partnerLinkType>
/definitions>

インバウンド・アプリケーションのWSDLの構成

アウトバウンド・アプリケーションを構築する場合、Oracle BPEL Process Managerでは、アダプタ、サーバーおよびワークスペースの名前、ポート番号など、ActivationSpecクラスの最も重要な属性を含み、相互作用に対応するWSDLが自動的に作成されます。 ワークスペースの名前は、EventStream相互作用が属するもののみです。 他のすべてのプロパティには、変更できるデフォルト値があります。

また、WSDLで、アダプタのコネクション・ファクトリの名前を<service>セクション内の<jca:address>要素のadapterInstanceJndi属性の値として指定します。 名前は自動的に生成されます。 この名前のコネクション・ファクトリがOC4Jサーバー上に存在する場合、その値が取得されます。 存在しない場合は、ActivationSpecで指定されたプロパティが使用されます。 値がコネクション・ファクトリおよびActivationSpecの両方で指定されている場合、ActivationSpecプロパティがコネクション・ファクトリ内の値を上書きします。 コネクション・ファクトリで指定された値を使用する場合、最初にActivationSpecからプロパティを削除する必要があります。

ActivationSpecプロパティのリストについては、Oracle Application Server Containers for J2EE関連のマニュアルを参照してください。

次に、アウトバウンド・アプリケーションの場合のWSDLの例を示します。

<?xml version = '1.0' encoding = 'UTF-8'?>
<definitions name="eventStream" targetNamespace="http://xmlns.oracle.com/pcbpel/testTuxedoQ1/eventStream" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:legacyReq="noNamespace://testTuxedoQ1" xmlns:tns="http://xmlns.oracle.com/pcbpel/testTuxedoQ1/eventStream" xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/" xmlns:pc="http://xmlns.oracle.com/pcbpel/" xmlns:legacyRes="noNamespace://DEMO#">
   <types>
       <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="noNamespace://testTuxedoQ1" targetNamespace="noNamespace://testTuxedoQ1" elementFormDefault="qualified" attributeFormDefault="unqualified">
           <xsd:element name="eventStream" type="eventStreamDescription"/>
           <xsd:complexType name="eventStreamDescription">
               <xsd:choice minOccurs="0" maxOccurs="unbounded">
                   <xsd:element name="EMPLOYEE_INFO__VAR_0__BIG_EMPLOYEE" type="EMPLOYEE_INFO__VAR_0__BIG_EMPLOYEE"/>
                   <xsd:element name="EMPLOYEE_INFO__VAR_0__EMPLOYEE" type="EMPLOYEE_INFO__VAR_0__EMPLOYEE"/>
               </xsd:choice>
           </xsd:complexType>
           <xsd:element name="EMPLOYEE_INFO__VAR_0__EMPLOYEE" type="EMPLOYEE_INFO__VAR_0__EMPLOYEE"/>
           <xsd:complexType name="EMPLOYEE_INFO__VAR_0__EMPLOYEE">
               <xsd:attribute name="LAST_NAME">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="15"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="FIRST_NAME">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="10"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="ADDRESS_1">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="15"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="ADDRESS_2">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="15"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="CARS" type="xsd:int"/>
               <xsd:attribute name="SALARY" type="xsd:int"/>
           </xsd:complexType>
           <xsd:element name="EMPLOYEE_INFO__VAR_0__BIG_EMPLOYEE" type="EMPLOYEE_INFO__VAR_0__BIG_EMPLOYEE"/>
           <xsd:complexType name="EMPLOYEE_INFO__VAR_0__BIG_EMPLOYEE">
               <xsd:attribute name="ID">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="10"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="LAST_NAME2">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="100"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="FIRST_NAME2">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="100"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="ADDRESS_12">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="150"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="ADDRESS_22">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="150"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
               <xsd:attribute name="CARS2" type="xsd:int"/>
               <xsd:attribute name="SALARY2" type="xsd:int"/>
               <xsd:attribute name="FILLER">
                   <xsd:simpleType>
                       <xsd:restriction base="xsd:string">
                           <xsd:maxLength value="1500"/>
                       </xsd:restriction>
                   </xsd:simpleType>
               </xsd:attribute>
           </xsd:complexType>
       </xsd:schema>
       <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="noNamespace://DEMO#" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="noNamespace://DEMO#">
           <element name="eventStream">
               <complexType/>
           </element>
       </schema>
   </types>
   <message name="event">
       <part name="event_eventStream" element="legacyReq:eventStream"/>
   </message>
   <portType name="eventStreamPortType">
       <operation name="eventStream">
           <input name="Event_eventStream" message="tns:event"/>
       </operation>
   </portType>
   <binding name="eventStreamJCABinding" type="tns:eventStreamPortType">
       <pc:inbound_binding/>
       <operation name="eventStream">
           <jca:operation ActivationSpec="com.attunity.adapter.AttuOracleActivationSpec" EisName="testTuxedoQ1" ServerName="mvs5" UserName="" Password="" Workspace="testTuxedoQ1" PortNumber="2551" FirewallProtocol="" ConnectTimeout="0" EncryptionProtocol="" EncryptionKeyName="" EncryptionKeyValue="" UseNamespace="true" NetworkXMLProtocol="" MessagesInBatch="50" Support2PC="false" WaitTime="30" RetryInterval="15"/>
           <input/>
       </operation>
   </binding>
   <service name="eventStreamService">
       <port name="eventStreamPort" binding="tns:eventStreamJCABinding">
           <jca:address ResourceAdapterClassName="com.attunity.adapter.AttuOracleResourceAdapter" adapterInstanceJndi="eis/legacy/testTuxedoQ1"/>
       </port>
   </service>
   <plt:partnerLinkType name="eventStreamPartnerLinkType">
       <plt:role name="eventStreamRole">
           <plt:portType name="tns:eventStreamPortType"/>
       </plt:role>
   </plt:partnerLinkType>
/definitions>