ヘッダーをスキップ
Oracle SOA Suite開発者ガイド
10g(10.1.3.1.0)
B31839-01
  目次へ
目次
索引へ
索引

前へ
前へ
 
次へ
次へ
 

6.8 Oracle Enterprise Service Busへのアダプタ・サービスの追加

Oracle Enterprise Service Busでは、Oracleテクノロジ・アダプタに対するサービスの作成や変更をサポートしています。 Oracleテクノロジ・アダプタを使用すると、メインフレームとレガシー・アプリケーションを企業リソース計画(ERP)、カスタマ・リレーションシップ・マネジメント(CRM)、データベースおよびメッセージ・システムに統合できます。

表6-2に、作成可能なOracleテクノロジ・アダプタ・サービスの要約を示します。 アダプタ・サービスは、インバウンドまたはアウトバウンド・アダプタ・サービスとして構成できます。 インバウンド・アダプタ・サービスは、メッセージをEnterprise Service Busに送信します。これに対して、アウトバウンド・アダプタ・サービスは、メッセージをEnterprise Service Bus外部のアプリケーションまたはシステムに送信します。

表6-2 Oracleテクノロジ・アダプタの要約

アダプタ・サービス 説明

AQアダプタ・サービス

Oracle Advanced Queuingのシングルまたはマルチ・コンシューマ・キューとの間でメッセージを送受信します。

データベース・アダプタ・サービス

Oracle Database表から抽出されたメッセージ、またはストアド・プロシージャの実行で作成されたメッセージを送受信します。

ファイル・アダプタ・サービス

ローカル・ファイル・システムにあるファイルからのメッセージを送受信します。

FTPアダプタ・サービス

リモートFTPサーバーにあるファイルからのメッセージを送受信します。

JMSアダプタ・サービス

JMSキューまたはトピックからのメッセージを送受信します。

MQアダプタ

IBM社のMQ Seriesからのメッセージを送受信します。

Oracle Applicationsアダプタ・サービス

Oracle E-Business Suiteインタフェースからのメッセージを送受信します。


詳細は、次のマニュアルを参照してください。

6.8.1 アダプタ・サービスの追加方法

Oracle JDeveloper ESB Designerには、インバウンドおよびアウトバウンド・アダプタ・サービスの作成を支援するウィザードが用意されています。 このウィザードは、必要な情報を収集して、サービスを定義するWSDLファイルを生成します。

アダプタ・サービスを追加する手順は、次のとおりです。

  1. アプリケーション・ナビゲータで、SOAPサービスを作成するESBプロジェクトに移動し、「リソース」フォルダを開きます。 「project-name.esb」をダブルクリックします。project-nameは、SOAPサービスを追加するプロジェクトの名前です。

    プロジェクトの「設計」タブが表示されます。

  2. コンポーネント・パレットで下矢印をクリックし、「アダプタ・サービス」を選択します(選択されていない場合)。

  3. アダプタを「設計」タブにドラッグ・アンド・ドロップします。

    指定したアダプタ・タイプの「アダプタ・サービスの作成」ダイアログが開きます。

  4. アダプタの名前システム/グループおよび説明(オプション)を入力します。

    名前: サービスを作成するESBシステム内で一意の名前を入力します。空白は使用できません。

    システム/グループ: 懐中電灯アイコンをクリックして「ESBサービス・グループ・ブラウザ」ダイアログを開き、このサービスに対するシステム/グループを選択します。 例: 「プロジェクトのシステム/グループ」の下にあるFulfillment

    説明: 説明を入力します(オプション)。

  5. 「WSDLファイル」フィールドを設定するには、フィールドの右にある次のアイコンをクリックします。

    • 「アダプタ・サービスのWSDLの構成」アイコン

      このアイコンをクリックすると、コンポーネント・パレットで選択した特定タイプのアダプタについて、アダプタ構成ウィザードが起動します。 ウィザードのガイドに従って設定を行います。

      Oracle JDeveloper ESB DesignerでAQ、データベース、ファイル、FTP、JMSおよびMQの各アダプタを構成する方法の詳細は、『Oracle Application Server Adapters for Files, FTP, DatabasesおよびEnterprise Messagingユーザーズ・ガイド』を参照してください。 Oracle E-Business Suite用のOracleアプリケーション・アダプタを構成する方法の詳細は、『Oracle Application Server Adapter for Oracle Applicationsユーザーズ・ガイド』を参照してください。

    • 「サービス・エクスプローラ」アイコン

      このアイコンをクリックして、サービス・エクスプローラを起動し、デプロイ済サービスを検索します。

      第6.5.1項「デプロイ済サービスの参照方法」を参照してください。

  6. 「OK」をクリックします。

図6-4は、完了した「アダプタ・サービスの作成」ダイアログの例です。

図6-4 「アダプタ・サービスの作成」ダイアログ

図6-4の説明は次にあります。
「図6-4 「アダプタ・サービスの作成」ダイアログ」の説明

図6-1に示したように、新規アダプタ・サービスが「設計」タブに表示されます。 アダプタ・サービスには、メッセージ・インスタンスをアダプタ・サービスに、またはアダプタ・サービスからルーティングするルーティング・サービスが必要です。

6.8.2 アダプタ・サービスの変更方法

アダプタ・サービスは、Oracle JDeveloper ESB Designerでアダプタのプロパティ・ページを開いて変更できます。

アダプタ・サービスを変更する手順は、次のとおりです。

  1. 「設計」タブで、アダプタ・サービス・アイコンの上のセクションをダブルクリックします。 アイコンのリージョン上では、カーソルが手の形になります。 図6-7に、「設計」タブの例を示します。

  2. 変更可能なアダプタ・サービス情報に変更を加えます。 サービスの名前は変更できないことに注意してください。

  3. 「エンドポイント・プロパティ」パネルでは、サービスのエンドポイント・プロパティを追加、削除、更新または表示できます。 エンドポイント・プロパティについては、第6.6項「アダプタ・サービスまたはSOAPサービスのエンドポイント・プロパティの追加」を参照してください。

  4. 変更内容を保存します。

6.8.3 アダプタ・サービスの削除方法

アダプタ・サービスは、Oracle JDeveloper ESB Designerの「設計」タブで削除できます。

アダプタ・サービスを削除する手順は、次のとおりです。

  1. 「ダイアグラム」タブで、アダプタ・サービス・アイコンを選択します。

  2. 選択したアダプタ・サービスを削除するには、「設計」タブの上部にある大きい赤色のX記号をクリックします。

  3. 選択したサービスの削除を確認します。

  4. 変更内容を保存します。


注意:

アプリケーション・ナビゲータでは、アダプタ・サービスを削除しないでください。

6.8.4 アダプタ・サービス追加時の処理内容

新規アダプタ・サービスを追加するための情報の指定が完了すると、「設計」タブにアダプタ・サービス・アイコンが表示されます。また、アプリケーション・ナビゲータでは、ESBプロジェクトの「リソース」フォルダにサービス定義ファイルが表示されます。 アプリケーション・ナビゲータのアダプタ・エントリの名前には、ESBシステム名、アダプタ名および拡張子esbsvcが含まれ、system-name_service-name.esbsvcの形式で表示されます。 Oracle JDeveloper ESB Designerでは、サービス定義ファイルの実際のソースは表示されません。

サービスのWSDLファイルがservice_name.wsdlの形式で作成され、アプリケーション・ナビゲータに表示されます。 WSDLファイルは、このインスタンス・フローの入出力メッセージ、サポートされているクライアント・インタフェースと操作、およびその他の機能を定義します。 例6-2は、アダプタWSDLファイルのサンプルです。

例6-2 アダプタWSDLファイルのサンプル

<definitions
     name="USPSShipment"
     targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/file/USPSShipment/"
     xmlns="http://schemas.xmlsoap.org/wsdl/"
     xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/file/USPSShipment/"
     xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
     xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
     xmlns:imp1="http://www.globalcompany.com/ns/USPSShipment"
     xmlns:hdr="http://xmlns.oracle.com/pcbpel/adapter/file/"
    >
    <import namespace="http://xmlns.oracle.com/pcbpel/adapter/file/"
 location="fileAdapterOutboundHeader.wsdl"/>
    <types>
      <schema xmlns="http://www.w3.org/2001/XMLSchema" >
        <import namespace="http://www.globalcompany.com/ns/USPSShipment" schemaLocation="USPSShipment.xsd" />
      </schema>
    </types>
    <message name="shipment_msg">
        <part name="shipment" element="imp1:shipment"/>
    </message>
    <portType name="Write_ptt">
        <operation name="Write">
            <input message="tns:shipment_msg"/>
        </operation>
    </portType>
    <binding name="Write_binding" type="tns:Write_ptt">
    <jca:binding  />
        <operation name="Write">
      <jca:operation
          PhysicalDirectory="C:\SOAFilesOut"
          InteractionSpec="oracle.tip.adapter.file.outbound.FileInteractionSpec"
          FileNamingConvention="shipment_%SEQ%.txt"
          NumberMessages="1"
          OpaqueSchema="false" >
      </jca:operation>
      <input>
        <jca:header message="hdr:OutboundHeader_msg" part="outboundHeader"/>
      </input>
        </operation>
    </binding>
    <service name="USPSShipment">
        <port name="Write_pt" binding="tns:Write_binding">
      <jca:address location="eis/FileAdapter" />
        </port>
    </service>
  <plt:partnerLinkType name="Write_plt" >
    <plt:role name="Write_role" >
      <plt:portType name="tns:Write_ptt" />
    </plt:role>
  </plt:partnerLinkType>
</definitions>

アダプタ・サービスに対して作成される標準的なヘッダー・ファイルの書式は、サービスがインバウンドかアウトバウンドかに応じて、adapter_typeAdapterOutboundHeader.wsdlまたはadapter_typeAdapterInboundHeader.wsdlになります。 adapter_typeは、アダプタのタイプ(例: DBfilejms)を指定します。 例6-2は、アダプタ・ヘッダー・ファイルのサンプルです。

例6-3 アダプタ・ヘッダー・ファイルのサンプル

definitions
     name="fileAdapter"
     targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/file/"
     xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/file/"
     xmlns="http://schemas.xmlsoap.org/wsdl/" >
    <types>
        <schema attributeFormDefault="qualified" elementFormDefault="qualified"
                targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/file/"
                xmlns="http://www.w3.org/2001/XMLSchema"
                xmlns:FILEAPP="http://xmlns.oracle.com/pcbpel/adapter/file/">
            <element name="OutboundFileHeaderType">
                <complexType>
                    <sequence>
                        <element name="fileName" type="string"/>
                    </sequence>
                </complexType>
            </element>
        </schema>
    </types>
    <!-- Header Message -->
    <message name="OutboundHeader_msg">
      <part element="tns:OutboundFileHeaderType" name="outboundHeader"/>
   </message>
</definitions>

ESBプロジェクトがESBサーバーに登録されると、Oracle JDeveloper ESB Designerで作成したアダプタ・サービスのESBファイルがデザインタイム・メタデータ・サーバーにデプロイされます。 第6.2.1項「Oracle Enterprise Service Busフロー作成時の処理内容」を参照してください。

6.8.5 実行時の処理内容

実行時に、インバウンド・アダプタ・サービスが外部ソースからメッセージ・インスタンスを受信し、そのメッセージを処理するESBルーティング・サービスに送信します。

あるいは、アウトバウンド・アダプタ・サービスがESBルーティング・サービスからメッセージ・インスタンスを受信し、そのメッセージを外部ソースに送信します。