この章では、SOAガバナンスの観点から、SAPとOracle Enterprise Repositoryを統合することによって、SAPアプリケーションおよびプラットフォームから使用できるサービスの可視性を向上させる方法について説明します。
この章では、次の項目について説明します。
SOAガバナンスの主な目標は、異なる開発プラットフォームに組み込まれた、複数のパッケージ化されたカスタム・アプリケーションにある異なるサービス間の可視性と制御を提供することです。SAPでは、SAPのパッケージ・アプリケーションとNetWeaverミドルウェア・プラットフォームの両方を提供しています。主な目標は、SAPアプリケーションおよびプラットフォームから使用できるサービスの可視性を提供することです。これらのサービスは、新しいコンポジット・アプリケーションの開発の一部として使用または再利用されます。また、Oracle Service Busによって使用され、SAPビジネス・サービス用のプロキシ・サービスを生成します。
SAPエンタープライズ・サービス・レジストリがSAP UDDIクライアントにサービスをデプロイし、そこから、 Oracle Enterprise RepositoryのExchange Utilityがサービス・アセットに接続および受信します。図12-1に、SAPエンタープライズ・レジストリとOracle Enterprise Repositoryの統合を示します。
新しいサービスがSAPで発行されるたびに、Oracle Enterprise Repositoryで作成された、対応するサービス・アセットと同期できます。SAPで実行中のサービス更新とOracle Enterprise Repositoryの対応するアセットを同期することもできます。Exchange Utilityを手動で実行すると、このような同期を行うことができます。その後、Oracle Enterprise Repositoryの他のアセットと同様に、SAPアセットを使用できるようになります。
SAPをOracle Enterprise Repositoryで構成する前に、次の前提条件が満たされていることを確認します。
SAPリポジトリとSAP UDDIレジストリが構成されている必要があります。
SAP環境が構成されている必要があります。
この項では、SAPアプリケーションとNetWeaverプラットフォームからOracle Enterprise Repositoryの可視性をサービスに提供するための詳細なユースケースについて説明します。これにより、サービスをIDE、JDeveloper、EclipseおよびVS .Netを介して使用できるようになります。
この項の内容は次のとおりです。
SAPアセットとOracle Enterprise Repositoryアセット間の分類を調整するには、次の手順を実行します。
XUフォルダからUDDIMappings.xmlファイルを開きます。SAPレジストリに従って、Oracle Enterprise RepositoryのXUマッピング・ファイルを構成する必要があります。
ファイルの下部までスクロールして、<tmodels>セクションを見つけ、次のようにtmodelkey
属性値を変更します。
<tmodels> <keyedReference tModelKey="uddi:bea.com:aleruuid" keyName="bea-com:aler:uuid" /> <keyedReference tModelKey="uddi:example.com:internalname" keyName="oracle-com:oer:internalname" /> <keyedReference tModelKey="uddi:example.com:version" keyName="oracle-com:oer:version" /> </tmodels>
UDDIMappings.xmlファイルを保存して閉じます。
SAPエンタープライズ・サービス・レジストリからOracle Enterprise Repositoryに選択したSAPサービス・アセットをエクスポートするには、次の手順を実行します。
SAPのサービスでOracle Enterprise Repositoryのブートストラップを実行します。これにより、SAPサービスがOracle Enterprise Repositoryに初期ロードされます。
Oracle Enterprise RepositoryとSAP UDDIの接続設定のためにorrxu.xmlを構成します。
XUの受信問合せ<registryQuery>を次のように構成します。
<services> <service name="%"/> </services>
これにより、SAP UDDIからOracle Enterprise Repositoryに、使用可能なすべての有効なサービスが初期ロードされます。Oracle Enterprise Repositoryにサービス・アセットとその関連アーティファクト・アセットが作成されます。
注意: 現在、コマンド・プロンプトからのみ、Exchange Utilityを実行してこれを行うことができます。 |
新しいサービスがSAP UDDIにデプロイされるたびに、Exchange Utilityツールを実行すると、Oracle Enterprise Repositoryでこれを受信できます。サービスの初期ロードがOracle Enterprise Repositoryに作成された後、定期的に、または新しいサービスがSAP UDDIに発行されるたびに、Exchange Utilityを実行できます。
SAPで作成されたサービス名がわかる場合、受信問合せ<registryQuery>
を構成してサービスを受信するサービス名を指定できます。また、問合せをservice name=”%”
として実行して新しいサービス・アセットをOracle Enterprise Repositoryで作成し、Oracle Enterprise Repositoryにある既存のサービスをSAPと再同期することもできます。
サービスがSAP UDDIで変更されるたびに、Oracle Enterprise Repositoryで作成された、対応するサービス・アセットと更新を同期する必要があります。コマンドラインからExchange Utilityを実行して、これを行うことができます。
<registryQuery>
のワイルドカード文字問合せをservice name=”%”
として使用し、Oracle Enterprise Repositoryの既存のサービスとSAPを再同期して、Oracle Enterprise Repositoryに新しいサービス・アセットを作成することによって、Exchange Utilityを定期的に実行できます。
注意: 現在、コマンド・プロンプトからのみ、Exchange Utilityを実行してこれを行うことができます。 |
SAPサービスがOracle Enterprise Repositoryに存在すると、IDEからSAPサービスを検索および使用でき、Oracle Enterprise Repositoryの他のアセットと同様に、Oracle Enterprise Repository WebコンソールからSAPアセットを使用できます。
図12-2に、SAPアセットがOracle Enterprise Repositoryに表示された場合のSAPアセットのイメージを示します。
図12-2 SAP Oracle Enterprise RepositoryにあるSAPアセット
IDEからのサービスの検索および使用の詳細は、11.1項「Oracle JDeveloperの使用」を参照してください。