ISSOAPREQUEST |
説明 CFC が Web サービスとして呼び出されるかどうかを調べます。
戻り値 CFC が Web サービスとして呼び出される場合は true、そうでない場合は false。
カテゴリ XML 関数
ヒストリ ColdFusion MX 7: この関数が追加されました。
関数のシンタックス
    IsSOAPRequest()
関連項目 AddSOAPRequestHeader、AddSOAPResponseHeader、GetSOAPRequest、GetSOAPRequestHeader、GetSOAPResponse、GetSOAPResponseHeader、『ColdFusion MX 開発ガイド』の第36章の「Web サービスの使用」 の「基本的な Web サービスの概念」
使用方法 CFC 内でこの関数を呼び出して、CFC が Web サービスとして起動しているかどうかを調べます。
例 この例では、IsSOAPRequest 関数のオペレーションを示す CFC Web サービスを作成すると共に、他の ColdFusion SOAP 関数のオペレーションを示す Web サービスも提供します。 次のコードを、Web ルート下の "soapheaders" というフォルダに "headerservice.cfc" として保存します。この Web サービスを起動する例を実行することにより、そのオペレーション、特に IsSOAPRequest 関数のオペレーションをテストします。たとえば、AddSOAPRequestHeader の例を参照してください。
    <h3>IsSOAPRequest の例</h3>
    <cfcomponent displayName="tester" hint="Test for SOAP headers">

    <cffunction name="echo_me"
             access="remote"
             output="false"
             returntype="string"
             displayname="Echo Test" hint="Header test">

      <cfargument name="in_here" required="true" type="string">

    <cfset isSOAP = isSOAPRequest()>
    <cfif isSOAP>

       <!--- 先頭のヘッダを文字列および XML として取得 --->
       <cfset username = getSOAPRequestHeader("http://mynamespace/", "username")>
       <cfset return = "サービスで認識されるユーザー名 : " & username>
       <cfset xmlusername = getSOAPRequestHeader("http://mynamespace/", "username", "TRUE")>
       <cfset return = return & "<br> as XML:" & xmlusername>

       <!--- 2 番めのヘッダを文字列および XML として取得 --->
       <cfset password = getSOAPRequestHeader("http://mynamespace/", "password")>
       <cfset return = return & "サービスで認識されるパスワード : " & password>
       <cfset xmlpassword = getSOAPRequestHeader("http://mynamespace/", "password", "TRUE")>
       <cfset return = return & "<br> as XML:" & xmlpassword>

       <!--- ヘッダを文字列として追加 --->
        <cfset addSOAPResponseHeader("http://www.tomj.org/myns", "returnheader", "AUTHORIZED
    VALUE", false)>

       <!--- CFML XML 値を使用する 2 番めのヘッダを追加 --->
       <cfset doc = XmlNew()>
       <cfset x = XmlElemNew(doc, "http://www.tomj.org/myns", "returnheader2")>
       <cfset x.XmlText = "hey man, here I am in XML">
       <cfset  x.XmlAttributes["xsi:type"] = "xsd:string">
       <cfset tmp = addSOAPResponseHeader("ignoredNameSpace", "ignoredName", x)>

    <cfelse>
       <!--- ヘッダを文字列として追加 - 必ずエラーを生成!
        <cfset addSOAPResponseHeader("http://www.tomj.org/myns", "returnheader", "AUTHORIZED
    VALUE", false)>
       --->
        <cfset return = "Web サービスとして呼び出されない">
    </cfif>

    <cfreturn return>

    </cffunction>

    </cfcomponent>