WSDLの公開  目次

Oracle Service RegistryのWSDLからUDDIへのマッピングは、OASISのテクニカル・ノート「Using WSDL in a UDDI registry Version 2.0」に準拠しています。これによって、UDDIへのWSDLドキュメントの自動的な公開、および特定のWSDLアーティファクトとメタデータに基づいた正確かつ柔軟なUDDI問合せが可能になり、UDDI v2およびUDDI v3での一貫したマッピングを実現できます。

データ構造  目次
wsdlDetail  目次

wsdlDetailには、マップされるWSDLに関する情報が記述されます。

引数  目次
  • wsdl2uddi:wsdl: マップされたWSDLのURIまたは物理的な場所が含まれています。

  • wsdl2uddi:wsdlMapping: マップされるwsdl:typesについて記述されています。

wsdl  目次

WSDLには、マップされたWSDLの場所に関する情報が含まれています。

引数  目次
  • wsdlLocation: マップされたWSDLのURIまたは物理的な場所。

  • any: 拡張可能文書を作成する場合に使用します(XMLスキーマに関する説明を参照)。通常、マップされたWSDLのDOMパターンとして使用します。

wsdlMapping  目次

WsdlMappingには、マップされたwsdl:typesが記述されます。これは、指定したWSDLのマッピングのデフォルト動作を変更する場合に使用します。含まれている構造に、マップされる各wsdl:typeについて正しく記述することができます。これによって、マップの正確性が保証され、レジストリでのデータの重複が防止されます。

引数  目次
  • uddi:businessKey: 割り当てられたwsdl:typesがマップされる既存のuddi:businessEntityのbusinessKeyを表しています。

  • uddi:businessEntity: 割り当てられたwsdl:typesがマップされる既存のbusinessEntityを表しています。

  • wsdl2uddi:porttypes : マップされるwsdl:portTypesのコンテナを表しています。wsdl2uddi:porttypesによって、uddi:tModelを対応するwsdl:portTypeにマップできるようになります。

  • wsdl2uddi:bindings : マップされるwsdl:bindingsのコンテナを表しています。wsdl2uddi:bindingsによって、uddi:tModelを対応するwsdl:bindingにマップできるようになります。

  • wsdl2uddi:services : マップされるwsdl:servicesのコンテナを表しています。wsdl2uddi:servicesによって、uddi:businessServiceを対応するwsdl:serviceにマップできるようになります。

注意注意

uddi:businessKeyuddi:businessEntityは相互に排他的であることに注意してください。

portTypes  目次

portTypes構造は、1つ以上のwsdl2uddi:portTypes用の単純なコンテナです。

portType  目次

portTypeは、UDDIでのwsdl:portTypeのマッピングを表しています。wsdl:portTypeを対応するuddi:tModelに正確にマップするために必要な情報が含まれています。

引数  目次
  • uddi:tModelKey: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:portTypeからのデータで再書込みされる、既存のuddi:tModelのtModelKeyを表しています。

  • uddi:tModel: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:portTypeからのデータで再書込みされる、既存のuddi:tModelを表しています。

注意注意

uddi:tModelKeyとuddi:tModelは相互に排他的であることに注意してください。

表28 属性

名前必須
nameオプション
namespaceオプション
publishingMethodオプション

これらの属性によって、適切なWSDLのwsdl:portTypeが記述されます。 Nameおよびnamespaceは、wsdl:portType QNameを表しています。publishingMethodによって、使用可能なマッピング・ユースケースが列挙されます。publishingMethodは、rewritecreatereuseまたはignoreに設定できます。デフォルトのpublishingMethodは、reuseです。

Bindings  目次

bindings構造は、1つ以上のwsdl2uddi:bindings用の単純なコンテナです。

binding  目次

bindingは、UDDIでのwsdl:bindingのマッピングを表しています。bindingには、wsdl:bindingを適切なuddi:tModelに正確にマッピングするために必要な情報が含まれています。

引数  目次
  • uddi:tModelKey: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:bindingからのデータで再書込みされる、既存のuddi:tModelのtModelKeyを表しています。

  • uddi:tModel: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:bindingからのデータで再書込みされる、既存のuddi:tModelを表しています。

注意注意

uddi:tModelKeyuddi:tModelは相互に排他的であることに注意してください。

表29 属性

名前必須
nameオプション
namespaceオプション
publishingMethodオプション

これらの属性によって、適切なWSDLからのwsdl:bindingが記述されます。Nameおよびnamespaceは、wsdl:binding QNameを表しています。

publishingMethodによって、使用可能なマッピング・ユースケースが列挙されます。publishingMethodは、rewritecreatereuseまたはignoreに設定できます。デフォルトのpublishingMethodは、reuseです。

Services  目次

services構造は、1つ以上のwsdl2uddi:services用の単純なコンテナです。

service  目次

serviceは、UDDIでのwsdl:serviceのマッピングを表しています。wsdl:serviceを適切なuddi:businessServiceに正確にマップするために必要な情報が含まれています。

引数  目次
  • uddi:businessKey: 変換されたwsdl:serviceが保存される既存のuddi:businessEntityのbusinessKeyを表しています。

  • uddi:serviceKey: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:serviceからのデータで再書込みされる、既存のuddi:businessServiceのserviceKeyを表しています。

  • uddi:businessService: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:serviceからのデータで再書込みされる、既存のuddi:businessServiceを表しています。

  • wsdl:ports: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:service portsからのデータで再書込みされる、既存のuddi:bindingTemplatesを表しています。

注意注意

uddi:serviceKeyuddi:businessServiceは相互に排他的であることに注意してください。

表30 属性

名前使用
nameオプション
namespaceオプション
publishingMethodオプション

これらの属性によって、適切なWSDLからのwsdl:serviceが記述されます。Nameおよびnamespaceは、wsdl:service QNameを表しています。

publishingMethodによって、使用可能なマッピング・ユースケースが列挙されます。publishingMethodは、rewritecreatereuseまたはignoreに設定できます。デフォルトのpublishingMethodは、reuseです。

ports  目次

ports構造は、1つ以上のwsdl2uddi:ports用の単純なコンテナです。

port  目次

portは、UDDIでのwsdl:portのマッピングを表しています。wsdl:portを適切なuddi:bindingTemplateに正確にマップするために必要な情報が含まれています。

引数  目次
  • uddi:bindingKey: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:portからのデータで再書込みされる、既存のuddi:bindingTemplateのbindingKeyを表しています。

  • uddi:bindingTemplate: (ユーザーが選択したpublishingMethodに応じて)再使用されるか、またはwsdl:serviceからのデータで再書込みされる、既存のuddi:bindingTemplateを表しています。

注意注意

uddi:bindingKeyuddi:bindingTemplateは相互に排他的であることに注意してください。

表31 属性

名前必須
nameオプション
publishingMethodオプション

これらの属性によって、適切なWSDLからのwsdl:portが記述されます。Nameは、wsdl:portの名前を表しています。publishingMethodによって、使用可能なマッピング・ユースケースが列挙されます。publishingMethodは、rewritecreateまたはreuseに設定できます。デフォルトのpublishingMethodは、reuseです。

wsdlServiceInfos  目次

wsdlServiceInfo構造は、1つ以上のwsdl2uddi:wsdlServiceInfos用の単純なコンテナです。

wsdlServiceInfo  目次

wsdlServiceInfoには、検索中のwsdlLocationおよびuddi:businessServiceに関する情報が記述されます。

引数  目次
  • wsdlLocation: WSDLのURIまたは物理的な場所。

  • wsdl2uddi:portInfos: 適切なuddi:bindingTemplateにマップされるwsdl:portが含まれているwsdl2uddi:ports用のコンテナ。

表32 属性

名前必須
name必須
namespace必須
serviceKey必須

これらの属性によって、適切なWSDLからのwsdl:serviceのマップ方法が記述されます。Nameおよびnamespaceは、wsdl:service QNameを表しています。

serviceKeyは、wsdl:serviceがマップされるuddi:businessServiceを表しています。

PortInfos  目次

portInfos構造は、1つ以上のwsdl2uddi:portInfos用の単純なコンテナです。

portInfo  目次

portInfoには、検索中のuddi:businessServiceで使用されるuddi:bindingTemplatesに関する情報が記述されます。

引数  目次
  • uddi:accessPointには、検索中のuddi:businessServiceへのアクセスに関する情報が含まれています。

表33 属性

名前必須
name必須
bindingKey必須

これらの属性によって、適切なWSDLからのwsdl:portのマップ方法が記述されます。Nameは、wsdl:portの名前を表しています。BindingKeyは、wsdl:portがマップされるuddi:bindingTemplateを表しています。

操作  目次
publish_wsdl  目次

Publish_wsdlによって、UDDIレジストリへのWSDLの公開が保証されます。Publishing APIを使用して、変換されたwsdl:typesがUDDIレジストリに保存されます。Publishing APIの詳細は、UDDI v3 - APIの公開に関する説明を参照してください。

デフォルトでは、UDDIエンティティは、wsdl:typesに含まれているデータで次のように再書込みされます。各wsdl:typeは、まず、指定したレジストリで検索されます。UDDIエンティティが検出された場合は再書込みされ、UDDIエンティティが検出されなかった場合は、新しいエンティティが作成されます。ただし、ユーザーは、wsdl:typesをレジストリに公開する方法を指定できます。

デフォルトの公開動作は変更することができます。また、適切なUDDIエンティティにマップされるwsdl:types(つまり、UDDIエンティティが作成されるのか、再書込みされるのか、再使用されるのか)を定義することもできます。

公開動作およびそのユースケースの詳細は、「publishingMethod」を参照してください。次に、wsdl:typeがユーザー・アカウントまたは外部アカウントで検出されたかどうかに応じてwsdl:typesが適切なUDDIエンティティに割り当てられるルールの一部を示します。wsdl:portTypeまたはwsdl:bindingとは異なり、wsdl:servicesは、ユーザーのアカウント上でのみ検索されます。WSDLから変換されたtModelではなく、外部アカウントからのtModelを使用するほうが有効であるためです。

publishingMethod  目次

PublishingMethodには、公開操作の動作が記述されます。設定動作に基づき、対応するwsdl:typeがUDDIレジストリにマップされます。

publish_wsdlは、デフォルトではreuseに設定されています。ただし、ユーザーがエンティティを再書込みするか、または新しいエンティティを作成する場合は、デフォルトの動作をreuseからrewriteまたはcreateに変更して、一意のマッピングが行われるようにすることができます。

ユースケース

  • rewrite: wsdl:typeがレジストリ上で検索され、wsdl:typeのデータによって、検出されたUDDI構造が再書込みされます。wsdl:typeが検出されなかった場合は、新しく作成されます。

  • reuse: 公開操作のデフォルト動作。この動作を使用すると、ユーザーは既存のUDDI構造全体を再使用することができます。検出されたUDDIエンティティは、wsdl:typeのデータによっては再書込みされません。このメソッドの使用時に、公開されたwsdl:typeと対応するUDDIエンティティとの間で非一貫性が発生する可能性があります。この動作は、wsdl:portTypesまたはwsdl:bindingsからマップされたtModel(uddi:hostingRedirectorsなど)のかわりに、既存のtModelを使用する必要がある場合に役立ちます。

  • create: このメソッドは、主にテストで使用します。この動作を使用すると、UDDIエンティティがレジストリにすでに存在しているかどうかに関係なく、wsdl:typeから新しいUDDIエンティティが作成されます。

    重要重要

    この動作の使用時には、不要な重複が発生する可能性があります。この動作は、慎重に使用する必要があります。

  • ignore: このメソッドは、UDDIエンティティを公開しない場合に使用します。WSDL文書の公開する部分を制限することができます。

引数  目次
  • uddi:authInfo: この必須引数は、uddi:authTokenの文字列表現です。

  • wsdl2uddi:wsdlDetail: WSDLの場所およびユーザー定義のWSDLマッピング・ルールが記述されます。詳細は、「wsdl2uddi:wsdlDetaill」を参照してください。

    ここで、ユーザーは、ターゲット・レジストリ上のエンティティに対応するWSDLのwsdl:type、および指定したwsdl:typeのマップ方法を指定することができます。詳細は、「wsdl2uddi:publishingMethod」を参照してください。

戻り値  目次

wsdl2uddi:wsdlDetail: 個々のwsdl:typesを公開する方法の詳細が含まれています。詳細は、「wsdl2uddi:wsdlDetaill」を参照してください。

unpublish_wsdl  目次

unpublish_wsdlによって、UDDIレジストリからのWSDLの非公開が保証されます。Publishing APIを使用して、wsdl:typesに対応するUDDIエンティティがUDDIレジストリから削除されます。Publishing APIの詳細は、UDDI v3 - APIの公開に関する説明を参照してください。

wsdl:typeは、まず、指定したレジストリ上で検索されます。UDDIエンティティが検出された場合は削除され、検出されなかった場合は単に省略されます。検出されたtModelは、物理的に削除されるか、または構成に従ってdeprecatedとマークされます(通常、tModelは、その所有者によって削除されると、deprecatedとマークされます。 通常は、管理者のみが、非推奨tModelをレジストリから完全に削除できます)。

引数  目次
  • uddi:authInfo: この必須引数は、uddi:authTokenの文字列表現です。

  • wsdl2uddi:wsdlDetail: WSDLの場所およびユーザー定義のWSDL非公開ルールが記述されます。詳細は、「wsdl2uddi:wsdlDetaill」を参照してください。ここで、ユーザーは、ターゲット・レジストリ上に存在するUDDIエンティティに対応するWSDLのwsdl:typeを指定できます。wsdl:typeは、レジストリ上で複数回発生する可能性があるためです。

戻り値  目次

wsdl2uddi:wsdlDetail: 個々のwsdl:typesをターゲット・レジストリから非公開にする方法の詳細が含まれています。詳細は、「wsdl2uddi:wsdlDetaill」を参照してください。

get_wsdlServiceInfo  目次

Get_wsdlServiceInfoによって、特定のWSDLのwsdl:servicesに対応するuddi:businessServicesが検出されます。Inquiry APIを使用して、wsdl:typesと一致するUDDIエンティティが取得されます。Inquiry APIの詳細は、UDDI - Inquiry APIに関する説明を参照してください。

この操作では、ユーザーのアカウント上または外部アカウント上のいずれかで、(指定したuddi:authInfoに従って)対応するUDDIエンティティが検出されます。wsdl:typesに対応するUDDIエンティティが複数回発生することを考慮して、検索アルゴリズムでは、指定したWSDLの個々のwsdl:types間の関係に従って出力が最適化されます。WSDLのwsdl:serviceに正確に対応している(適切なWSDLのすべてのwsdl:typesが含まれている)wsdl2uddi:wsdlServiceInfoのみが戻されます。

引数  目次
  • uddi:authInfo: このオプションの引数は、uddi:authTokenの文字列表現です。

  • wsdl2uddi:wsdl: wsdl2uddi:wsdlServiceInfosの検出に使用される引数。この引数では、WSDLのwsdl:serviceに正確に対応しているuddi:businessServiceのみが戻されます。詳細は、「wsdl2uddi:wsdl」を参照してください。

  • uddi:serviceKey: ターゲット・レジストリ上に存在するuddi:businessServiceuddi:serviceKey。WSDLタイプ・カテゴリ・システムを含むuddi:businessServicesのみ(つまり、検出されたuddi:businessServiceuddi:categoryBagに、WSDLタイプ・カテゴリ・システムおよびkeyValueサービスを表すuddi:tModelKeyとともにuddi:keyedReferenceが含まれている必要がある)が戻されることに注意してください。

  • uddi:bindingKey: ターゲット・レジストリ上に存在するuddi:bindingTemplateuddi:bindingKey。UDDI v3の場合は、WSDLタイプ・カテゴリ・システムとともに指定されたuddi:bindingKeyに対応するuddi:bindingTemplateを含むuddi:businessServicesのみ(つまり、検出されたuddi:bindingTemplateuddi:categoryBagに、WSDLタイプ・カテゴリ・システムおよびkeyValueバインディングを表すuddi:tModelKeyとともにuddi:keyedReferenceが含まれている必要がある)が戻されます。つまり、このWSDLタイプ・カテゴリ・システムは、適切なuddi:businessServiceにも含まれている必要があります。

    検出されたuddi:bindingTemplateにuddi:tModelInstanceDetailのWSDLタイプ・カテゴリ・システムに準拠したuddi:tModelsが含まれている必要がある場合でも、v2のuddi:bindingTemplateには、uddi:categoryBagが含まれていないことに注意してください。

  • uddi:tModelKey: ターゲット・レジストリ上に存在するuddi:tModeluddi:tModelKey。WSDLタイプ・カテゴリ・システムに準拠したuddi:tModelが使用されているuddi:businessServiceのみが戻されることに注意してください。したがって、検出されたuddi:tModeluddi:categoryBagに、WSDLタイプ・カテゴリ・システムおよびkeyValue bindingまたはportTypeを表すuddi:tModelKeyとともにuddi:keyedReferenceが含まれている必要があります。つまり、このWSDLタイプ・カテゴリ・システムは、適切なuddi:businessServiceにも含まれている必要があります。

注意注意

wsdl2uddi:wsdluddi:serviceKeyuddi:bindingKeyおよびuddi:tModelKeyは、相互に排他的であることに注意してください。

戻り値  目次

wsdl2uddi:wsdlServiceInfos: 指定したWSDLのwsdl:typesに対応しているUDDIエンティティが含まれています。詳細は、「wsdl2uddi:wsdlServiceInfos」を参照してください。

find_wsdlServiceInfo  目次

この操作は、wsdl2uddi:get_wsdlServiceInfoより少し複雑になります。Find_wsdlServiceInfoによって、特定のWSDLのwsdl:servicesに対応するuddi:businessServicesが検出されます。Inquiry APIを使用して、wsdl:typesと一致するUDDIエンティティが検索されます。Inquiry APIの詳細は、UDDI - Inquiry APIに関する説明を参照してください。

この操作では、ユーザーのアカウント上または外部アカウント上のいずれかで、(指定したuddi:authInfoに従って)対応するUDDIエンティティが検出されます。wsdl:typesに対応するUDDIエンティティが複数回発生することを考慮して、検索アルゴリズムでは、指定したWSDLおよびユーザーによって指定されたuddi:find_xx構造の個々のwsdl:types間の関係に従って出力が最適化されます。WSDLのwsdl:serviceに正確に対応しているwsdl2uddi:wsdlServiceInfoのみが戻されます。つまり、適切なWSDLのすべてのwsdl:typesが一度に含まれ、ユーザー定義のuddi:find_xxを満たすwsdl2uddi:wsdlServiceInfoのみが戻されます。

引数  目次
  • uddi:authInfo: このオプションの引数は、uddi:authTokenの文字列表現です。

  • wsdl2uddi:wsdl: wsdl2uddi:wsdlServiceInfosの検出に使用される必須の引数。この引数では、WSDLのwsdl:serviceに正確に対応しているuddi:businessServiceのみが戻されます。詳細は、「wsdl2uddi:wsdl」を参照してください。

  • uddi:find_service: 検索条件をより詳細に記述する場合に使用する引数。詳細は、uddi:find_serviceに関する説明を参照してください。検出されたuddi:businessServicesは、wsdl2uddi:get_wsdlServiceInfoの場合と同じルールに従っている必要があります。

  • uddi:find_binding: 検索条件をより詳細に記述する場合に使用する引数。詳細は、uddi:find_bindingに関する説明を参照してください。検出されたuddi:businessServicesおよびuddi:bindingTemplatesは、wsdl2uddi:get_wsdlServiceInfoの場合と同じルールに従っている必要があります。

  • uddi:find_tModel: 検索条件をより詳細に記述する場合に使用する引数。詳細は、uddi:find_tModelに関する説明を参照してください。検出されたUDDIエンティティは、wsdl2uddi:get_wsdlServiceInfoの場合と同じルールに従っている必要があります。

注意注意

uddi:find_serviceuddi:find_bindingおよびuddi:find_tModelは、相互に排他的であることに注意してください。

戻り値  目次

wsdl2uddi:wsdlServiceInfos: 指定したWSDLのwsdl:typesに対応しているUDDIエンティティが含まれています。詳細は、「wsdl2uddi:wsdlServiceInfos」を参照してください。

find_wsdlMapping  目次

この操作では、WSDL文書のマッピングが検索されます。

引数  目次
  • uddi:authInfo: この引数は、uddi:authTokenの文字列表現です。

  • uddi:findQualifiers: Find Qualifierに関する説明を参照してください。

  • wsdl2uddi:wsdl

戻り値  目次

この操作では、wsdl2uddi:wsdlMappingが戻されます。

WSDL  目次

wsdl2uddi_v2.wsdl.wsdl

wsdl2uddi_v3.wsdl.wsdl

APIエンドポイント  目次

WSDL2UDDI APIエンドポイントは、http://<ホスト名>:<ポート>/<コンテキスト>/uddi/wsdl2uddiで確認できます。

Java  目次

org.systinet.uddi.client.wsdl2uddi.v3.Wsdl2uddiApi

デモv2: WSDL2UDDIのデモ

デモv3: WSDL2UDDIのデモ