この章では、WSILまたはUDDIレジストリからEnterprise ManagerのWebサービスおよびソースを登録する方法について説明します。また、登録されたリソースをUDDIレジストリで公開する方法についても説明します。内容は次のとおりです。
Webサービス・モデルの主要な機能は、Webサービスを幅広く使用可能かつ検出可能にする機能です。UDDIは、ビジネスとレジストリ内のサービスの情報を集中管理するWebサービスをパブリッシュおよび検出する方法の1つです。新しい別の標準として、Web Services Inspection Language (WSIL)仕様があります。
Oracle Enterprise Manager Fusion Middleware Controlで、WSILドキュメントおよびUDDI v3レジストリでパブリッシュされたWebサービスを登録できます。WSILドキュメントまたはUDDI v3レジストリで使用できる任意のサービスをEnterprise Manager内に登録できます。
Enterprise Manager内の登録済サービスをサービスのソースで管理しやすくするために、メタ情報またはプロファイルを登録することもできます。ソースを登録してそれに論理名を割り当てておくと、その後はWSDLのURLなどの接続情報を指定する必要がなくなります。ドメインは複数の登録済ソースを持つことができ、各登録済ソースが複数の登録済サービスを持つことができます。ソースを登録しておくと、そのソースに登録できるサービスを簡単に検索できるようになります。
サービス名と対応するWSDLは、単一の登録済ソース内で一意である必要があります。あるサービスを登録すると、それと同じ名前の別のサービス、または名前は異なるが同じWSDL URLの別のサービスを登録しようとすると無効になります。
Webサービスを登録しておくと、Enterprise Manager内の選択リストから簡単にサービスを参照できるようになります。たとえば、「第5章 Webサービスのテスト」の説明に従ってWebサービスをテストする場合、WSDLを指定するかわりに「検索」アイコンをクリックしてから、図9-1に示すように登録済サービスのリストからWSDLを選択します。
Universal Description Discovery & Integration (UDDI)は、ビジネスを迅速、簡単、かつ動的に検索し、そして相互の取引を実行可能にすることを目指す業界イニシアティブです。組み込まれるUDDIレジストリには、ビジネスに関するカタログ化された情報、その企業が提供するサービス、および取引の際に使用する通信規格とインタフェースが格納されます。
Webサービスのオーナーは、それらをUDDIレジストリにパブリッシュします。パブリッシュされると、Webサービスの説明およびサービスに対するポインタがUDDIレジストリに保持されます。UDDIにより、クライアントはこのレジストリを検索し、目的のサービスを見つけてその詳細を取得できます。これらの詳細には、サービスの起動ポイントを始め、サービスやその機能性を確認するための情報が含まれます。
WSILでは、Webサービスの説明の参照にExtensible Markup Language (XML)形式が定義されます。これらの参照はWSILドキュメントに含まれ、Webサービスの説明(WSDLファイルなど)およびWebサービスの他の集合(別のWSILドキュメントまたはUDDIレジストリなど)を参照します。
WSILドキュメントは、通常Webサービス・プロバイダによって配布されます。これらのドキュメントには、プロバイダのWebサイトで使用できるWebサービスを調べる方法が記載されています。このため、WSIL標準ではWebサービス・コンシューマ向けにWSILドキュメントを使用可能にするルールも定義されます。
WSILモデルは、Webサービスの検出を分散化します。複数のビジネス・エンティティおよびサービスに関する情報を集中管理するUDDIレジストリとは対照的に、WSILはWebサービスの記述情報をどの場所からでも提供できるようにします。UDDIとは異なり、WSILはビジネス・エンティティ情報には関係せず、特定のサービス記述形式を必要としません。ユーザーがサービス・プロバイダを理解していることが前提であり、WSDLなど、他の規格のWebサービス記述を使用します。
この項の手順に従って登録済ソースとWebサービスを表示および編集します。
ナビゲーション・ペインで「WebLogicドメイン」を開き、登録済ソースとWebサービスを表示するドメインを表示します。
ドメインを選択します。
Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図9-2に示すように、登録済ソースとサービスページが表示されます。
「ソース」表には、各登録済ソースに関する次の情報が表示されます。
名前: ソースの論理名
説明: ソースの説明
ソースURL: URL形式のソースの場所
タイプ - ソース・タイプ: UDDI v3レジストリ・インポート、ファイルからのWSILインポート、URLからのWSILインポート
ユーザーID: 外部ソースのユーザーID
「表示」メニューを使用して、表示される情報をカスタマイズできます。ページのこのセクションから、新しいソースの追加および編集、ソースの削除、ソースのWebサービスの登録、そしてソースから事前定義済UDDIレジストリへのWebサービスのパブリッシュを行うこともできます。
「ソース」表でソースを選択します。
各登録済ソースは複数の登録済サービスを持つことができます。「サービス」表には、選択したソース場所からインポートされた登録済サービスに関する次の情報が表示されます。
名前: 登録済サービスの名前
説明: サービスの説明
サービス場所: URL形式でのサービスの場所
「表示」メニューを使用して、表示される情報をカスタマイズできます。選択したサービスのWSDLを表示して、選択したWebサービスをテストすることもできます。
次のタイプのWebサービス・ソースを登録できます。
UDDI v3レジストリ・インポート
URLからのWSILインポート
ファイルからのWSILインポート
この項の手順に従ってソースを登録します。
ソースを登録する手順
ナビゲーション・ペインで「WebLogicドメイン」を開き、Webサービスのソースを登録するドメインを表示します。
ドメインを選択します。
Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図9-2に示すように、登録済ソースとサービスページが表示されます。
「追加」をクリックして新しいソースを登録します。図9-3に示すように、「新規ソースの登録」ページが表示されます。
新しいソースに関する次の情報を入力します。
名前: ソースの論理名。
説明: ソースの説明。
タイプ: UDDI v3レジストリ・インポート、URLからのWSILインポート、ファイルからのWSILインポートの3つのオプションからいずれかを選択します。
その他の入力する必要がある情報は、選択したオプションによって異なります。
UDDI v3レジストリ・インポートを選択した場合は、次の情報を入力します。
「ソースURL」フィールドに、UDDI照会URL、たとえばhttp://somehost/uddi/inquiry
を入力します。
サービスをUDDIソース(外部UDDIレジストリ)にパブリッシュできるようにするには、「有効化」ボックスを選択してフィールドに次のように入力します。
パブリッシュURLフィールドで、サービスのパブリッシュ先となるレジストリのURLロケーションを入力します。
「セキュリティURL」フィールドに、レジストリにアクセスするために必要なセキュリティ・ポートのURLロケーションを入力します。
「ユーザーID」および「パスワード」フィールドに、レジストリにアクセスするために必要なセキュリティ資格証明を入力します。
「URLからのWSILインポート」を選択した場合は、次の情報を入力します。
「ソースURL」フィールドに、WSILの場所をURL形式で入力します。
WSILにアクセスするためにユーザー名とパスワードが必要な場合は、Basic認証フィールドで「有効化」ボックスを選択します。「ユーザーID」および「パスワード」フィールドに、ユーザー名とパスワードを入力します。
「ファイルからのWSILインポート」を選択した場合は、「参照」(「WSILファイル」フィールドの横)をクリックしてインポートするWSILファイルを選択します。
「OK」をクリックしてソースを登録します。
登録済UDDIソースからWebサービスを登録するには、この項の手順に従います。
ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを登録するドメインを表示します。
ドメインを選択します。
Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図9-1に示すように、登録済ソースページが表示されます。
サービスの登録元となるUDDIソースを選択します。UDDIソースの「タイプ」は、UDDI v3レジストリ・インポートとして指定することに注意してください。
Webサービスの登録を選択します。
図9-4に示すように、「新規サービスの登録」ページが表示されます。
「新規サービスの登録」ページには、読取り専用形式のソース情報、および登録できるUDDIで使用可能なサービスのリストが表示されます。
サービス名および「サービス・キー」フィールドを使用して、表示される使用可能なサービスのリストをフィルタできます。たとえば、電卓(calculator)サービスを検索するには、サービス名フィールドにcalc
と入力します。電卓(calculator)サービスなど、文字列calc
を含むサービスのみが表示されます。検索では大文字と小文字は区別されません。
ページのUDDIで使用可能なサービスセクションで、サービス詳細の表示アイコンをクリックして、表内の各サービスのサービス詳細をUDDIから表示できます。UDDIからのサービス詳細ウィンドウには、特にサービス名、サービスの説明、サービスのWSDL、サービス・キー、ビジネス・キー、およびサービス場所などのサービスに関する情報が表示されます。
「編集」アイコンをクリックして、サービスの詳細を編集できます。これにより、選択したサービスの名前と説明を変更できます。
ページのUDDIで使用可能なサービスセクションで、ソースから登録する1つ以上のサービスを選択し、「登録」をクリックします。
サービスが正常に登録されたことを示す確認メッセージが表示されます。
登録済WSILソースからWebサービスを登録するには、この項の手順に従います。
ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを登録するドメインを表示します。
ドメインを選択します。
Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図9-1に示すように、登録済ソースとサービスページが表示されます。
サービスの登録元となるWSILソースを選択します。WSILソースの「タイプ」は、「ファイルからのWSILインポート」または「URLからのWSILインポート」として指定することに注意してください。
Webサービスの登録を選択します。
図9-5に示すように、「新規サービスの登録」ページが表示されます。
「新規サービスの登録」ページには、読取り専用形式のソース情報、およびWSILで使用可能なサービス表に示すように、登録できるWSILで使用可能なサービスのリスト(あれば)が表示されます。WSILにWSIL参照がある場合は、それらが「WSILで使用可能な参照」表にリストされます。
WSILで使用可能なサービス表で、「編集」アイコンをクリックして、サービスの詳細を編集できます。これにより、選択したサービスの名前と説明を変更できます。
現在のWSILから使用可能なサービスを登録するには、WSILで使用可能名サービス表でサービスを選択して、「登録」をクリックします。
サービスが正常に登録されたことを示す確認メッセージが表示されます。
現在のWSILが別のWSIL URLや参照も参照している場合は、「WSILで使用可能な参照」を開いて表示します。参照されているWebサービスも登録できます。
現在のWSILのかわりに参照されているWSILからサービスを登録するには、「WSILで使用可能な参照」表でその参照の「プロセス」アイコンをクリックします。
WSILが正常に解析されると、新しいソースが登録され、現在のWSILソースが参照されているWSILに置き換えられます。参照されているWSILソースで使用可能なサービスが、WSILで使用可能なサービス表にリストされます。これで参照されているWSILからサービスを登録できます。
注意: 作成された各新規ソースには、親ソース名に |
WSILが正常に解析されなかった場合は、エラー・メッセージが表示されます。通常そのような場合でも、選択されたWSIL参照に対して新しいソースは正常に登録されます。ただし、システムがWSILドキュメントを解析できなかったために、エラー・メッセージが表示されます。エラー・ダイアログを閉じて、「OK」をクリックして登録済ソースとサービスページに戻ります。
WSIL解析は、参照が不適切であるか認可証明書が必要な場合には失敗します。[ソースの登録]で説明されているように、WSILソースの認可を有効化できます。
注意: 接続やその他の不具合が原因で、システムが登録済ソースからのWebサービスの取得に失敗した場合は、「新規サービスの登録」ページにソースの読取り専用情報が表示されますが、Webサービスは表示されません。このような場合は、エラー・ダイアログが表示されている場合は、エラー・ダイアログで「OK」をクリックし、それから「新規サービスの登録」ページで「OK」をクリックして、ソースとサービスの登録ページに戻ります。問題解決方法として、他の方法により登録済ソースを表示します。たとえば、ソースのタイプに応じて、次の方法を実行します。
また、関連するEnterprise Managerエラー・ログを確認することもできます。 |
この項の手順に従ってWebサービスまたはWebサービス・ソースを削除します。
ナビゲーション・ペインで「WebLogicドメイン」を開き、Webサービスを削除するドメインを表示します。
ドメインを選択します。
Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図9-2に示すように、登録済ソースとサービスページが表示されます。
次のいずれかの操作を実行します。
ソースを削除するには、「ソース」表からソースを選択し、「削除」をクリックします。
確認メッセージが表示されます。「OK」をクリックしてソースを削除します。
サービスをソースから削除するには、「ソース」表からソースを選択します。
「サービス」表に登録済Webサービスが表示されます。
削除するサービスを「サービス」表から選択し、「削除」をクリックします。
確認メッセージが表示されます。「OK」をクリックしてサービスを削除します。
登録済のUDDIソースから、およびADF、Java EEの各アプリケーションの「Webサービスのサマリー」ページから、UDDIにWebサービスをパブリッシュできます。登録済UDDIソースは、登録済ソースとサービスページにリストされます。これにはドメインに登録されているすべてのソースとサービスが含まれます。「Webサービスのサマリー」ページには、アプリケーション内のWebサービスがリストされます。
注意: サービスをUDDIにパブリッシュするには、プロキシを使用する必要があります。これはファイアウォールより外側のURLにアクセスする必要があるためです。必要なプロキシ設定の詳細は、「UDDIのプロキシ・サーバーの構成」を参照してください。 サービスがすでにOracle Enterprise Repository (OER)に存在する場合、OER交換ユーティリティを使用してそれらのサービスをOracle Service Registryにパブリッシュする必要があります。 |
次の手順では、WebサービスをUDDIにパブリッシュする方法について説明します。
Webサービスを登録済ソースからUDDIにパブリッシュする手順
「登録済ソースとWebサービスの表示」の説明に従って、登録済ソースとサービスページに移動します。
「ソース」表でソース行を選択してから、「UDDIにパブリッシュ」を選択します。
サービスをUDDIにパブリッシュウィンドウで、パブリッシュするサービスに関する情報を入力します。
「サービス名」は、UDDIレジストリにパブリッシュされるWebサービスの名前です。このフィールドは必須です。
「サービスの説明」は、選択したWebサービスの説明です。
サービス定義の場所は、サービス定義のURLロケーションです。このフィールドは必須です。
UDDIソースは、サービスの登録元となるUDDIソースの名前です。これは読取り専用フィールドです。
「ビジネス名」は、UDDIレジストリ内のデータ構造の名前です。ビジネスがすでにUDDIに登録されていることが前提です。リストからビジネス名を選択します。このフィールドは必須です。
サービスをUDDIにパブリッシュウィンドウで「OK」をクリックします。
システムにより、指定されたサービスが有効なWSDLを持つこと、そしてUDDIレジストリが新しいエントリを受け入れたか既存のエントリを更新したことが検証されます。正常であれば、確認メッセージが表示され、サービスがレジストリにパブリッシュされます。サービスがUDDIにパブリッシュされると、「UDDIソースからのWebサービスの登録」の説明に従って、そのサービスをソースに登録できるようになります
操作中にエラーが発生すると、エラー・メッセージが出力されます。
ソースに登録できるのは、一意のWSDLを使用しているサービスのみであることに注意してください。
WebサービスをアプリケーションからUDDIにパブリッシュする手順
「アプリケーションのWebサービスのサマリー・ページの表示」で説明されているように、「Webサービス・のサマリー」ページに移動します。
ページの「Webサービスの詳細」セクションで、パブリッシュするサービスを選択します。
「アクション」→「UDDIにパブリッシュ」を選択します。詳細は、図9-8を参照してください。
サービスをUDDIにパブリッシュダイアログ・ボックス(図9-9)で、パブリッシュするサービスに関する情報を入力します。
「サービス名」は、UDDIレジストリにパブリッシュされるWebサービスの名前です。このフィールドは必須です。
「サービスの説明」は、選択したWebサービスの説明です。
サービス定義の場所は、サービス定義のURLロケーションにより事前に入力されています(これは読取り専用フィールドです)。
UDDIソースは、UDDIレジストリ・ソースの論理名です。リストからUDDIソースを選択します。このフィールドは必須です。
「ビジネス名」は、UDDIレジストリ内のデータ構造の名前です。ビジネスがすでにUDDIに登録されていることが前提です。リストからビジネス名を選択します。このフィールドは必須です。
「OK」をクリックして外部のUDDIレジストリに接続し、Webサービスを登録します。
サービスが正常に登録されると、確認メッセージが表示されます。操作中にエラーが発生すると、エラー・メッセージが出力されます。
サービスをUDDIにパブリッシュするには、ファイアウォールより外側のURLにアクセスするため、プロキシを使用する必要があります。
Oracle WebLogicを起動する前に、表9-1に定義されているJavaシステム・プロパティを設定する必要があります。これらは環境変数として設定するか、Oracle WebLogic起動ファイルの中で設定します。
表9-1 UDDIのプロキシ・サーバーを指定するために使用されるJavaシステム・プロパティ
プロパティ | 説明 |
---|---|
|
WebLogicプロキシ・プロパティを使用するかどうかを指定するフラグ。 |
|
プロキシ・サーバーを実行しているホスト・コンピュータの名前。 |
|
プロキシ・サーバーがリスニングしているポート。 |
|
プロキシを回避して直接到達する必要のあるホストのリスト。各ホスト名を「|」記号で区切ります。 |
次に例を示します。
set PROXY_SETTINGS="-DproxySet=true -Dhttp.proxyHost=www-proxy.example.com -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts=localhost|${HOST}|*.example.com"