![]() ![]() ![]() ![]() |
Universal Description, Discovery and Integration (UDDI) レジストリは、企業で Web サービスを共有するために使用されます。UDDI サービスを使用することで、企業はこれらの Web サービスを整理およびカタログ化し、企業内または信頼できる外部のパートナと共有および再利用することができます。
Web サービスの UDDI レジストリ サービスは、次の URL にある UDDI 仕様で定義されています。
UDDI レジストリは、この仕様に基づいています。この仕様には、UDDI を使用して Web サービスの情報をパブリッシュおよび検索する方法の詳細が記載されています。サービスの実行時の仕様は定義されません (単なるサービスのディレクトリです)。UDDI は、企業のビジネス、ビジネス サービス、および公開するサービスの技術的な詳細を分類するためのフレームワークを提供します。
レジストリへサービスをパブリッシュするには、サービス タイプと、レジストリ内でそのサービスを表すデータ構造の知識が必要です。レジストリ エントリには、特定のプロパティが関連付けられ、これらのプロパティ タイプはレジストリの作成時に定義されます。レジストリにサービスをパブリッシュして、他の組織がそのサービスを検出して使用できるようにすることが可能です。BEA AquaLogic Service Bus で開発されたプロキシ サービスは、UDDI レジストリにパブリッシュできます。AquaLogic Service Bus は、UDDI 3.0 準拠のレジストリに対応しています。BEA では、AquaLogic Service Registry を提供しています。
AquaLogic Service Bus で、AquaLogic Service Registry との Web ベース インタフェースを使用して、レジストリに簡単にアクセスして利用できます。AquaLogic Service Bus を UDDI と組み合わせて使用することにより、規格準拠の Web サービスの再利用が促進されます。このように、AquaLogic Service Bus レジストリ エントリは、複数のドメインで検索、検出、および使用できます。Web サービスと UDDI は一連の規格に基づいて構築されるため、再利用により、テストされ条件を満たした Web サービスやアプリケーション開発規格の使用が企業全体で促進されます。Web サービスとインタフェースは、タイプ、機能、または分類に応じてカタログ化すると、検索や管理がさらに容易になります。
UDDI は、HTTP、XML、XSD (XML スキーマ定義)、SOAP、WSDL など、確立された複数の業界標準に基づいています。UDDI 仕様の最新バージョンは、次の URL にあります。
UDDI 仕様には、Web サービスのレジストリとそのプログラムのインタフェースが記載されています。UDDI 自体が、Web サービスのセットです。UDDI 仕様は、以下に関する記述と検出をサポートするサービスを定義しています。
UDDI レジストリは、ビジネス サービスに関するデータとメタデータを格納します。これは、他のアプリケーションが検出および再利用できるように Web サービス情報をカタログ化および管理する、規格準拠のライブラリです。UDDI を使用することにより、コードの再利用が増えるなど、設計時にも実行時にも IT 管理者にとってさまざまな利点があります。開発者にも次のような利点があります。
UDDI は、特定のデータ モデルを使用して、組織とサービスを定義するエンティティを表します。図 7-2 は、異なる UDDI エンティティ間の関係を示します。
UDDI データ モデルと UDDI で使用されるエンティティの詳細については、BEA AquaLogic Service Registry 2.1 のユーザーズ ガイドの「Introduction to BEA AquaLogic Service Registry」を参照してください。
AquaLogic Service Bus で UDDI レジストリを使用するには、以下のタスクを実行しておく必要があります。
AquaLogic Service Bus は、UDDI (Universal Description, Discovery and Integration) バージョン 3 を完全準拠で実装したすべての UDDI レジストリと連携します。
AquaLogic Service Registry 2.1 は、バージョン 3 UDDI 準拠のレジストリであり、AquaLogic Service Bus との連携が確認されています。
UDDI レジストリのバージョン 3 実装を AquaLogic Service Bus と連携するように設定すると、AquaLogic Service Bus Console からアクセスできるようになります。使用できる機能は次のとおりです。
レジストリのコンフィグレーションと検索の方法、ビジネス サービスを AquaLogic Service Bus にインポートする方法、およびプロキシ サービスを UDDI レジストリにパブリッシュする方法の詳細については、『AquaLogic Service Bus Console の使い方』の「システムの管理」にある以下のトピックを参照してください。
BEA AquaLogic Service Registry は、UDDI のバージョン 3 実装に完全に準拠しており、サービス指向アーキテクチャ (SOA) の重要なコンポーネントです。
注意 : | AquaLogic Service Registry は、AquaLogic Service Bus には付属していません。AquaLogic Service Registry を使用する場合は、BEA から別途ライセンスを購入してください。 |
UDDI レジストリは、サービスの検索、サービスの呼び出し、およびサービスのメタデータ (セキュリティ、転送、またはサービス品質) の管理のための、規格準拠の基盤インフラストラクチャです。Registry Console を使用して、レジストリのコンテンツを参照およびパブリッシュできます。Registry Console は、管理者がレジストリ管理を行うための主要コンソールです。AquaLogic Service Registry コンソールを起動するには、Web ブラウザで http://hostname:port/uddi/web
を開きます。このホスト名とポートは、AquaLogic Service Registry のインストール時に定義されたものです。デフォルトのポートは 8080 です。AquaLogic Service Registry の管理 (特に、レジストリのコンフィグレーションや、パーミッション、承認、およびレプリケーションの管理) の詳細については、BEA AquaLogic Service Registry の管理者ガイドを参照してください。
UDDI を使用する利点を明確にする 2 つのビジネス シナリオの例を以下に示します。
このシナリオでは、AquaLogic Service Bus を使用して、レジストリからサービスをインポートし、そのサービスを AquaLogic Service Bus プロキシ サービスの一部として元のレジストリにパブリッシュする方法を説明します。
AquaLogic Service Bus に、UDDI レジストリからビジネス サービスをインポートします。メッセージ フローでビジネス サービスと通信するように、プロキシ サービスをコンフィグレーションします。プロキシ サービス自体を元のレジストリにパブリッシュし、他のドメインで使用できるようにすることが可能です。
このシナリオでは、AquaLogic Service Bus を使用するドメイン間デプロイメントについて説明します。あるドメインの AquaLogic Service Bus アプリケーションが、実行時に別のドメインにある別の AquaLogic Service Bus サービスにアクセスする必要があります。
2 つのドメインに、AquaLogic Service Bus のインスタンスがそれぞれデプロイされています。ドメイン (D1) に AquaLogic Service Bus プロキシ サービス (P1) がコンフィグレーションされています。ドメイン (D2) の AquaLogic Service Bus プロキシ サービス (P2) は、プロキシ サービス (P1) にアクセスする必要があります。ドメイン間で直接通信することができないため、D2 の P2 は D1 の P1 を検出できません。AquaLogic Service Bus のインポート/エクスポート機能では、別のドメインにあるサービスの実行時検出をサポートしていませんが、一般に公開されている UDDI レジストリにサービスをパブリッシュすることで、そのサービスがどのドメインにあっても検出できるようになります。P1 が UDDI レジストリに公開されると、実行時に呼び出したり (たとえば、株価を取得する)、他の AquaLogic Service Bus プロキシ サービスでビジネス サービスとしてインポートしたりできます。
別のドメインからインポート/エクスポートする場合は、ネットワーク接続が必要です。プロキシ サービスが、異なるドメインのリポジトリにあるスキーマを参照するとします。この場合、URL を使用してインポートするために、そのドメインに HTTP でアクセスできる必要があります。接続がない場合は、エラー メッセージが返されます。
AquaLogic Service Bus Console を使用して以下を行うことができます。
AquaLogic Service Bus で UDDI を使用するための一般的なワークフローは次のとおりです。
UDDI レジストリをコンフィグレーションし、AquaLogic Service Bus で使用できるようにしたら、AquaLogic Service Bus プロキシ サービスをパブリッシュしたり、レジストリからビジネス サービスをインポートして、プロキシ サービスで使用したりできます。レジストリのコンフィグレーションは、AquaLogic Service Bus Console の AquaLogic Service Bus アクティブ セッションで行います。
次の表は、UDDI レジストリのコンフィグレーションに必要なフィールドを示しています。
サービスを AquaLogic Service Registry にパブリッシュする場合、レジストリにアクセスするために、有効なユーザ名とパスワードで認証される必要があります。ユーザ名とパスワードの組み合わせは、サービス アカウント リソースとして AquaLogic Service Bus に実装されます。プロキシ サービスをコンフィグレーションする前に、サービス アカウントを定義しておく必要があります。これにより、プロキシ サービスをコンフィグレーションする際にサービスを使用できるように認証条件が設定されます。
複数のユーザ名とパスワードを使用してレジストリを設定できるため、サービス アカウントに基づいて、ユーザごとに異なるパーミッションを使用できます。AquaLogic Service Registry のパーミッションは、管理者がユーザの権限を BEA AquaLogic Service Registry で管理し、さまざまなユーザ タイプのニーズに合わせたビューをレジストリに作成できるようになっています。AquaLogic Service Bus に設定されたユーザ パーミッションによって、レジストリへのアクセス、レジストリのコンテンツ、および使用できる機能が規定されます。
AquaLogic Service Bus Console を使用して、プロキシ サービスを AquaLogic Service Registry にパブリッシュできます。このためには、AquaLogic Service Registry にアカウントを設定しておく必要があります。ローカル転送を使用するプロキシ サービスを除き、プロキシ サービスを UDDI レジストリにパブリッシュできます。表 7-3 に、サービスのタイプと転送方式を示します。
|
どのビジネス エンティティでサービスをパブリッシュするかを選択できます。ビジネス エンティティの管理 (エンティティの作成、取り消し、更新、削除など) は、レジストリ ベンダが提供する管理コンソール (AquaLogic Service Registry の場合は Business Service Console) を使用して行います。レジストリに初めてパブリッシュするときに、そのレジストリに tModel
をロードする必要があります。これは、AquaLogic Service Bus Console でパブリッシュの詳細をコンフィグレーションするときに行います。
UDDI レジストリへのパブリッシュ方法の詳細については、『AquaLogic Service Bus Console の使い方』の「システムの管理」にある「UDDI レジストリへのプロキシ サービスのパブリッシュ」を参照してください。
AquaLogic Service Bus では、UDDI バージョン 3 準拠のすべてのレジストリを使用できますが、AquaLogic Service Registry との連携しか確認されていません。
プロキシ サービスを作成するときに、デフォルト レジストリに自動的にパブリッシュできます。これを行うには、まずデフォルト レジストリを設定する必要があります。デフォルトは、プロキシ サービスを作成または変更するときに、パブリッシュ先となるレジストリです。個々のプロキシ サービスの自動パブリッシュ機能を有効または無効にするには、[プロキシ サービスの作成 - 全般的なコンフィグレーション] ページで [レジストリにパブリッシュ] の横にあるチェックボックスを使用します。デフォルト レジストリの設定方法の詳細については、『AquaLogic Service Bus Console の使い方』のデフォルト レジストリの設定を参照してください。
[プロキシ サービスの作成 - 全般的なコンフィグレーション] ページの [レジストリにパブリッシュ] を有効にすると、プロキシ サービスがデフォルト レジストリにパブリッシュされます。セッションをアクティブ化したときに、サービスがレジストリに自動的にパブリッシュされるのは、プロキシ サービスの [レジストリにパブリッシュ] チェックボックスを選択している場合のみです。レジストリが使用できない場合、バックグラウンドでパブリッシュが再試行されます。プロキシ サービスにさらに変更を加えると、再試行がリセットされます。プロキシ サービスを UDDI にリパブリッシュすると、UDDI に定義されているプロキシ サービスの分類がすべて保持されます。
デフォルト レジストリを変更すると、自動パブリッシュが有効になっているすべてのプロキシ サービスが新しいデフォルト レジストリにパブリッシュされます。これで、最新のデフォルト レジストリで同期が行われます。プロキシ サービスが同期されていない場合、AquaLogic Service Bus Console コンソールには、そのプロキシ サービスの横に アイコンが表示されます。
注意 : | デフォルト レジストリを使用しているときに sbconfig.jar をインポートすると、インポート中に sbconfig.jar のデフォルト レジストリに同じ論理名が設定されるため、ビジネス エンティティのデフォルト レジストリが誤った値になる可能性があります。この場合、自動パブリッシュされたプロキシ サービスがあると、[自動パブリッシュ状態] ページにエラーが表示されることがあります。デフォルト レジストリを再度選択すると、これを修正できます。 |
レジストリにあるサービスを AquaLogic Service Bus ビジネス サービスとしてインポートできます。WSDL ベースのサービスをインポートする場合、複数の UDDI バインディング テンプレートがあると、AquaLogic Service Bus はバインディング テンプレートごとに異なるビジネス サービスを作成します。
AquaLogic Service Bus のレジストリにアクセスできるのは、UDDI レジストリに対する AquaLogic Service Bus システム管理権限を持つユーザです。レジストリのエントリは、自動的に AquaLogic Service Bus Console の [インポート] ページに表示されます。インポートする場合、利用できるレジストリのリストから選択します。レジストリのサービスを検出するには、特定のレジストリに問い合わせを行う必要があります。レジストリのエントリはユニークです。サービスをインポートするために使用するレジストリを指定する場合に、このクエリを実行します。
UDDI レジストリから AquaLogic Service Bus にインポートできるビジネス サービスのタイプは次のとおりです。
AquaLogic Service Bus Console で UDDI レジストリからサービスをインポートする方法については、『AquaLogic Service Bus Console の使い方』の「システムの管理」にある「UDDI レジストリからのビジネス サービスのインポート」を参照してください。
サービスが更新された場合、最新バージョンを取得するには、レジストリからサービスを再度インポートする必要があります。
サービスにはドキュメントが関連付けられており、これらのドキュメントには他のいくつかのドキュメント (スキーマ、ポリシーなど) が含まれる場合があります。インポートでは、UDDI レジストリはサービスの照会 URL に基づいてドキュメントの場所を示します。他のリソースを含むドキュメント、または他のリソースを参照するドキュメントが検索された場合は、参照されているすべての情報と含まれている各項目は個別のリソースとして AquaLogic Service Bus に追加されます。
レジストリのサービスを検索する条件として、ビジネス エンティティとパターンを使用します。たとえば、サービスを検索する場合、「foo%
」と入力できます。AquaLogic Service Bus によってパブリッシュされたサービスには、サービスを識別する固有の tmodel
キーがあり、レジストリのサービスを検索するときに使用されます。
インポートするときにレジストリからビジネス エンティティのリストを取得しようとすると、自動的にレジストリに接続します。ビジネス エンティティがレジストリの構成の最上位ですが、他にもビジネス、アプリケーション タイプなどの検索条件を使用できます。認証が必要な場合は、システム管理者からユーザ名とパスワードを入手する必要があります。
http://www.oasis-open.org/committees/uddi-spec/doc/tns.htm
を参照。Using WSDL in a UDDI Registry に関する注記が重要です。http://uddi.org/solutions.html
の OASIS UDDI ソリューション ページを参照。
http://www.oasis-open.org/committees/uddi-spec/doc/tcspecs.htm
自動インポート機能を使用すると、AquaLogic Service Registry からインポートしたビジネス サービスとレジストリ内の対応するサービスを同期できます。自動インポートの使用方法の詳細については、『AquaLogic Service Bus Console の使い方』の自動インポートを参照してください。自動インポートを使用すると、次の操作を実行できます。
レジストリからインポートしたサービスを同期できます。レジストリ内のサービスを変更した場合に、AquaLogic Service Bus Console のサービスとレジストリ内のサービスを同期できます。次の使用例で、同期のプロセスを説明します。ビジネス サービスがレジストリから切り離されていない場合、AquaLogic Service Bus はレジストリ内のサービスへの変更を自動的にサブスクライブします。サービスが変更された場合、リソース ブラウザおよびプロジェクト エクスプローラの アイコンによって、同期が必要なサービスが示されます。また、[自動インポート状態] ページにこのサービスが表示され、サービスを同期したりレジストリからサービスを切り離すためのオプションが使用できるようになります。サービスを同期すると、セマンティクス検証エラーが発生し、[衝突の表示] ページに表示される場合があります。これらは、セッションをアクティブ化する前に、手動で修正する必要があります。
サービスが同期されている場合、サービスは UDDI から取得されるフィールドでのみ更新されます。サービス定義の他のフィールドでは、最後のインポート以降に変更を行うと値が保持されます。
サービスを Domain1 (図 7-5 を参照) からレジストリにパブリッシュするというシナリオを考えてみます。これらのサービスを別のドメインである Domain2 にインポートします。Domain1 の該当するサービスを変更し、レジストリで変更したサービスを更新します。自動インポートを使用して、変更したサービスとレジストリを同期することで、Domain2 のサービスを更新できます。
AquaLogic Service Bus Console のサービスとレジストリ内の該当するサービスを同期しない場合、レジストリからサービスを切り離すと、同期を回避できます。切り離しの使用方法の詳細については、『AquaLogic Service Bus Console の使い方』の「システムの管理」にある「サービスの切り離し」を参照してください。
AquaLogic Service Bus プロキシ サービスの属性が、UDDI レジストリでサポートされるデータ モデルにマップされる必要があります。これによって、プロキシ サービスを UDDI ビジネス エンティティとしてパブリッシュできます。次の表は、AquaLogic Service Bus プロキシ サービスの UDDI レジストリ マッピングに関連する、サービス タイプ、メッセージ タイプ、および転送方式を示します。
注意 : | 括弧内の部分はオプションです。メッセージング サービスでは、要求と応答のコンテンツが異なる場合や、応答がない場合 (一方向のメッセージ) があります。電子メール、ファイル、および FTP は一方向であることが必要です。 |
プロキシ サービスは共通の属性を持ちます。また、サービスやサービスのタイプで使用される転送プロトコルによって固有に定義される属性もあります。各プロキシ サービスは、特定のタイプのメッセージを配信できます。
図 7-6 は、WSDL ベースのサービスが UDDI ビジネス エンティティにマップされる仕組みを示します。
WSDL ベースのプロキシ サービスを UDDI レジストリにパブリッシュするためのベースとして、http://www.oasis-open.org/committees/uddi-spec/doc/tns.htm
にある技術ノート「Using WSDL in a UDDI Registry, Version 2.0.2」が使用されています。このドキュメントは、WSDL ベース以外のサービスをパブリッシュするための基準としても使用されます。このドキュメントと、ベースとなる UDDI 仕様は、UDDI エンティティの記述に使用される標準技術モデル (tModels
) を記述しています。AquaLogic Service Bus プロキシ サービスを UDDI レジストリのエンティティとしてパブリッシュするには、AquaLogic Service Bus 固有の構成要素の一部をサポートするために、標準の tModel を追加する必要があります。サービスの検索時に、AquaLogic Service Bus プロキシ サービスのすべての属性 (サービスのタイプや転送の詳細など) が役立つわけではありません。これらの属性は、サービスを分類するものではありません。tmodels
は、検出されたサービスのコンフィグレーションの詳細です。これらのコンフィグレーションの詳細は、ビジネス サービスのバインディング テンプレートの tmodelinstanceDetails
セクションにマップされます。その他の属性は、サービスを個別に識別するものであり、サービスの検索条件として使用できます。これらの属性は、キー付き参照を使用して、バインディング テンプレートの categoryBag
の値と共に tModels
にマップされます。
AquaLogic Service Bus から UDDI へのマッピングの例を図 7-7 に示します。
AquaLogic Service Bus プロキシ サービスの概要情報は、以下のようにビジネス サービスにマップされます。
businessService
要素にマップされる。uddi:bea.com:attributes:aqualogicservicebus
はキーの一例です。keyedReferences
にマップされる。uddi:bea.com:servicetype
はキーの一例です。keyedReferenceGroup
(名前 = "AquaLogicServiceBus
"、値 = AquaLogic Service Bus インスタンスの URL) 内の keyedReference
にマップされる。
コード リスト 7-1 は、プロキシ サービスの概要情報のビジネス サービスへのマッピングを示しています。
<keyedReferenceGroup tModelKey="uddi:bea.com:servicebus:properties">
<keyedReference tModelKey="uddi:bea.com:servicebus:servicetype"
keyName="Service Type"
keyValue="SOAP"/>
<keyedReference tModelKey="uddi:bea.com:servicebus:instance"
keyName="Service Bus Instance"
keyValue="http://FOO02.amer.bea.com:7001"/>
</keyedReferenceGroup>
注意 : | プロキシ サービスをパブリッシュするときに作成される businessService のキーは、パブリッシュする側が割り当てたキー名です。これは、AquaLogic Service Bus のドメイン名、プロキシ サービスのパス、およびプロキシ サービス名から生成されます。形式は次のようになります。 |
注意 : | uddi:bea.com:servicebus:< domainname >:< path >:< servicename > . |
注意 : | たとえば、AquaLogic Service Bus ドメインである AnonESBan に Proxy というプロジェクトがあるとします。このプロジェクトに Accounting というフォルダがあり、このフォルダには PayoutProxy というプロキシ サービスが格納されています。PayoutProxy を UDDI にパブリッシュする場合、businessService は次のキーで作成されます。 |
注意 : | uddi:bea.com:servicebus:AnonESB:Proxies:Accounting:PayoutProxy. |
AquaLogic Service Bus プロキシ サービスの詳細情報は、以下のようにバインディング テンプレートにマップされます。
コード リスト 7-2 は、詳細情報のバインディング テンプレートへのマッピングを示しています。
<bindingTemplate bindingKey="uddi:" serviceKey="uddi:">
<accessPoint useType="endPoint">file:///c:/temp/in3</accessPoint>
<tModelInstanceDetails>
<tModelInstanceInfo tModelKey="uddi:uddi.org:transport:file">
<InstanceDetails>
<InstanceParms><ALSBInstanceParms xmlns="http://www.bea.com/wli/sb/uddi">
<property name="fileMask" value="*.*"/>
<property name="sortByArrival" value="false"/> </ALSBInstanceParms>
</InstanceParms>
</InstanceDetails>
</tModelInstanceInfo>
<tModelInstanceInfo tModelKey="uddi:bea.com:servicebus:protocol:
messagingservice">
<InstanceDetails>
<InstanceParms><ALSBInstanceParms xmlns="http://www.bea.com/wli/sb/uddi">
<property name="requestType" value="XML"/>
<property name="RequestSchema" value="http://domain.com:7001
/sbresource?SCHEMA%2FDJS%2FOAGProcessPO"/>
<property name="RequestSchemaElement"
value="PROCESS_PO"/>
<property name="responseType" value="None"/></ALSBInstanceParms>
</InstanceParms>
</InstanceDetails>
</tModelInstanceInfo>
</tModelInstanceDetails>
</bindingTemplate>
uddi:uddi.org:transport: *
グループの転送のタイプごとに、異なる詳細メタデータのセットが含まれます (「表 7-4 プロキシ サービスの属性とサービスのタイプ」を参照)。このメタデータは、プロキシ サービスの転送のコンフィグレーション詳細を示します。これは、サービスの特徴を示したりサービスを問い合わせたりする場合に役立つものではありませんが検出されたサービスにアクセスするときにこのデータが必要になります。メタデータは XML 文字列で表され、tModelInstanceInfo
の instanceParms
フィールドに格納されます。
たとえば、HTTP 転送を使用するプロキシ サービスをマップし、HTTP コンフィグレーションの一部として、必要なクライアント認証や要求と応答の文字エンコーディングなどのコンフィグレーション詳細を記述する必要がある場合、bindingTemplate の tModelInstanceDetails
の内容は、コード リスト 7-3 の例のようになる必要があります。
<tModelInstanceDetails>
<tModelInstanceInfo tModelKey="uddi:uddi.org:transport:http">
<instanceDetails>
<instanceParms>
<ALSBInstanceParms xmlns="http://www.bea.com/wli/sb/uddi">
<property name="basic-auth-required" value="true"/>
<property name="request-encoding" value="iso-8859-1"/>
<property name="response-encoding" value="utf-8"/>
<property name="Scheme" value="http"/>
</ALSBInstanceParms>
</instanceParms>
</instanceDetails>
</tModelInstanceInfo>
</tModelInstanceDetails>
注意 : | 各転送方式のサービス エンドポイントは、必ず bindingTemplate の accessPoint フィールドに格納されます。 |
表 7-5 は、各転送方式で使用する tModelKey
と InstanceParms
を転送のタイプごとにまとめたものです。
|
表 7-6 は、各サービスのタイプの概要説明を示します。
|
|
tModelInstanceDetails に含まれる簡易マーカ プロトコル tModel によって、メッセージング サービスの属性が定義される。これは、新しい詳細な tModel である。他のサービス タイプとは異なり、メッセージング サービスには、要求および応答メッセージの詳細を示す追加のコンフィグレーション情報が関連付けられる。コンフィグレーション詳細は、tModelInstanceInfo 内の次の tModel 参照の InstanceParms データに、XML データとして表される。
|
AquaLogic Service Bus と UDDI のマッピングでは、AquaLogic Service Bus のメタデータと関係を表すいくつかの新しい標準 tModel
が採用されています。このマッピングをサポートするには、これらの tModel
を UDDI レジストリに登録する必要があります。管理者 ID を使用して、AquaLogic Service Registry にこれらの tModel
を作成できます。
要求がスキーマを持つ XML で、応答がテキスト メッセージである JMS 転送でコンフィグレーションされたメッセージング サービスのマッピング例を以下に示します。
<businessService
serviceKey="uddi:bea.com:servicebus:Domain:Project:JMSMessaging"
businessKey="uddi:9cb77770-57fe-11da-9fac-6cc880409fac"
xmlns="urn:uddi-org:api_v3">
<name>JMSMessagingProxy</name>
<bindingTemplates>
<bindingTemplate
bindingKey="uddi:4c401620-5ac0-11da-9faf-6cc880409fac"
serviceKey="uddi:bea.com:servicebus:
Domain:Project:JMSMessaging">
<accessPoint useType="endPoint">
jms://server.com:7001/weblogic.jms.XAConnectionFactory/
ReqQueue
</accessPoint>
<tModelInstanceDetails>
<tModelInstanceInfo tModelKey="uddi:uddi.org:transport:jms">
<instanceDetails>
<instanceParms>
<ALSBInstanceParms
xmlns="http://www.bea.com/wli/sb/uddi"><property name="is-queue" value="true"/>
<property name="request-encoding"
value="iso-8859-1"/>
<property name="response-encoding"
value="utf-8"/>
<property name="response-required"
value="true"/>
<property name="response-URI"
value="jms://server.com:7001/
.jms.XAConnectionFactory/
RespQueue"/>
<property name="response-message-type"
value="Text"/>
<property name="Scheme" value="jms"/>
</ALSBInstanceParms>
</instanceParms>
</instanceDetails>
</tModelInstanceInfo>
<tModelInstanceInfo
tModelKey="uddi:bea.com:servicebus:
protocol:messagingservice">
<instanceDetails>
<instanceParms>
<ALSBInstanceParms xmlns=
"http://www.bea.com/wli/sb/uddi">
<property name="requestType" value="XML"/>
<property name="RequestSchema"
value="http://server.com:7001/
sbresource?SCHEMA%2FDJS%2FOAGProcessPO"/>
<property name="RequestSchemaElement"
value="PROCESS_PO_007"/>
<property name="responseType" value="Text"/>
</ALSBInstanceParms>
</instanceParms>
</instanceDetails>
</tModelInstanceInfo>
</tModelInstanceDetails>
</bindingTemplate>
</bindingTemplates>
<categoryBag>
<keyedReferenceGroup tModelKey="uddi:bea.com:servicebus:properties">
<keyedReference tModelKey="uddi:bea.com:servicebus:servicetype"
keyName="Service Type"
keyValue="Mixed" />
<keyedReference tModelKey="uddi:bea.com:servicebus:instance"
keyName="Service Bus Instance"
keyValue="http://cyberfish.bea.com:7001" />
</keyedReferenceGroup>
</categoryBag>
</businessService>
![]() ![]() ![]() |