WSDLファイルを読み込んでSOAPメソッドを実行します。
SOAP1.1/1.2に対応しています。
RPCスタイルには対応していません。
WSDLの定義はインポート機能によって本コンポーネントに設定することができます。詳しくは、下記トピック「WSDLインポート機能」を参照してください。
SSL通信を行う場合、管理コンソールで登録された証明書を使用してPKI基盤に従って通信を行います。
入力 | フォーマット | XML |
---|---|---|
接続数 | 1 | |
説明 | WSDL読み込みによって定義されたストリーム | |
出力 | フォーマット | XML |
説明 | 出力形式 に応じたストリームが出力されます。 |
名前 | プロパティ型 | マッピング | 説明 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
WSDL指定方法 | choice | - |
使用するWSDLの場所をファイルパスで指定するかURLで指定するかを設定します。
|
|||||||||
WSDLファイルパス | remoteFile | - | WSDL指定方法がファイルの場合に使用するWSDLファイルを指定します。 ここで指定するWSDLファイルは実行時および設計時に読み込まれ、使用されます。 |
|||||||||
WSDL URL | string | - | WSDL指定方法がURLの場合に使用するWSDLのURLを指定します。 ここで指定するWSDLファイルは実行時および設計時に読み込まれ、使用されます。 |
|||||||||
サービス名 | string | - |
実行するWebサービスのサービス名。(WSDLファイル内のservice要素) 通常はWSDLインポート機能で設定されます。 |
|||||||||
ポート | string | - |
実行するWebサービスのポート。(指定したサービスで定義されているport) 通常はWSDLインポート機能で設定されます。 |
|||||||||
メソッド名 | string | - |
実行するWebサービスのメソッド名。(指定したポートにバインディングされているoperation) 通常はWSDLインポート機能で設定されます。 |
|||||||||
出力形式 | choice | - |
出力ストリームを指定します。
「RequestEnvelope」を指定した場合はSOAPリクエストは実行されません。デバッグ時や、このコンポーネントの出力をさらに加工して後でHTTP(Post)コンポーネントで送信する場合などに使用します。 「ResponseEnvelope」を指定した場合はSOAPリクエストが実行され、そのレスポンスが出力ストリームとなります。
|
|||||||||
Cookie | choice | - |
SOAPサーバーがCookieを使用する場合のCookieの維持期間を指定します。
|
|||||||||
コネクション名 | connection | - |
http(s)での通信にコネクション設定を使用する場合に指定します。 以下の場合には、コネクションを参照するようにして、接続設定でプロキシや認証の設定を行います。
|
|||||||||
エンドポイント | string | 入力&出力 | WSDLで指定されているEndpointとは異なるEndpointで通信する場合にそのURLを指定します。 | |||||||||
サーバー証明書のCN確認 | boolean | 入力&出力 |
サーバー証明書のCN確認を行うかどうかを指定します。
|
|||||||||
レスポンス長さ制限 | int | 入力&出力 |
SOAPレスポンスの最大取得バイト数を指定します。 ※指定しない場合は、49152バイトになります。-1を指定した場合は制限を指定しません。 |
|||||||||
SOAPヘッダー(送信) | category | 入力&出力 | 実行するメソッドにSOAPヘッダーが必要な場合に、そのヘッダーに設定する値を指定します。 | |||||||||
SOAPヘッダー(受信) | category | 入力&出力 | 実行したメソッドのレスポンスにSOAPヘッダーがある場合に、そのヘッダーの値を取得します。 |
コミット | 何もしません。 |
---|---|
ロールバック | 何もしません。 |
タイプ | パラメーター | エラー処理フロー へのストリーム | エラー コード | 説明 |
---|---|---|---|---|
SOAPフォルト | なし | SOAPFaultのSOAPEnvelope(XML) | 1 | 実行中にSOAPFaultが発生した場合や、通信先のWebサービスがSOAPFaultを返した場合 |
汎用 | なし | コンポーネントの入力ストリーム | 2 | WSDLのパース中にエラーが発生した場合 |
3 | WSDLの指定で不正な形式のURLが指定された場合 | |||
4 | 通信用ディスパッチインスタンスの作成に失敗した場合 | |||
5 | SOAPヘッダー作成時にSOAP例外が発生した場合 | |||
6 | エンベロープ解析中に文字コードエラーが発生した場合 | |||
7 | 入出力ストリームの処理中にエラーが発生した場合 | |||
8 | 通信時にエラーが発生した場合 |
WSDLの定義から簡単にプロパティや入出力ストリームの設定を行うために、本コンポーネントにはインポート機能を用意しています。
WSDLをインポートするためのダイアログボックスを表示するには、以下の2つの方法があります。
WSDLのインポートダイアログボックスでは、各リストから選択して「OK」をクリックすると自動的にインスペクタのサービス名 、ポート 、メソッド名 、出力形式 、SOAPヘッダー(送信) 、SOAPヘッダー(受信) が設定されます。また、ストリームペインの入力タブと出力タブのフィールドが自動的に定義されます。SOAPヘッダー(送信) 、SOAPヘッダー(受信) はインポート後に編集することができます。
通信に使用されるEndpointは以下の優先順位で決定されます。
このコンポーネントはDocumentスタイルにのみ対応し、RPCスタイルには対応していません。
このコンポーネントはSOAP1.2、WSDL1.1に対応しています。
フローサービスが自動で行う型変換がWSDLの指定する形式にマッチしないことがあります。例えば、xsd:dateTime型の書式は「yyyy-MM-dd'T'HH:mm:ss'Z'」ですが、フローサービスの自動変換ではこの形式の日付文字列は生成されません。そのため、この場合はフィールド定義の型をString型に変更した上で、FORMATDATEなどの関数を使用して変換した値を差し込む必要があります。
xsd:date、xsd:time、桁数が指定された数値型でも同様な問題が起こる場合があるため、その場合はフィールド型をString型に変更した上でマッパー関数でWSDLの指定する形式に書式変換した文字列を差し込んでください。
フローサービスのログ出力レベルが「デバッグ」に設定され、コンポーネントの「出力形式」プロパティで「応答メッセージ(エンベロープ)」を選択している場合に、要求メッセージと応答メッセージをFlowService.logへデバッグレベルで出力します。