GETSOAPRESPONSEHEADER  
説明

SOAP レスポンスヘッダを返します。Web サービスリクエストの実行後に、Web サービスを呼び出しているコード内からこの関数を呼び出します。

 
戻り値

SOAP レスポンスヘッダ

 
カテゴリ

XML 関数

 
ヒストリ

ColdFusion MX 7: この関数が追加されました。

 
関数のシンタックス
GetSOAPResponseHeader(webservice, namespace, name [, asXML])
 
関連項目

AddSOAPRequestHeader、AddSOAPResponseHeader、GetSOAPRequest、GetSOAPRequestHeader、GetSOAPResponse、IsSOAPRequest、『ColdFusion MX 開発ガイド』の第36章の「Web サービスの使用」 の「基本的な Web サービスの概念」

 
パラメータ

 
使用方法

asXML パラメータに対して false を指定した場合、ColdFusion は、ヘッダの xsi:type 属性で指定されたデータタイプを使用してヘッダを最初に取り出そうとします。xsi:type 属性を使用できない場合、ColdFusion はヘッダを文字列として取り出そうとします。asXML パラメータに対して true を指定した場合、ColdFusion はヘッダを未処理の XML として取り出します。

cfinvoke を使用して Web サービスを呼び出した後に、Web サービスの利用者が CFML コード内で使用します。

 

この例は 2 つの部分で構成されています。最初の部分は Web サービス CFC です。この関数およびその他の ColdFusion SOAP 関数は、この Web サービス CFC を使用して、Web サービスとのやり取りを示します。この関数に対して Web サービスを実装するには、AddSOAPResponseHeader 関数または GetSOAPRequestHeader 関数の例を参照してください。

次の例を実行して、GetSOAPResponseHeader 関数の機能を確認してください。

<!--- CreateObject 関数内の URL がここで示されたものと異なる場合は修正して、
使用するサーバーおよび "headerservice.cfc" ファイルの場所と一致させなければ
なりません。末尾の cfinvoke タグについても同様です。 --->

<h3>GetSOAPResponseHeader の例</h3>
<cfscript>
 // Web サービスオブジェクトを作成
 ws = CreateObject("webservice", "http://localhost:8500/soapheaders/
headerservice.cfc?WSDL");
 
 // ユーザー名ヘッダを文字列として設定
 addSOAPRequestHeader(ws, "http://mynamespace/", "username", "tom", false);
 
 // パスワードヘッダを CFML XML オブジェクトとして設定
 doc = XmlNew();
 doc.password = XmlElemNew(doc, "http://mynamespace/", "password");
 doc.password.XmlText = "My Voice がパスワードです。";
 doc.password.XmlAttributes["xsi:type"] = "xsd:string";
 addSOAPRequestHeader(ws, "ignoredNameSpace", "ignoredName", doc);
  
 // Web サービスのオペレーションを呼び出し
 ret = ws.echo_me("argument");
 
 // 先頭のヘッダをオブジェクト (文字列) および XML として取得
 header = getSOAPResponseHeader(ws, "http://www.tomj.org/myns", "returnheader");
 XMLheader = getSOAPResponseHeader(ws, "http://www.tomj.org/myns", "returnheader", true);

 // 2 番めのヘッダをオブジェクト (文字列) および XML として取得
 header2 =  getSOAPResponseHeader(ws, "http://www.tomj.org/myns", "returnheader2");
 XMLheader2 = getSOAPResponseHeader(ws, "http://www.tomj.org/myns", "returnheader2", 
true);
</cfscript>
<hr>
<cfoutput>
Soap Header value:#HTMLCodeFormat(header)#<br>
Soap Header XML value:#HTMLCodeFormat(XMLheader)#<br>
Soap Header 2 value:#HTMLCodeFormat(header2)#<br>
Soap Header 2 XML value:#HTMLCodeFormat(XMLheader2)#<br>
Return value:#HTMLCodeFormat(ret)#<br>
</cfoutput>
<hr>

<cfinvoke component="soapheaders.headerservice" method="echo_me" returnvariable="ret" 
in_here="hi">
</cfinvoke>
<cfoutput>Cfinvoke returned:#ret#</cfoutput>
WEBSERVICE  
cfobject タグまたは createobject 関数から返される webservice オブジェクトです。
NAMESPACE  
ヘッダのネーム空間である文字列です。
NAME  
SOAP ヘッダの名前である文字列です。
ASXML  
true の場合、ヘッダは CFML XML オブジェクトとして返されます。false (デフォルト) の場合、 ヘッダは Java オブジェクトとして返されます。