プライベートWSDLファイルからの顧客情報の抽出 - 7.3

キーストア

Version
7.3
Language
日本語
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > 認証コンポーネント > Keystore
データガバナンス > サードパーティーシステム > 認証コンポーネント > Keystore
データクオリティとプレパレーション > サードパーティーシステム > 認証コンポーネント > Keystore
Last publication date
2024-02-22

このシナリオでは、顧客情報を抽出するためにプライベートWSDLファイルに接続する3コンポーネントジョブについて説明します。

Talendでサポートされているテクノロジーの詳細は、Talendコンポーネントをご覧ください。

このジョブで使用するWSDLファイルは、SSLプロトコル下で対応するWebサービスにアクセスします。この目的のために、このファイル内の最も相対的なコードは次のようになります。

<wsdl:port name="CustomerServiceHttpSoap11Endpoint"
binding="ns:CustomerServiceSoap11Binding">
            <soap:address location="https://192.168.0.22:8443/axis2/services/CustomerService.CustomerServiceHttpSoap11Endpoint/"/>
        </wsdl:port>

したがって、Tomcatのserver.xmlファイルに次のコードを入力します。

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="true" sslProtocol="TLS" 
     keystoreFile="D:/server.keystore" keystorePass="password"
     keystoreType="JKS"
     truststoreFile="D:/server.p12" truststorePass="password"
     truststoreType="PKCS12"
    />

そのため、このWSDLファイルに接続するためのKeystoreファイルが必要です。このジョブを複製するには、次の手順に従います。

  • tSetKeyStoretWebServicetLogRowという各コンポーネントを[Palette] (パレット)からデザインワークスペースにドロップします。

  • tSetKeyStoreを右クリックし、コンテキストメニューを開きます。

  • このメニューで[Trigger] (トリガー) > [On Component Ok] (コンポーネントがOKの場合)を選択して、このコンポーネントをtWebServiceに接続します。

  • tWebServiceを右クリックし、コンテキストメニューを開きます。

  • このメニューで[Row] (行) > [Main] (メイン)を選択して、このコンポーネントをtLogRowに接続します。

  • tSetKeyStoreをダブルクリックして、その[Basic settings] (基本設定)ビューを開き、コンポーネントのプロパティを定義します。

  • [TrustStore type] (TrustStoreタイプ)フィールドのドロップダウンリストから[PKCS12]を選択します。

  • [TrustStore file] (TrustStoreファイル)フィールドで、対応するTrustStoreファイルを参照します。ここでは、server.p12です。

  • [TrustStore password] (TrustStoreパスワード)フィールドで、このTrustStoreファイルのパスワードを入力します。このサンプルでは、passwordです。

  • [Need Client authentication] (クライアント認証が必要)チェックボックスをオンにして、Keystore設定フィールドを有効化します。

  • [KeyStore type] (KeyStoreタイプ)フィールドのドロップダウンリストから[JKS]を選択します。

  • [Keystore file] (Keystoreファイル)フィールドで、対応するKeystoreファイルを参照します。ここでは、server.keystoreです。

  • tWebServiceをダブルクリックしてコンポーネントエディターを開くか、[Basic settings] (基本設定)ビューで[Service configuration] (サービス構成)の横にある[...]ボタンをクリックしてデザインワークスペースでコンポーネントを選択します。

  • [WSDL]フィールドで、使用するプライベートWSDLファイルを参照します。このサンプルでは、CustomerService.wsdlです。

  • [WSDL]フィールドの横にある更新ボタンをクリックして、WSDLの説明を取得し、それを後続のフィールドに表示します。

  • このサンプルでは、[Port Name] (ポート名)リストで、使用するポートCustomerServiceHttpSoap11Endpointを選択します。

  • [Operation] (操作)リストで、使用するサービスを選択します。このサンプルでは、選択されるサービスはgetCustomer(parameters):Customerです。

  • [Next] (次へ)をクリックし、エディターで新しいビューを開きます。

[Input mapping] (入力マッピング)ビューの右パネルに、サービスの入力パラメーターが自動的に表示されます。ただし、[[+] parameters] ([+]パラメーター)を選択した場合、他のパラメーターを追加でき、上部のプラスボタンをクリックすると、[Parameter Tree] (パラメーターツリー)ダイアログボックスが表示され、そこから任意のパラメーターを選択できます。

この例のWebサービスにはIDという入力パラメーターが1つだけあります。

  • parameters.ID行の[Expression] (式)カラムに、対象の顧客IDを引用符で囲んで入力します。このサンプルでは、A00001です。

  • [Next] (次へ)をクリックし、エディターで新しいビューを開きます。

[Element] (エレメント)リストに、Webサービスの出力パラメーターが自動的に表示されます。ただし、[[+] parameters] ([+]パラメーター)を選択した場合、他のパラメーターを追加でき、上部のプラスボタンをクリックすると、[Parameter Tree] (パラメーターツリー)ダイアログボックスが表示され、そこから任意のパラメーターを選択できます。

この例のWebサービスにはreturn.addressreturn.emailreturn.namereturn.phoneという4つの出力パラメーターがあります。

定義済みのWebサービスの出力パラメーターと出力コンポーネントのスキーマ間に接続を作成する必要があります。この操作は次の手順で行います。

  • ビューの右パネルで[Edit Schema] (スキーマを編集)の横にある[...]ボタンをクリックしてダイアログボックスを開くと、出力スキーマを定義できます。

  • [Edit Schema] (スキーマを編集)で、プラスボタンをクリックし、4つのカラムを出力スキーマに追加します。

  • 各カラム(このサンプルではNamePhoneEmailAddress)をクリックして新しい名前を入力します。これで、対象の顧客情報を取得できます。

  • [OK]をクリックし、変更を有効にし、スキーマ編集ダイアログボックスを閉じます。

  • エディターの右側にある[Element] (エレメント)リストで、スキーマ編集ダイアログボックスで定義したカラムに対応するフィールドに各パラメーターをドラッグします。

注:

使用可能な場合は、[Auto map!] (自動マップ)ボタン(インターフェイスの左下にあるボタン)を使用すると、マッピング操作を自動的に実行できます。

  • [OK]をクリックして変更を有効にし、エディターを閉じます。

  • デザインワークスペースでtLogRowをダブルクリックして、その[Basic settings] (基本設定)ビューを開き、プロパティを定義します。

  • [Sync columns] (カラムを同期)をクリックして、先行のコンポーネントからスキーマを取得します。

  • ジョブを保存し、F6を押して実行します。

ID A00001の顧客の情報が返され、 Talend Studio のコンソールに表示されます。