Oracle Service Registryでは、分類または識別子システムに対する検証サービスを定義して使用するいくつかの方法が提供されています。 Oracle Service Registryでの分類の詳細は、「ユーザーズ・ガイド」の「分類: 原則、作成および検証」を参照してください。この項では、次のデプロイ可能なカスタム検証サービスに焦点を当てて説明します。
Oracle Service Registry上でローカルにデプロイ可能なカスタム検証サービス: ローカル検証サービス。
Systinet Server for JavaなどのSOAPサーバーにリモートでデプロイ可能なカスタム検証サービス: 外部検証サービス。
検証サービスでは、3つの異なるJavaインタフェース(主なUDDIデータ構造ごとに1つずつ)があります。これらのインタフェースは、UDDI仕様で定義されている検証サービスのWSDL portTypeに対応しています。
UDDI v3検証サービスでは、org.systinet.uddi.client.valueset.validation.v3.UDDI_ValueSetValidation_PortTypeを実装する必要があります。
UDDI v2検証サービスでは、org.systinet.uddi.client.vv.v2.ValidateValuesを実装する必要があります。
UDDI v1検証サービスでは、org.systinet.uddi.client.vv.v1.ValidateValuesを実装する必要があります。
これらのインタフェースは類似しているため、ここではv3検証のみについて説明します。ご使用の検証サービスでは、インタフェースUDDI_ValueSetValidation_PortTypeを実装する必要があります。このインタフェースには、Validate_valuesという1つのパラメータのみが含まれているvalidate_valuesメソッドのみがあります。このパラメータは、実パラメータのラッパーです。オプションのauthInfoおよびUDDI基本データ構造(businessEntities、businessServices、bindingTemplates、tModelsおよびpublisherAssertions)が検証されます。validate_valuesメソッドは、DispositionReportを戻します。検証が正常に行われると、DispositionReportには、UDDIErrorCodes.E_SUCCESSと同じerrNoを持つResultが1つのみ含まれます。
検証サービスが実装されると、Oracle Service Registryでローカルに検証サービスを実装できます。 Oracle Service Registryに検証サービスをデプロイするには、次の手順を実行します。
REGISTRY_HOME/app/uddi/services/WASP-INFにclassesサブディレクトリを作成し、(パッケージに対応するサブディレクトリを基準にして)このサブディレクトリにクラス・ファイルをコピーします。
Oracle Service Registryを停止し、REGISTRY/workディレクトリを削除して、Oracle Service Registryを再起動します。
詳細は、「デモ」の「Validation(検証)」を参照してください。検証サービスの構成の詳細は、「管理者ガイド」の「分類の管理」を参照してください。
外部検証サービスをデプロイするには、デプロイメント・パッケージを作成する必要があります。
この項では、Systinet Server for Javaにデプロイされる外部検証サービスの実装およびパッケージ化の方法について説明します。「Validation(検証)」で説明されているValidationのデモを使用して、ISBN検証サービスのパッケージ化およびデプロイの方法について説明します。Validationのデモをすでにビルド済であることが前提となります。
![]() | 注意 |
|---|---|
|
Oracle Service RegistryがREGISTRY_HOMEフォルダにインストールされており、http://localhost:8888/registry/で実行されていること、およびSystinet Server for JavaがWASP_HOMEフォルダにインストールされており、http://localhost:6060/で実行されていることも前提となっています。 | |
Systinet Server for Javaに対する検証サービスをパッケージ化およびデプロイするには、次の手順を実行します。
デプロイメント・パッケージを作成します。
次の構造を使用して、jarファイルExampleValidation.jarを作成します。

ISBNValidation.classをREGISTRY_HOME/demos/advanced/validation/build/classesからパッケージにコピーします。
wsdlファイルおよびxsdファイルをREGISTRY_HOME/doc/wsdlからパッケージにコピーします。
例12に示すように、package.xmlファイルをパッケージにコピーします。
必要なOracle Service Registryクライアント・パッケージとともに、検証パッケージをSystinet Server for Javaにデプロイします。
copy %REGISTRY_HOME%¥dist¥uddiclient_api_v3.jar %WASP_HOME%¥app¥system¥uddi
copy %REGISTRY_HOME%¥dist¥uddiclient_value_set_validation_v3.jar %WASP_HOME%¥app¥system¥uddi
copy ExampleValidation.jar %WASP_HOME%¥app¥system¥uddi
Systinet Server for Javaを停止し、WASP_HOME/workディレクトリを削除して、Systinet Server for Javaを再起動します。
この時点で、checked分類をREGISTRY/demos/advanced/validation/dataからアップロードすることができます。詳細は、「ユーザーズ・ガイド」の「分類のアップロード」を参照してください。
図10に示すように、検証サービス・エンドポイントを変更します。
「Validation(検証)」で説明されているValidationのデモを使用すると、検証サービスを実行およびテストできます。
例12 package.xml
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://systinet.com/wasp/package/1.2"
xsi:schemaLocation=
"http://systinet.com/wasp/package/1.2 http://systinet.com/wasp/package/1.2"
targetNamespace="http://my.org" version="1.0"
name="ISBNValidation" client-package="false" library="false"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tns="http://my.org"
xmlns:UDDIClient-value-set-validation-v3=
"http://systinet.com/uddi/client/value-set-validation/v3/5.0">
<dependency ref="UDDIClient-value-set-validation-v3:UDDIClient-value-set-validation-v3"
version="5.0"/>
<service-endpoint name="ISBNValidation"
path="/ISBNValidation"
service-instance="tns:ISBNValidationInstance"
processing="UDDIClient-value-set-validation-v3:UDDIClientProcessing">
<wsdl uri="uddi_vs_v3.wsdl" xmlns:wsdl="urn:uddi-org:vs_v3_binding"
service="wsdl:UDDI_ValueSetValidation_SoapService"/>
</service-endpoint>
<service-instance name="ISBNValidationInstance"
implementation-class="demo.uddi.validation.ISBNValidation"
preload="false" ttl="600" instantiation-method="shared"/>
</package>