Oracle® Fusion Middleware Oracle WebLogic Server JAX-RPC を使用した Web サービスの高度な機能のプログラミング 11g リリース 1 (10.3.1) B55544-01 |
|
戻る |
次へ |
この章では、UDDI レジストリを通じての Web サービスのパブリッシュと検索に関する情報を提供します。
注意 : このリリースでは、UDDI v2.0 レジストリと UDDIExplorer アプリケーションは非推奨となっています。カスタマに、SOA の表示と管理を提供する Oracle エンタープライズ リポジトリまたは Oracle サービス レジストリにアップグレードすることについて考慮することをお勧めします。詳細については、http://www.oracle.com/technologies/soa/docs/enterprise-repository-svc-registry-datasheet.pdf を参照してください。 |
UDDI とは、Universal Description, Discovery, and Integration の略です。UDDI プロジェクトは、企業が互いに迅速、簡潔、動的にトランザクションを検索および実行できるようにするための業界イニシアティブです。
UDDI レジストリには、ビジネス、ビジネスが提供するサービス、およびビジネスがトランザクションを実行するために使用する通信規格とインタフェースに関する情報がカタログ化されて格納されます。
UDDI は SOAP (Simple Object Access Protocol) データ通信規格に基づいて構築されており、グローバルでプラットフォームに依存しないオープンなアーキテクチャを実現して企業にメリットをもたらします。
UDDI レジストリは、次の 2 つのカテゴリに大別できます。
UDDI と Web サービス
UDDI とビジネス レジストリ
UDDI のデータ構造の詳細については、「UDDI のデータ構造」を参照してください。
Web サービスの所有者は、それらのサービスを UDDI レジストリにパブリッシュします。パブリッシュすると、UDDI レジストリには Web サービスの説明と Web サービスのポインタが保持されます。
UDDI を使用すると、クライアントはこのレジストリを検索し、目的のサービスを見つけてその詳細を取得できます。これらの詳細には、サービスの呼び出しポイントのほかに、サービスとその機能を識別するための情報が含まれます。
Web サービス機能は、プログラミング インタフェースを介してエクスポーズされ、一般に WSDL (Web Services Description Language) を介して記述されます。一般的な公開と照会のシナリオでは、プロバイダがそのビジネスをパブリッシュし、その下にサービスを登録し、バインディング テンプレートにその Web サービスの技術情報を定義します。バインディング テンプレートには、1 つまたは複数の tModel への参照も保存されます。tModel は、Web サービスによって実装される抽象的なインタフェースを表します。tModel は、プロバイダによって独自にパブリッシュされている場合があります。これらの tModel には、インタフェースと WSDL ドキュメントの URL 参照に関する情報が格納されています。
一般的なクライアントの照会の目的は、次の 2 つのうちのいずれかです。
既知のインタフェースの実装を検索する。この場合、クライアントは tModel ID を持っており、その Model を参照するバインディング テンプレートを検索します。
既知のバインディング テンプレート ID の呼び出しポイント (アクセス ポイント) の更新値を検索する。
ビジネス レジストリ ソリューションとしての UDDI を使用すると、企業は自社のビジネス製品およびサービス、さらに Web でのビジネス トランザクションの実行方法を公開できます。このように UDDI を使用することにより、企業間 (B2B) 電子商取引が補完されます。
ビジネスをパブリッシュするために必要な情報は、1 つのビジネス名だけです。パブリッシュされたビジネス エンティティの詳細な記述には、さまざまな情報が含まれます。こうした情報はすべて、ビジネス エンティティとその製品およびサービスを、正確に、そしてアクセス可能な形式で公開するのに役立ちます。
ビジネス レジストリには、次の要素が含まれます。
ビジネス ID - ビジネスの複数の名前と説明、連絡先、および標準の ID (納税者番号など) です。
カテゴリ - 標準のカテゴリ情報 (D-U-N-S ビジネス カテゴリ番号など) です。
サービスの記述 - サービスの複数の名前と説明です。サービス情報のコンテナとして、企業はさまざまなサービスを公開しつつ、サービスの所有権を明確に表示できます。bindingTemplate
情報は、サービスへのアクセス方法を説明するものです。
規格への準拠 - 場合によっては、各種規格への準拠を指定することが重要となります。これらの規格には、サービスの使い方に関する詳細な技術要件が示されます。
カスタム カテゴリ - ビジネスまたはサービスを識別または分類する独自仕様 (tModels) をパブリッシュできます。
UDDI のデータ構造は、businessEntity
、businessService
、bindingTemplate
、tModel
という 4 つの構造で構成されています。
次の表に、Web サービスまたはビジネス レジストリ アプリケーションで使用する場合のこれらの構造の相違点を示します。
表 11-1 UDDI のデータ構造
データ構造 | Web サービス | ビジネス レジストリ |
---|---|---|
businessEntity |
Web サービス プロバイダを表す。
|
企業、またはその事業部または部門を表す。
|
businessService |
1 つまたは複数の Web サービスの論理グループ。 単一名の API。子要素として格納され、上記の名前のビジネス エンティティによって保持される。 |
単一の
|
bindingTemplate |
単一の Web サービス。 対象 Web サービスにバインドして対話するためにクライアント アプリケーションが必要とする技術情報。 アクセス ポイント (Web サービスを呼び出す URI) を含む。 |
追加の規格準拠インスタンス。 URL 形式のサービス アクセス ポイント、電話番号、電子メール アドレス、ファックス番号など。 |
tModel |
技術仕様 (通常は仕様のポインタ)、または仕様ドキュメントに関するメタデータ (実際の仕様を指す名前および URL など) を表す。Web サービスのコンテキストでは、実際の仕様ドキュメントは WSDL ファイルで表される。 |
普及しているか、またはユーザが特定用途のために登録した標準または技術仕様を表す。 |
WebLogic Server は、以下の UDDI 機能を提供します。
UDDI 2.0 サーバ
UDDI ディレクトリ エクスプローラ
UDDI クライアント API
プラガブル tModel
UDDI 2.0 サーバは WebLogic Server の一部であり、WebLogic Server の起動時に自動的に起動されます。UDDI サーバは、UDDI 2.0 サーバ仕様 (http://www.uddi.org/specification.html) を実装しています。
UDDI 2.0 サーバをコンフィグレーションするには、次の手順に従います。
WebLogic Server を停止します。
WL_HOME
/server/lib
ディレクトリの uddi.properties
ファイルを更新します。WL_HOME
は、WebLogic Server のメイン インストール ディレクトリです。
注意 : WebLogic Server ドメインを作成したユーザが WebLogic Server をインストールしたユーザと異なる場合は、WebLogic Server 管理者はuddi.properties ファイルのパーミッションを変更してすべてのユーザがアクセスできるようにする必要があります。 |
Weblogic Server を再起動します。
WebLogic Server の実行中は uddi.properties
ファイルを編集しないでください。このファイルを修正したことで UDDI サーバが正常に起動しなくなった場合は、WL_HOME
/server/lib/uddi.properties.booted
ファイルの前回の正常なコンフィグレーションを参照してください。
コンフィグレーションをデフォルトに回復するには、uddi.properties
ファイルを WL_HOME
/server/lib
ディレクトリから削除します。このファイルは、バックアップ用のディレクトリに移動するよう Oracle で推奨されています。新しい uddi.properties
ファイルが作成され、正常に起動されたときに uddi.properties.booted
ファイルが上書きされるためです。 プロパティ ファイルを削除したら、サーバを再起動します。最低限のデフォルト プロパティがロードされ、新しい uddi.properties
ファイルに書き込まれます。
以下の節では、uddi.properites
ファイルに追加できる UDDI サーバ プロパティについて説明します。プロパティのリストは、コンポーネント、用途、および機能に従って分類されています。常にすべてのプロパティが必要というわけではありません。
UDDI 2.0 サーバは、組み込み LDAP サーバで自動的にコンフィグレーションされます。しかし、この節の以下の手順によって、外部 LDAP サーバをコンフィグレーションすることもできます。
注意 : 現時点では、WebLogic Server は UDDI 2.0 サーバで使用するものとして、SunOne Directory Server のみをサポートしています。 |
UDDI で使用する SunOne Directory Server をコンフィグレーションするには、次の手順に従います。
LDAP_DIR
/Sun/MPS/slapd-
LDAP_INSTANCE_NAME
/config/schema
ディレクトリ内に 51acumen.ldif
というファイルを作成します。LDAP_DIR
は、SunOne Directory Server のインストール先のルート ディレクトリ、LDAP_INSTANCE_NAME
はインスタンス名を表します。
「51acumen.ldif ファイルのコンテンツ」で説明するコンテンツを使って、51acumen.ldif
ファイルを更新します。
SunOne Directory Server を再起動します。
WebLogic UDDI 2.0 サーバの uddi.properties
ファイルに以下のプロパティを追加して、更新します。
datasource.ldap.manager.password datasource.ldap.manager.uid datasource.ldap.server.root datasource.ldap.server.url
プロパティの値は、SunOne Directory Server のコンフィグレーションに応じて異なります。次の例では、デフォルト値を使用するコンフィグレーションとして考えられるものを示します。
datasource.ldap.manager.password=password datasource.ldap.manager.uid=cn=Directory Manager datasource.ldap.server.root=dc=beasys,dc=com datasource.ldap.server.url=ldap://host:port
これらのプロパティについては、表 11-1 を参照してください。
Weblogic Server を再起動します。
以下のコンテンツを使用して、51acumen.ldif
ファイルを作成します。
dn: cn=schema # # attribute types: # attributeTypes: ( 11827.0001.1.0 NAME 'uddi-Business-Key' DESC 'Business Key' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.1 NAME 'uddi-Authorized-Name' DESC 'Authorized Name for publisher of data' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.2 NAME 'uddi-Operator' DESC 'Name of UDDI Registry Operator' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.3 NAME 'uddi-Name' DESC 'Business Entity Name' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.4 NAME 'uddi-Description' DESC 'Description of Business Entity' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.7 NAME 'uddi-Use-Type' DESC 'Name of convention that the referenced document follows' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.8 NAME 'uddi-URL' DESC 'URL' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.9 NAME 'uddi-Person-Name' DESC 'Name of Contact Person' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.10 NAME 'uddi-Phone' DESC 'Telephone Number' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{50} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.11 NAME 'uddi-Email' DESC 'Email address' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.12 NAME 'uddi-Sort-Code' DESC 'Code to sort addresses' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{10} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.13 NAME 'uddi-tModel-Key' DESC 'Key to reference a tModel entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.14 NAME 'uddi-Address-Line' DESC 'Actual address lines in free form text' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{80} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.15 NAME 'uddi-Service-Key' DESC 'Service Key' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.16 NAME 'uddi-Service-Name' DESC 'Service Name' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.17 NAME 'uddi-Binding-Key' DESC 'Binding Key' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.18 NAME 'uddi-Access-Point' DESC 'A text field to convey the entry point address for calling a web service' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.19 NAME 'uddi-Hosting-Redirector' DESC 'Provides a Binding Key attribute to redirect reference to a different binding template' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.20 NAME 'uddi-Instance-Parms' DESC 'Parameters to use a specific facet of a bindingTemplate description' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.21 NAME 'uddi-Overview-URL' DESC 'URL reference to a long form of an overview document' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.22 NAME 'uddi-From-Key' DESC 'Unique key reference to first businessEntity assertion is made for' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.23 NAME 'uddi-To-Key' DESC 'Unique key reference to second businessEntity assertion is made for' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.24 NAME 'uddi-Key-Name' DESC 'An attribute of the KeyedReference structure' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.25 NAME 'uddi-Key-Value' DESC 'An attribute of the KeyedReference structure' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.26 NAME 'uddi-Auth-Info' DESC 'Authorization information' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{4096} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.27 NAME 'uddi-Key-Type' DESC 'The key for all UDDI entries' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.28 NAME 'uddi-Upload-Register' DESC 'The upload register' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.29 NAME 'uddi-URL-Type' DESC 'The type for the URL' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.30 NAME 'uddi-Ref-Keyed-Reference' DESC 'reference to a keyedReference entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.31 NAME 'uddi-Ref-Category-Bag' DESC 'reference to a categoryBag entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.32 NAME 'uddi-Ref-Identifier-Bag' DESC 'reference to a identifierBag entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.33 NAME 'uddi-Ref-TModel' DESC 'reference to a TModel entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) # id names for each entry attributeTypes: ( 11827.0001.1.34 NAME 'uddi-Contact-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.35 NAME 'uddi-Discovery-URL-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.36 NAME 'uddi-Address-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.37 NAME 'uddi-Overview-Doc-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.38 NAME 'uddi-Instance-Details-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.39 NAME 'uddi-tModel-Instance-Info-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.40 NAME 'uddi-Publisher-Assertions-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.41 NAME 'uddi-Keyed-Reference-ID' DESC 'Unique ID which will serve as the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.42 NAME 'uddi-Ref-Attribute' DESC 'a reference to another entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.43 NAME 'uddi-Entity-Name' DESC 'Business entity Name' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.44 NAME 'uddi-tModel-Name' DESC 'tModel Name' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.45 NAME 'uddi-tMII-TModel-Key' DESC 'tModel key referneced in tModelInstanceInfo' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.46 NAME 'uddi-Keyed-Reference-TModel-Key' DESC 'tModel key referneced in KeyedReference' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.47 NAME 'uddi-Address-tModel-Key' DESC 'tModel key referneced in Address' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.48 NAME 'uddi-isHidden' DESC 'a flag to indicate whether an entry is hidden' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.49 NAME 'uddi-Time-Stamp' DESC 'modification time satmp' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.50 NAME 'uddi-next-id' DESC 'generic counter' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.51 NAME 'uddi-tModel-origin' DESC 'tModel origin' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.52 NAME 'uddi-tModel-type' DESC 'tModel type' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.53 NAME 'uddi-tModel-checked' DESC 'tModel field to check or not' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.54 NAME 'uddi-user-quota-entity' DESC 'quota for business entity' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.55 NAME 'uddi-user-quota-service' DESC 'quota for business services per entity' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.56 NAME 'uddi-user-quota-binding' DESC 'quota for binding templates per service' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.57 NAME 'uddi-user-quota-tmodel' DESC 'quota for tmodels' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.58 NAME 'uddi-user-quota-assertion' DESC 'quota for publisher assertions' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.59 NAME 'uddi-user-quota-messagesize' DESC 'quota for maximum message size' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.60 NAME 'uddi-user-language' DESC 'user language' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.61 NAME 'uddi-Name-Soundex' DESC 'name in soundex format' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' ) attributeTypes: ( 11827.0001.1.62 NAME 'uddi-var' DESC 'generic variable' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 X-ORIGIN 'acumen defined' ) # # objectclasses: # objectClasses: ( 11827.0001.2.0 NAME 'uddi-Business-Entity' DESC 'Business Entity object' SUP top STRUCTURAL MUST (uddi-Business-Key $ uddi-Entity-Name $ uddi-isHidden $ uddi-Authorized-Name ) MAY ( uddi-Name-Soundex $ uddi-Operator $ uddi-Description $ uddi-Ref-Identifier-Bag $ uddi-Ref-Category-Bag ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.1 NAME 'uddi-Business-Service' DESC 'Business Service object' SUP top STRUCTURAL MUST ( uddi-Service-Key $ uddi-Service-Name $ uddi-isHidden ) MAY ( uddi-Name-Soundex $ uddi-Description $ uddi-Ref-Category-Bag ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.2 NAME 'uddi-Binding-Template' DESC 'Binding Template object' SUP TOP STRUCTURAL MUST ( uddi-Binding-Key $ uddi-isHidden ) MAY ( uddi-Description $ uddi-Access-Point $ uddi-Hosting-Redirector ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.3 NAME 'uddi-tModel' DESC 'tModel object' SUP top STRUCTURAL MUST (uddi-tModel-Key $ uddi-tModel-Name $ uddi-isHidden $ uddi-Authorized-Name ) MAY ( uddi-Name-Soundex $ uddi-Operator $ uddi-Description $ uddi-Ref-Identifier-Bag $ uddi-Ref-Category-Bag $ uddi-tModel-origin $ uddi-tModel-checked $ uddi-tModel-type ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.4 NAME 'uddi-Publisher-Assertion' DESC 'Publisher Assertion object' SUP TOP STRUCTURAL MUST ( uddi-Publisher-Assertions-ID $ uddi-From-Key $ uddi-To-Key $ uddi-Ref-Keyed-Reference ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.5 NAME 'uddi-Discovery-URL' DESC 'Discovery URL' SUP TOP STRUCTURAL MUST ( uddi-Discovery-URL-ID $ uddi-Use-Type $ uddi-URL ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.6 NAME 'uddi-Contact' DESC 'Contact Information' SUP TOP STRUCTURAL MUST ( uddi-Contact-ID $ uddi-Person-Name ) MAY ( uddi-Use-Type $ uddi-Description $ uddi-Phone $ uddi-Email $ uddi-tModel-Key ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.7 NAME 'uddi-Address' DESC 'Address information for a contact entry' SUP TOP STRUCTURAL MUST ( uddi-Address-ID ) MAY ( uddi-Use-Type $ uddi-Sort-Code $ uddi-Address-tModel-Key $ uddi-Address-Line ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.8 NAME 'uddi-Keyed-Reference' DESC 'KeyedReference' SUP TOP STRUCTURAL MUST ( uddi-Keyed-Reference-ID $ uddi-Key-Value ) MAY ( uddi-Key-Name $ uddi-Keyed-Reference-TModel-Key ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.9 NAME 'uddi-tModel-Instance-Info' DESC 'tModelInstanceInfo' SUP TOP STRUCTURAL MUST ( uddi-tModel-Instance-Info-ID $ uddi-tMII-TModel-Key ) MAY ( uddi-Description ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.10 NAME 'uddi-Instance-Details' DESC 'instanceDetails' SUP TOP STRUCTURAL MUST ( uddi-Instance-Details-ID ) MAY ( uddi-Description $ uddi-Instance-Parms ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.11 NAME 'uddi-Overview-Doc' DESC 'overviewDoc' SUP TOP STRUCTURAL MUST ( uddi-Overview-Doc-ID ) MAY ( uddi-Description $ uddi-Overview-URL ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.12 NAME 'uddi-Ref-Object' DESC 'an object class conatins a reference to another entry' SUP TOP STRUCTURAL MUST ( uddi-Ref-Attribute ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.13 NAME 'uddi-Ref-Auxiliary-Object' DESC 'an auxiliary type object used in another structural class to hold a reference to a third entry' SUP TOP AUXILIARY MUST ( uddi-Ref-Attribute ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.14 NAME 'uddi-ou-container' DESC 'an organizational unit with uddi attributes' SUP organizationalunit STRUCTURAL MAY ( uddi-next-id $ uddi-var ) X-ORIGIN 'acumen defined' ) objectClasses: ( 11827.0001.2.15 NAME 'uddi-User' DESC 'a User with uddi attributes' SUP inetOrgPerson STRUCTURAL MUST ( uid $ uddi-user-language $ uddi-user-quota-entity $ uddi-user-quota-service $ uddi-user-quota-tmodel $ uddi-user-quota-binding $ uddi-user-quota-assertion $ uddi-user-quota-messagesize ) X-ORIGIN 'acumen defined' )
次の表に、uddi.properties
ファイルのプロパティを、説明される UDDI のタイプ別に示します。
表 11-2 基本的な UDDI コンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
auddi.discoveryurl |
保存されたビジネス エンティティごとに設定される DiscoveryURL プレフィックス。通常、これは uddilistener サーブレットの完全な URL となるため、完全な DiscoveryURL を指定すると、格納された BusinessEntity データが表示される。 |
auddi.inquiry.secure |
有効値は、 |
auddi.publish.secure |
有効値は、 |
auddi.search.maxrows |
検索操作で返される行の最大数。検索の結果がこの最大行数を超えると、結果が切り詰められる。 |
auddi.search.timeout |
検索操作のタイムアウト値。この値は、ミリ秒単位で指定する。 |
auddi.siteoperator |
UDDI レジストリのサイト オペレータの名前。指定した値はオペレータ属性として使用され、以後のすべての BusinessEntity 登録に保存される。この属性は応答で返され、どの UDDI レジストリが応答を生成したかを示す。 |
security.cred.life |
認証の資格の有効期間 (秒単位で指定)。ユーザの認証時に、このプロパティで指定した有効期限を持つ AuthToken が割り当てられる。 |
pluggableTModel.file.list |
UDDI サーバには、標準の TModel があらかじめ組み込まれている。独自の分類法を使用して、TModel 形式で UDDI サーバをさらにカスタマイズできる。分類法は、XML スキーマに従って XML ファイルに定義する必要がある。このプロパティの値は、URI (XML ファイルなど) のカンマ区切りリストである。これらの TModel を表す値は、指定した分類法に照らし合わされてチェックおよび検証される。 |
表 11-3 UDDI のユーザ デフォルト
UDDI プロパティ キー | 説明 |
---|---|
auddi.default.lang |
ユーザの初期言語。デフォルトでは作成時にユーザ プロファイルに割り当てられる。ユーザ プロファイルの設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.assertion |
ユーザの初期アサーション割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。アサーション割り当ては、ユーザがパブリッシュできるパブリッシャ アサーションの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.binding |
ユーザの初期バインディング割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。バインディング割り当ては、ビジネス サービスごとにユーザがパブリッシュできるバインディング テンプレートの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.entity |
ユーザの初期ビジネス エンティティ割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。エンティティ割り当ては、ユーザがパブリッシュできるビジネス エンティティの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.messageSize |
ユーザの初期メッセージ サイズ制限。デフォルトでは作成時にユーザ プロファイルに割り当てられる。メッセージ サイズ制限は、ユーザが UDDI サーバに送信できる SOAP 呼び出しの最大サイズ。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.service |
ユーザの初期サービス割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。サービス割り当ては、ビジネス エンティティごとにユーザがパブリッシュできるビジネスサービスの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
auddi.default.quota.tmodel |
ユーザの初期 TModel 割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。TModel 割り当ては、ユーザがパブリッシュできる TModel の最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。 |
表 11-4 一般的なサーバのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
auddi.datasource.type |
UDDI データの物理ストレージの場所。この値はデフォルトでは |
auddi.security.type |
UDDI サーバのセキュリティ モジュール (認証)。この値はデフォルトでは |
auddi.license.dir |
UDDI サーバのライセンス ファイルの場所。このプロパティを指定しない場合、 |
auddi.license.file |
ライセンス ファイルの名前。このプロパティを指定しない場合、 |
表 11-5 ログ機能のコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
logger.file.maxsize |
ログ機能の出力ファイルの最大サイズ (出力がファイルに送信される場合)。単位は KB。出力ファイルが最大サイズに達すると、そのファイルは閉じられ、新しいログ ファイルが作成される。 |
logger.indent.enabled |
有効値は、 |
logger.indent.size |
各インデントのサイズ (スペースの数)。整数として指定する。 |
logger.log.dir |
ログ ファイルが格納されるディレクトリの絶対パスまたは相対パス。 |
logger.log.file.stem |
すべてのログ ファイル名の先頭に付加される文字列。 |
logger.log.type |
ログ メッセージの出力先を画面にするか、ファイルにするか、またはその両方にするかを決定する。有効値は、それぞれ |
logger.output.style |
ログ出力にメッセージだけを含めるか、またはスレッドおよびタイムスタンプ情報を含めるかを決定する。有効値は、 |
logger.quiet |
ログ機能自体に情報メッセージを表示するかどうかを決定する。有効値は、 |
logger.verbosity |
ログ機能の冗長レベル。有効値 (大文字と小文字は区別される) は、 |
表 11-6 接続プール
UDDI プロパティ キー | 説明 |
---|---|
datasource.ldap.pool.increment |
プール内のすべての接続がビジーの場合に、作成してプールに追加する新しい接続の数。 |
datasource.ldap.pool.initialsize |
プールの作成および初期化時に格納される接続数。 |
datasource.ldap.pool.maxsize |
プールが保持できる接続の最大数。 |
datasource.ldap.pool.systemmaxsize |
プールがその最大容量に達した後に作成される接続の最大数。プールが最大サイズに達し、すべての接続がビジーの場合、新しい接続が一時的に作成されてクライアントに返される。この接続はプールには格納されない。しかし、システムの最大サイズに達すると、ビジー接続が使用可能になるまで新しい接続リクエストはすべてブロックされる。 |
表 11-7 LDAP データストアのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
datasource.ldap.manager.uid |
LDAP にデータを保存できるバックエンド LDAP サーバ管理者または特権を持つユーザの ID (cn=Directory Manager など)。 |
datasource.ldap.manager.password |
datasource.ldap.manager.uid のパスワード。データ ストレージ用の LDAP ディレクトリとの接続を確立する。 |
datasource.ldap.server.url |
データ ストレージ用の LDAP ディレクトリの「ldap://」URL。 |
datasource.ldap.server.root |
データ ストレージ用の LDAP ディレクトリのルート エントリ (dc=acumenat、dc=com など)。 |
注意 : 複製 LDAP 環境には、「m」LDAP マスタと「n」LDAP レプリカがあります。これらの番号は、それぞれ 0 から (m-1) および 0 から (n-1) です。次のプロパティ キーの 5 番目の部分の「i」はこの番号を表しており、定義されている LDAP サーバ インスタンスによって異なります。 |
表 11-8 複製 LDAP データストアのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
datasource.ldap.server.master.i.manager.uid |
LDAP にデータを保存できる、このマスタ LDAP サーバ ノードの管理者または特権を持つユーザ ID (cn=Directory Manager など)。 |
datasource.ldap.server.master.i.manager.password |
datasource.ldap.server.master.i.manager.uid のパスワード。データを書き込むための関連するマスタ LDAP ディレクトリとの接続を確立する。 |
datasource.ldap.server.master.i.url |
対応する LDAP ディレクトリ ノードの「ldap://」URL。 |
datasource.ldap.server.master.i.root |
対応する LDAP ディレクトリ ノードのルート エントリ (dc=acumenat、dc=com など)。 |
datasource.ldap.server.replica.i.manager.uid |
このレプリカ LDAP サーバ ノードのユーザ ID (cn=Directory Manager など)。このユーザは LDAP から UDDI データを読み出すことができる。 |
datasource.ldap.server.replica.i.manager.password |
datasource.ldap.server.replica.i.manager.uid のパスワード。データを読み出すための関連するレプリカ LDAP ディレクトリとの接続を確立する。 |
datasource.ldap.server.replica.i.url |
対応する LDAP ディレクトリ ノードの「ldap://」URL。 |
datasource.ldap.server.replica.i.root |
対応する LDAP ディレクトリ ノードのルート エントリ (dc=acumenat、dc=com など)。 |
表 11-9 ファイル データストアのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
datasource.file.directory |
UDDI データを格納するファイル システムのディレクトリ。 |
表 11-10 一般的なセキュリティのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
security.custom.group.operators |
セキュリティ グループ名。このグループのメンバーは UDDI 管理者として扱われる。 |
表 11-11 LDAP セキュリティのコンフィグレーション
UDDI プロパティ キー | 説明 |
---|---|
security.custom.ldap.manager.uid |
セキュリティ LDAP サーバ管理者または特権を持つユーザ ID ( |
security.custom.ldap.manager.password |
このプロパティの値は、上記のユーザ ID のパスワードであり、セキュリティ用の LDAP ディレクトリに接続するために使用する。 |
security.custom.ldap.url |
このプロパティの値は、セキュリティ用の LDAP ディレクトリの「 |
security.custom.ldap.root |
セキュリティ用の LDAP ディレクトリのルート エントリ ( |
security.custom.ldap.userroot |
セキュリティ LDAP サーバのユーザ ルート エントリ。 |
security.custom.ldap.group.root |
セキュリティ LDAP サーバのオペレータ エントリ。たとえば、「 |
UDDI ディレクトリ エクスプローラを使用すると、認可されたユーザは、WebLogic Server のプライベートな UDDI レジストリに Web サービスをパブリッシュしたり、すでに公開されている Web サービスの情報を変更することができます。また、Web サービスおよび関連付けられた WSDL ファイル (利用可能な場合) に関する詳細情報にアクセスすることができます。
また、UDDI ディレクトリ エスプローラを使用して、パブリックとプライベート両方の UDDI レジストリにある Web サービスおよびこれらの Web サービスを提供している企業や部門に関する情報を検索できます。
ブラウザで UDDI ディレクトリ エクスプローラを起動するには、次の URL を入力します。
http://host:port/uddiexplorer
各要素の説明は次のとおりです。
host
は、WebLogic Server が動作しているコンピュータ。
port
は、WebLogic Server が接続要求をリスンするポート番号。デフォルトのポート番号は 7001 です。
注意 : Oracle WebLogic Server ユーザ名およびパスワードを使用して、[UDDI ディレクトリク エクスプローラ] ページにアクセスします。 |
UDDI ディレクトリ エクスプローラを使用して、以下のタスクを実行できます。
パブリック レジストリの検索
プライベート レジストリの検索
プライベート レジストリへのパブリッシュ
プライベート レジストリの詳細の変更
UDDI ディレクトリ エクスプローラのセットアップ
UDDI ディレクトリ エクスプローラの使い方の詳細については、メイン ページの [Explorer Help] リンクをクリックしてください。
WebLogic Server には、Java クライアント アプリケーションで Web サービスをプログラムから検索およびパブリッシュするために使用できるクライアントサイド UDDI API が組み込まれています。
UDDI クライアント API には、Inquiry
と Publish
という、2 つの主なクラスがあります。Inquiry
クラスは、既知の UDDI レジストリにある Web サービスの検索に使用し、Publish
クラスは、開発した Web サービスを既知のレジストリに追加するために使用します。
WebLogic Server では、以下のクライアント UDDI API パッケージを実装しています。
これらのパッケージの使い方の詳細については、『Oracle Fusion Middleware Oracle WebLogic Server 10.3.1 API リファレンス』を参照してください。
分類法は、基本的に categoryBag または identifierBag によって参照として使用される tModel です。主な相違点は、単純な tModel に対して、分類法の参照は一般にチェックおよび検証されることです。WebLogic Server の UDDI サーバはこのコンセプトを活用し、プラガブル tModel という独自の分類法を採用することでこの機能を拡張します。プラガブル tModel を使用すると、ユーザ (UDDI 管理者) は独自のチェック済み分類法を UDDI レジストリに追加し、標準の分類法を上書きできます。
プラガブル tModel を追加するには、次の手順に従います。
「プラガブル tModel の XML スキーマ」で説明する形式に従って、tModelKey/categorization ごとに XML ファイルを作成します。
UDDI サーバをコンフィグレーションするために使用する uddi.properties
ファイルの pluggableTModel.file.list
プロパティに、ファイルのカンマ区切りの完全修飾名を追加します。次に例を示します。
pluggableTModel.file.list=c:/temp/cat1.xml,c:/temp/cat2.xml
uddi.properties ファイルの詳細については、「UDDI 2.0 サーバのコンフィグレーション」を参照してください。
Weblogic Server を再起動します。
以下の節では、XML 要素とその有効値の表、プラガブル tModel の検証に使用する XML スキーマ、およびサンプル XML を示します。
次の表に、プラガブル tModel を記述する XML ファイルの要素について説明します。
表 11-13 プラガブル tModel をコンフィグレーションするための XML 要素の説明
要素/属性 | 必須 | ロール | 値 | 備考 |
---|---|---|---|---|
Taxonomy |
必須 |
ルート要素。 |
- |
なし |
checked |
必須 |
この分類がチェックされるかどうか。 |
true または false |
false を指定すると、keyValue は検証されない。 |
type |
必須 |
tModel のタイプ。 |
categorization、identifier、uddi-org-types で定義した有効値 |
有効値については uddi-org-types tModel を参照。 |
applicability |
省略可能 |
tModel の使用に関する制約。 |
- |
この要素を指定しない場合、制約があるとは見なされない。 |
scope |
applicability 要素が含まれている場合は必須 |
tModel の使用に関する制約。 |
businessEntity、businessService、bindingTemplate、tModel |
「bindingTemplate」を指定した場合、tModel は tModelInstanceInfo で使用できる。 |
tModel |
必須 |
UDDI データ構造に従った実際の tModel。 |
有効な tModelKey |
なし |
categories |
checked が true の場合は必須 |
- |
- |
なし |
category |
categories 要素が含まれている場合は必須 |
実際の keyName と keyValue を保持する。 |
keyName と keyValue のペア |
category は、グループ化またはツリー構造用にネストできる。 |
keyName |
必須 |
- |
- |
なし |
keyValue |
必須 |
- |
- |
なし |
プラガブル tModel の XML スキーマは次のように検証されます。
<simpleType name="type"> <restriction base="string"/> </simpleType> <simpleType name="checked"> <restriction base="NMTOKEN"> <enumeration value="true"/> <enumeration value="false"/> </restriction> </simpleType> <element name="scope" type="string"/> <element name = "applicability" type = "uddi:applicability"/> <complexType name = "applicability"> <sequence> <element ref = "uddi:scope" minOccurs = "1" maxOccurs = "4"/> </sequence> </complexType> <element name="category" type="uddi:category"/> <complexType name = "category"> <sequence> <element ref = "uddi:category" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "keyName" use = "required" type="string"/> <attribute name = "keyValue" use = "required" type="string"/> </complexType> <element name="categories" type="uddi:categories"/> <complexType name = "categories"> <sequence> <element ref = "uddi:category" minOccurs = "1" maxOccurs = "unbounded"/> </sequence> </complexType> <element name="Taxonomy" type="uddi:Taxonomy"/> <complexType name="Taxonomy"> <sequence> <element ref = "uddi:applicability" minOccurs = "0" maxOccurs = "1"/> <element ref = "uddi:tModel" minOccurs = "1" maxOccurs = "1"/> <element ref = "uddi:categories" minOccurs = "0" maxOccurs = "1"/> </sequence> <attribute name = "type" use = "required" type="uddi:type"/> <attribute name = "checked" use = "required" type="uddi:checked"/> </complexType>
次に、プラガブル tModel のサンプル XML を示します。
<?xml version="1.0" encoding="UTF-8" ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <Taxonomy checked="true" type="categorization" xmlns="urn:uddi-org:api_v2" > <applicability> <scope>businessEntity</scope> <scope>businessService</scope> <scope>bindingTemplate</scope> </applicability> <tModel tModelKey="uuid:C0B9FE13-179F-41DF-8A5B-5004DB444tt2" > <name> sample pluggable tModel </name> <description>used for test purpose only </description> <overviewDoc> <overviewURL>http://www.abc.com </overviewURL> </overviewDoc> </tModel> <categories> <category keyName="name1 " keyValue="1"> <category keyName="name11" keyValue="12"> <category keyName="name111" keyValue="111"> <category keyName="name1111" keyValue="1111"/> <category keyName="name1112" keyValue="1112"/> </category> <category keyName="name112" keyValue="112"> <category keyName="name1121" keyValue="1121"/> <category keyName="name1122" keyValue="1122"/> </category> </category> </category> <category keyName="name2 " keyValue="2"> <category keyName="name21" keyValue="22"> <category keyName="name211" keyValue="211"> <category keyName="name2111" keyValue="2111"/> <category keyName="name2112" keyValue="2112"/> </category> <category keyName="name212" keyValue="212"> <category keyName="name2121" keyValue="2121"/> <category keyName="name2122" keyValue="2122"/> </category> </category> </category> </categories> </Taxonomy> </SOAP-ENV:Body> </SOAP-ENV:Envelope>