カスタム検証サービスの作成  目次

Oracle Service Registryでは、分類または識別子システムに対する検証サービスを定義して使用するいくつかの方法が提供されています。 Oracle Service Registryでの分類の詳細は、「ユーザーズ・ガイド」の「分類: 原則、作成および検証」を参照してください。この項では、次のデプロイ可能なカスタム検証サービスに焦点を当てて説明します。

検証サービスでは、3つの異なるJavaインタフェース(主なUDDIデータ構造ごとに1つずつ)があります。これらのインタフェースは、UDDI仕様で定義されている検証サービスのWSDL portTypeに対応しています。

これらのインタフェースは類似しているため、ここでは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に検証サービスをデプロイするには、次の手順を実行します。

  1. REGISTRY_HOME/app/uddi/services/WASP-INFclassesサブディレクトリを作成し、(パッケージに対応するサブディレクトリを基準にして)このサブディレクトリにクラス・ファイルをコピーします。

  2. 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に対する検証サービスをパッケージ化およびデプロイするには、次の手順を実行します。

  1. デプロイメント・パッケージを作成します。

    次の構造を使用して、jarファイルExampleValidation.jarを作成します。

    ISBNValidation.classREGISTRY_HOME/demos/advanced/validation/build/classesからパッケージにコピーします。

    wsdlファイルおよびxsdファイルをREGISTRY_HOME/doc/wsdlからパッケージにコピーします。

    例12に示すように、package.xmlファイルをパッケージにコピーします。

  2. 必要なOracle Service Registryクライアント・パッケージとともに、検証パッケージをSystinet Server for Javaにデプロイします。

    1. copy %REGISTRY_HOME%¥dist¥uddiclient_api_v3.jar %WASP_HOME%¥app¥system¥uddi

    2. copy %REGISTRY_HOME%¥dist¥uddiclient_value_set_validation_v3.jar %WASP_HOME%¥app¥system¥uddi

    3. copy ExampleValidation.jar %WASP_HOME%¥app¥system¥uddi

  3. Systinet Server for Javaを停止し、WASP_HOME/workディレクトリを削除して、Systinet Server for Javaを再起動します。

この時点で、checked分類をREGISTRY/demos/advanced/validation/dataからアップロードすることができます。詳細は、「ユーザーズ・ガイド」の「分類のアップロード」を参照してください。

図10に示すように、検証サービス・エンドポイントを変更します。

図10 checked分類の検証

checked分類の検証

「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>