SOAP Webサービス入力の取得を準備する
- アプリケーションのSOAP Webサービスとの通信要件を確認します。
- アプリケーションでの認証のための値
- SOAP Webサービスにデータを要求するための値
- 応答で提供されるデータ形式
アプリケーションの使用説明書を参照するか、アプリケーションをホストしている会社にお問い合わせください。
- RICOH ProcessDirectorで、アプリケーションとの通信を準備するには、以下のタスクを実行してください。
- アプリケーションにセキュリティー証明書が必要な場合は、RICOH ProcessDirectorの1次コンピューターに証明書をインストールします。
- 環境内でプロキシサーバーがWebサービスと通信する必要がある場合は、プロキシを使用するようにシステムをセットアップします。
- 呼び出す予定のWebサービスすべてのWSDLファイルをインポートします。
RICOH ProcessDirectorは、WSDLファイル内のSOAP操作からSOAP要求オブジェクトを作成します。RICOH ProcessDirectorがオブジェクトを作成するときに、SOAP操作の名前に追加する接頭部を指定します。SOAP要求オブジェクトは、Webサービスへの正しい呼び出しの作成に必要なSOAPバージョンなどの情報の判断を RICOH ProcessDirectorに任せます。
詳しくは、関連タスクを参照してください。
- アプリケーションで認証してSOAP Webサービスに応答を要求する手動テストを実行します。Webサービスが予期した応答を返すことを確認します。多くのブラウザーには、Boomerang for Google Chromeなど、テストWebサービスがSOAPクライアントに対して呼び出すプラグインがあります。
- Web サービスによって返された応答内のデータから SOAP Web サービスの入力装置がジョブを作成する方法を決定します。
- 入力装置が応答を受信するたびに、入力装置は応答内のすべての XML データを含めたジョブを作成できます。
- 入力装置は、XPath 表現を使用して応答を調べることができます。
表現に指定された XML エレメントを入力装置が検出した場合は、入力装置は一致するエレメントごとにジョブを作成します。各ジョブには、一致したエレメントが含まれます。また、すべてのエレメントが、ジョブの中にネストされます。2 つ以上のエレメントを入力装置が検出した場合は、入力装置は独立したジョブまたは子ジョブを作成できます。
一致するエレメントを入力装置が検出しなかった場合は、ジョブが作成されません。
- SOAP Web サービスの入力装置を定義するには、以下の手順に従ってください。
- 管理タブをクリックします。
- 左のペインで をクリックします。
- をクリックします。
- 一般タブでの操作:
- 入力装置の名前を入力します。
- ポーリング間隔プロパティーに、入力装置の Web サービス呼び出し間隔を設定します。
- XML ジョブを処理するワークフローを定義した後で、子ワークフロープロパティーにそのワークフローの名前を設定します。
- 設定するその他のプロパティーに値を入力します。
- 要求タブでの操作:
- 要求 URLプロパティーに、データを返す Web サービスの URL を設定します。RICOH ProcessDirector は、このデータを使用して 1 つ以上のジョブを作成します。
- 要求ペイロードプロパティー値には、入力装置がアプリケーションに送信するWebサービス要求の本文を指定します。資格情報やトークン、およびポーリング間隔プロパティー値と一致する時間範囲を指定するには、次のプロパティーのシンボルを使用します。
プロパティーのデータベース名 プロパティーのユーザーインターフェース名 備考 WebService.Credential なし RICOH ProcessDirector は、このプロパティー内に Web サービスの資格情報またはトークンを保存します。 WebService.CurrentRequestTime なし RICOH ProcessDirector は、ポーリング間隔の開始時にこのプロパティーの値を設定します。 WebService.LastSuccessRequestTime 状況タブ:成功した最終要求時刻 入力装置がアプリケーションと正常に通信すると、RICOH ProcessDirector はこのプロパティーに、 WebService.CurrentRequestTimeプロパティーと一致する値を設定します。正常に通信できると、ジョブの作成に使用できるデータを RICOH ProcessDirector が受信しなかった場合でも、応答コード 200 になります。 この例では、ペイロードに次のエレメントが含まれます。<Token>、<TimeRange>、<Start>および<End>。各エレメントの値はシンボルです。
<Token>${WebService.Credential}</Token><TimeRange> <Start>${WebService.LastSuccessRequestTime}</Start> <End>${WebService.CurrentRequestTime}</End></TimeRange>
入力装置は、XML 入力のポーリング時にシンボルを解決します。
- SOAP要求プロパティーに、WSDLファイルのインポート時に RICOH ProcessDirectorが作成した SOAP要求を設定します。例えば、GetOrdersByDateSOAP要求を使用するとします。インポート時には、SOAP要求の名前の先頭に PrintShopを追加しました。 PrintShop-GetOrdersByDateを選択します。
- 応答からジョブを作成プロパティーの値を選択して、入力装置が入力からジョブを作成する方法を指定します。
- 入力装置が応答を受信するたびにジョブを作成するには、常時を選択します。
- 応答内の XML を調べて、XML エレメントが検出されるたびにジョブを作成するには、応答パターンが一致する場合のみを選択します。
- 応答パターンが一致する場合のみを選択した場合:
- 一致する応答パターンプロパティーに、各ジョブに使用する XML エレメントを識別する XPath 表現を設定します。
例えば、注文ごとに 1 つのジョブを作成し、応答内のデータに注文エレメントを含めるとします。XML 内の注文エレメントを表す XPath 表現を入力します。
- 2 つ以上の一致を入力装置が検出したときに子ジョブを作成する場合は、子ジョブを作成プロパティーを はいに設定します。また入力装置は、データがない親ジョブを作成します。1 つの一致を入力装置が検出した場合は、入力装置は独立したジョブを作成します。
- 入力装置が検出した一致の数にかかわらず、独立したジョブを作成する場合は、子ジョブを作成プロパティーを いいえに設定します。
- 一致する応答パターンプロパティーに、各ジョブに使用する XML エレメントを識別する XPath 表現を設定します。
- 環境内でプロキシサーバーがWebサービスと通信する必要がある場合は、プロキシを使用プロパティーに正しいプロキシサーバーを設定します。
- タイムゾーンオフセットプロパティーを、協定世界時 (UTC) と Web サービスで使用されるタイムゾーンの間のオフセットに設定します (単位は時間数)。例えば、Web サービスが太平洋標準時を使用する場合は、このプロパティーを-8に設定します。
- 注意:
- Web サービスをホストしている場所で、標準時と夏時間の切り換えがある場合は、必ずこのプロパティーを変更してください。変更しないと、加算または減算される時間の間、ジョブの作成に RICOH ProcessDirector が使用するデータが失われる可能性があります。
- Web サービスが UTC を使用する場合は、0を入力するか、このフィールドを空白のままにします。
- 認証タブで、アプリケーションによる認証に必要な値を指定します。詳しくは、SOAP Webサービスでの認証の関連タスクを参照してください。
アプリケーションで認証が要求されない場合は、[認証]プロパティーをすべて空白のままにします。
- オプション: 拡張タブで、環境のオプションプロパティーを指定します。
- 完了したら、OKをクリックします。
入力装置、通知、およびワークフローのセットアップが完了したら、RICOH ProcessDirector とアプリケーションの間でデータの交換をテストします。
付属のRestfulWebServiceSample REST Web サービスの入力装置は、SOAP Web サービス入力装置に似ています。MarcomCentral Connect 機能には、付属の SOAP Web サービスの入力装置が含まれています。