Web Service Settings ダイアログボックスで、Web サービスを呼び出すための SOAP メッセージが自動的に生成されます。メッセージは、指定した Web サービスのプロパティに基づいて生成されます。
サービスの入力パラメーターのドキュメント値を表す添付ファイルを SOAP メッセージに追加します。次の XML コードは、Web サービス操作を呼び出すために使用される SOAP メッセージの一般的な構造を示しています。
<soapenv:Envelope
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
xmlns:ser="http://foo.net/services">
<soapenv:Header />
<soapenv:Body>
<ser:operation_name>
<ser:parameter_name>
<!-- elements for file attachments are placed here -->
</ser:parameter_name>
</ser:operation_name>
</soapenv:Body>
</soapenv:Envelope>
-
Body 要素には、サービス操作と同じ名前の 1 つの要素が含まれています。
-
operation_name 要素には、各入力パラメーターにつき 1 つの要素が含まれています。これらの要素の名前は、パラメーター名と同じです。アクティベートされたプロセスの Web サービスの操作名は、常に invoke となります。パラメーター名は、プロセスに定義されている入力変数の名前です。
-
SOAP メッセージにファイルを添付するために使用される方法によって、添付ファイルを識別するために使用される要素が決まります。使用できる方法は、MIME、MTOM、base64 エンコードされたテキストまたはファイルの URL です。(AEM forms が提供する Web サービスでは、MTOM 添付ファイルはサポートされていません。)
MIME および MTOM 添付ファイル
Web Service Settings ダイアログボックスの「Attachment」タブを使用して、ドキュメント値を指定します。表の各行は 1 つの添付ファイルを表しています。「Part」列には、添付ファイルの ID が含まれています。Web サービスによって ID が決定されます。
MIME および MTOM 添付ファイルの設定:
-
Web Service Settings ダイアログボックスで、「Attachment」タブをクリックします。
-
表に行を追加するには、「Load Attachment Part」をクリックします。
-
「Part」列の値を確認します。これらの値は手順 7 で使用します。
-
表の各行で、「Attachment」フィールドをクリックします。表示される省略記号ボタン
をクリックして、XPath Builder を開きます。
-
表の各行で、「Content-Type」セルをクリックして、添付するファイルの MIME タイプを入力します。MIME タイプの例として、
application/pdf
があります。
-
「Request」タブをクリックし、添付ファイルを値として使用するパラメーターを表す各要素内に attachmentID 要素を追加します。
-
各 attachmentID 要素内に、「Attachment」タブの添付ファイルの「Part」列に表示されるテキストを入力します。
例
次の SOAP 要求は、MIME または MTOM 添付ファイルの設定の例です。これは、ドキュメント値である documentIn という名前の入力パラメーターを持つプロセスの要求メッセージです。
<soapenv:Envelope
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
xmlns:ser="http://adobe.com/idp/services">
<soapenv:Header/>
<soapenv:Body>
<ser:invoke>
<ser:documentIn>
<ser:attachmentID>
part0
</ser:attachmentID>
</ser:documentIn>
</ser:invoke>
</soapenv:Body>
</soapenv:Envelope>
base64 エンコードされたテキストの添付ファイル
SOAP メッセージには、コンテンツの MIME タイプおよびファイルの base64 エンコードされたテキスト表現が含まれます。コンテンツタイプは、contentType 要素で指定されます。テキストは、binaryData 要素で指定されます。
base64 エンコードされたテキストを取得する場合、getDocContentBase64 XPath 関数を使用できます。
次の手順では、ドキュメント値を表す base64 エンコードされたテキストがプロセス変数に格納されていると想定します。
base64 エンコードされたテキストの添付ファイルの設定:
-
Web Service Settings ダイアログボックスで、「Request」タブをクリックします。
-
ドキュメント値を指定するパラメーターを表す要素に contentType 要素を追加します。
-
contentType 要素内で、コンテンツタイプを入力するか、またはコンテンツタイプを含む文字列変数に解決される XPath 式を追加します。
-
ドキュメント値を使用するパラメーターを表す要素に binaryData 要素を追加します。
-
binaryData 要素内で、ドキュメントを表す base64 エンコードされたテキストを含む文字列変数に解決される XPath 式を追加します。
例
次の SOAP 要求は、base64 エンコードされたテキストの添付ファイルの設定の例です。これは、ドキュメント値である documentIn という名前の入力パラメーターを持つプロセスの要求メッセージです。
<soapenv:Envelope
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
xmlns:ser="http://adobe.com/idp/services">
<soapenv:Header/>
<soapenv:Body>
<ser:invoke>
<ser:documentIn>
<ser:contentType>
{$/process_data/@contentType$}
</ser:contentType>
<ser:binaryData>
{$/process_data/@docBase64$}
</ser:binaryData>
</ser:documentIn>
</ser:invoke>
</soapenv:Body>
</soapenv:Envelope>
ファイルの URL の添付ファイル
ファイルの URL は、remoteURL 要素で指定されます。
ファイルの URL の添付ファイルの設定:
-
Web Service Settings ダイアログボックスで、「Request」タブをクリックします。
-
ドキュメント値を使用するパラメーターを表す要素内で、remoteURL 要素を追加します。
-
remoteURL 要素内で、ファイルの URL を入力するか、または URL を含む文字列変数に解決される XPath 式を追加します。
例
次の SOAP 要求は、ファイルの URL の添付ファイルの設定の例です。これは、ドキュメント値である documentIn という名前の入力パラメーターを持つプロセスの要求メッセージです。
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://adobe.com/idp/services">
<soapenv:Header/>
<soapenv:Body>
<ser:invoke>
<ser:documentIn>
<ser:remoteURL>
http://help.adobe.com/en_US/AEM forms/es/overview.pdf
</ser:remoteURL>
</ser:documentIn>
</ser:invoke>
</soapenv:Body>
</soapenv:Envelope>