9 XML C用のSOAP APIパッケージ

SOAPは、非集中型の分散環境で情報を交換するための軽量プロトコルです。XMLベースのプロトコルで、3つの部分から構成されています。その3つの部分とは、メッセージ中にあるものとその処理方法を記述するためのフレームワークを定義するエンベロープ、アプリケーションで定義されるデータ型のインスタンスを表現するための一連のエンコーディング・ルールおよびリモート・プロシージャ・コールとレスポンスを表現するための規則です。

SOAP 1.1では、添付ファイルは許可されていません。SOAP 1.2では、フォルトがある場合、本文にはその他の要素を追加できません。

SOAPメッセージの構造を、次のコード・セクションに示します。

[SOAP message (XML document)
   [SOAP envelope
      [SOAP header?
            element*
      ]
      [SOAP body
           (element* | Fault)?
      ]
   ]
]

次の表にXML C APIのSOAPパッケージで使用できるメソッドの概要を示します。

表9-1 XML C実装のSOAPメソッドの概要

関数 概要

XmlSoapAddBodyElement()

SOAPメッセージの本文に要素を追加します。

XmlSoapAddFaultReason()

他のフォルト理由を追加します。

XmlSoapAddFaultSubDetail()

フォルト詳細に子を追加します。

XmlSoapAddHeaderElement()

SOAPヘッダーに要素を追加します。

XmlSoapCall()

SOAPメッセージを送信し、リプライを待機します。

XmlSoapCreateConnection()

SOAP接続オブジェクトを作成します。

XmlSoapCreateCtx()

SOAPコンテキストを作成し、戻します。

XmlSoapCreateMsg()

空のSOAPメッセージを作成して戻します。

XmlSoapDestroyConnection()

SOAP接続オブジェクトを破棄します。

XmlSoapDestroyCtx()

SOAPコンテキストを破棄します。

XmlSoapDestroyMsg()

XmlSoapCreateMsgを使用して作成したSOAPメッセージを破棄します。

XmlSoapError()

判読可能なエラー・コードを取得します。

XmlSoapGetBody()

SOAPメッセージのエンベロープ本文を戻します。

XmlSoapGetBodyElement()

SOAP本文から要素を取得します。

XmlSoapGetEnvelope()

SOAPパートのエンベロープを戻します。

XmlSoapGetFault()

フォルトのコード、理由および詳細を戻します。

XmlSoapGetHeader()

SOAPメッセージのエンベロープ・ヘッダーを戻します。

XmlSoapGetHeaderElement()

SOAPヘッダーから要素を取得します。

XmlSoapGetMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。

XmlSoapGetReasonLang()

指定したインデックスを持つ理由の言語を取得します。

XmlSoapGetReasonNum()

Fault要素の理由の数を計算します。

XmlSoapGetRelay()

SOAPヘッダー要素からRelay属性を取得します。

XmlSoapGetRole()

SOAPヘッダー要素からロールを取得します。

XmlSoapHasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

XmlSoapSetFault()

SOAPメッセージにフォルトを設定します。

XmlSoapSetMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。

XmlSoapSetRelay()

SOAPヘッダー要素にRelay属性を設定します。

XmlSoapSetRole()

SOAPヘッダー要素にロールを設定します。

9.1 XmlSoapAddBodyElement()

SOAPメッセージの本文に要素を追加します。数値のエラー・コードを設定します。

構文

xmlelemnode *XmlSoapAddBodyElement(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   oratext *qname,
   oratext *uri, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

qname
IN

追加する要素のQName

uri
IN

追加する要素の名前空間URI

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 作成された要素

9.2 XmlSoapAddFaultReason()

他のフォルト理由を追加します。同じ理由に対して別の言語のテキストを提供できます。フォルトが作成されると、そのときにプライマリ言語と理由が追加されます。この関数は、その理由の翻訳を追加するのに使用します。

構文

xmlerr XmlSoapAddFaultReason(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   ratext *reason,
    oratext *lang);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

reason
IN

判読可能なフォルト理由

lang
IN

理由の言語

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapSetFault()

9.3 XmlSoapAddFaultSubDetail()

フォルト詳細に子を追加します。XmlSoapSetFaultで作成できるのは、子を1つ持つ詳細要素です。この関数を使用すると、子を追加できます。

構文

xmlerr XmlSoapAddFaultSubDetail(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   xmlelemnode *sub);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

sub
IN

サブ詳細ツリー

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapGetReasonLang()

9.4 XmlSoapAddHeaderElement()

SOAPヘッダーに要素を追加します。

構文

xmlelemnode *XmlSoapAddHeaderElement(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   oratext *qname,
   oratext *uri, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

qname
IN

追加する要素のQName

uri
IN

追加する要素の名前空間URI

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 作成された要素

9.5 XmlSoapCall()

接続を介してSOAPメッセージを送信し、リプライを待機します。メッセージ・リプライ(XML文書)は解析され、SOAPメッセージ(DOMと等価)として戻されます。

最初にメッセージ・バッファを使用して送信メッセージがシリアル化されます。メッセージ・バッファが小さすぎる(オーバーフローする)場合、xerrはXMLERR_SAVE_OVERFLOWを取得し、NULLを戻します。この場合、同じバッファを再使用して、リプライされたSOAPメッセージを受け取ります。

接続オブジェクトをオープンすると、エンド・ポイントにアクティブなSOAPハンドラが表示されます。表示方法は、ユーザーによって異なります。HTTPの場合、URLでcgi-binを起動するか、application/soap+xmlコンテンツ・タイプを検出する必要があります。

構文

xmldocnode *XmlSoapCall(
   xmlsoapctx *ctx, 
   xmlsoapcon *con,
   xmldocnode *msg, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

con
IN

SOAP接続オブジェクト

msg
IN

送信するSOAPメッセージ

xerr
IN

失敗の数値コード

戻り値

(xmldocnode *) 戻されるメッセージ。失敗時には、xerrが設定され、NULLが戻されます。

9.6 XmlSoapCreateConnection()

バインディング(トランスポート)とエンド・ポイントを指定し、SOAP接続オブジェクトを作成します。バインディングはxmlsoapbindタイプのenumで、エンド・ポイントはこのバインディングに依存します。

現在、HTTPバインディングのみがサポートされており、エンド・ポイントはURLです。このURLは、アクティブである必要があります。つまり、cgi-binスクリプトまたはメカニズムによって、受信メッセージのコンテンツ・タイプ(application/soap+xml)に基づいてSOAPメッセージの処理をトリガーします。

HTTPアクセス・メソッド(GETまたはPOST)を制御するには、XMLSOAP_PROP_WEB_METHODという名前のWebメソッド・プロパティを使用します。このプロパティに使用可能な値は、XMLSOAP_WEB_METHOD_GETXMLSOAP_WEB_METHOD_POSTです。

(conbuf, consiz)は、LPUとともに使用される接続バッファです。送信時には、HTTPヘッダーのみが含まれますが、受信時には、HTTPヘッダーと完全なSOAP本文を含むリプライ全体が保持されます。バッファが指定されていない場合は、1つ割り当てられます。サイズが0(ゼロ)の場合、デフォルト・サイズ(64K)が使用されます。

(msgbuf, msgsiz)は、送信用のSOAPメッセージの作成に使用されるメッセージ・バッファです。このバッファは、送信される最大のメッセージを格納するために十分なサイズである必要があります。バッファが指定されていない場合は、1つ割り当てられます。サイズが0(ゼロ)の場合、デフォルト・サイズ(64K)が使用されます。

サイズを決定するために最初にSOAPメッセージを作成する必要があるため、送信時には2つのバッファが必要です。これによりコンテンツの長さが決まるため、次にHTTPヘッダーが作成されます。

構文

xmlsoapcon *XmlSoapCreateConnection(
   xmlsoapctx *ctx, 
   xmlerr *xerr,
   xmlsoapbind bind, 
   void *endp,
   oratext *conbuf, 
   ubig_ora consiz,
   oratext *msgbuf, 
   ubig_ora msgsiz, 
   ...);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

xerr
OUT

失敗した場合の数値のエラー・コード

bind
IN

接続バインディング

endp
IN

接続エンド・ポイント

conbuf
IN/OUT

接続バッファ(バッファの割当てを受けるときはNULL)

consiz
IN

接続バッファのサイズ(0の場合はデフォルトのサイズ)

msgbuf
IN/OUT

メッセージ・バッファ(バッファの割当てを受けるときはNULL)

msgsiz
IN

メッセージ・バッファのサイズ(デフォルトのサイズは0)

...
IN

設定するHTTPヘッダー(後ろにNULL)

戻り値

(xmlsoapcon *) 接続オブジェクト。エラー発生時には、xerrが設定された状態でNULLが戻されます。

9.7 XmlSoapCreateCtx()

SOAPコンテキストを作成し、戻します。このコンテンツは、すべてのXmlSoap APIに渡されます。指定された名前は一意である必要があり、デバッグ時にコンテンツを識別するために使用されます。オプションは名前/値ペアとして指定し、NULLで終了します。これは、XmlCreateと同じです。オプションが必要なくても、NULLは必要です。オプションには、debug_level(SOAPデバッグをstderrに出力)、数値レベル(レベルが高くなるほど、出力がより詳細かつ広範になる)、0(デバッグなし。デフォルト設定)があります。

構文

xmlsoapctx *XmlSoapCreateCtx(
   xmlctx *xctx, 
   xmlerr *xerr, 
   oratext *name, 
   ...);
パラメータ In/Out 説明
xctx
IN

XMLコンテキスト

xerr
OUT

失敗した場合のエラー・リターン・コード。

name
IN

コンテキスト名(デバッグ目的)。

...
IN

オプション。名前/値ペアとして指定し、後ろにはNULLが付きます。

戻り値

(xmlsoapctx *) SOAPコンテキスト。失敗時には、xerrが設定され、NULLが戻されます。

関連項目:

XmlSoapDestroyCtx()

9.8 XmlSoapCreateMsg()

空のSOAPメッセージを作成して戻します。SOAPメッセージは、エンベロープで構成されます。エンベロープには、空のヘッダーと本文が含まれます。SOAPメッセージは、DOMによって表されたXML文書で、他の文書との違いはありません。文書に対するすべてのDOM操作が有効ですが、構造全体に悪影響を与えないようにする必要があります。変更は、ヘッダーと本文における要素の作成と変更に限定する必要があります。

構文

xmldocnode *XmlSoapCreateMsg(
   xmlsoapctx *ctx, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

xerr
OUT

失敗した場合のエラー・リターン・コード

戻り値

(xmldocnode *) SOAPメッセージ。失敗時には、xerrが設定され、NULLが戻されます。

関連項目:

XmlSoapDestroyMsg()

9.9 XmlSoapDestroyConnection()

XmlSoapCreateConnectionを使用して作成されたSOAP接続オブジェクトを破棄し、割り当てられたすべてのリソースを解放します。

構文

xmlerr XmlSoapDestroyConnection(
   xmlsoapctx *ctx, 
   xmlsoapcon *con);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

con
IN

SOAP接続

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

9.10 XmlSoapDestroyCtx()

XmlSoapCreateCtxを使用して作成したSOAPコンテキストを破棄します。割り当てられたメモリーはすべて解放され、接続はすべて閉じられます。

構文

xmlerr XmlSoapDestroyCtx(
   xmlsoapctx *ctx);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapCreateCtx()

9.11 XmlSoapDestroyMsg()

XmlSoapCreateMsgを使用して作成されたSOAPメッセージを破棄します。これは、XmlFreeDocumentのコールと同じです。

構文

xmlerr XmlSoapDestroyMsg(
   xmlsoapctx *ctx,
   xmldocnode *msg);
パラメータ In/Out 説明
ctx
IN

SOAP接続

msg
IN

SOAPメッセージ

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapCreateMsg()

9.12 XmlSoapError()

判読可能なエラー・コードを取得します。必要に応じて、基礎となるレイヤーのエラー・コードに関する情報を取得します。

構文

oratext *XmlSoapError(
   xmlsoapctx *ctx, 
   xmlsoapcon *con,
   xmlerr err,
   uword *suberr,
   oratext **submsg);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

con
IN

追加情報がリクエストされた接続

err
IN

判読可能な情報が戻されるエラー・コード

suberr
OUT

conからのエラー・コード

submsg
OUT

conエラーに関する判読可能な情報

戻り値

(oratext *) エラー・コード

9.13 XmlSoapGetBody()

SOAPメッセージのエンベロープ本文を戻します。

構文

xmlelemnode *XmlSoapGetBody(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

xmlerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAP本文

関連項目:

XmlSoapGetHeader()

9.14 XmlSoapGetBodyElement()

SOAP本文から要素を取得します。

構文

xmlelemnode *XmlSoapGetBodyElement(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   oratext *uri,
    oratext *local,
    xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

uri
IN

取得する要素の名前空間URI

local
IN

取得する要素のローカル名

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 指定された要素。エラー発生時には、NULLが戻されます。

関連項目:

XmlSoapAddBodyElement()

9.15 XmlSoapGetEnvelope()

SOAPパートのエンベロープを戻します。

構文

xmlelemnode *XmlSoapGetEnvelope(
   mlsoapctx *ctx, 
   xmldocnode *msg, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAPエンベロープ

9.16 XmlSoapGetFault()

フォルトのコード、理由および詳細を戻します。フォルト情報をフェッチし、ユーザー変数を介して戻します。不要なパートには、NULLを指定できます。langについては、ポイント先の変数がNULLである場合、デフォルト言語(最初の理由に指定する言語)に設定されます。

構文

xmlerr XmlSoapGetFault(
   xmlsoapctx *ctx, 
   xmldocnode *msg, 
   oratext **code,
   oratext **reason, 
   oratext **lang,
   oratext **node,
   oratext **role,
   xmlelemnode **detail);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

code
OUT

バージョン1.2ではCode(コード)、バージョン1.1ではfaultcode(フォルトコード)

reason
OUT

判読可能なフォルト理由(バージョン1.2)、バージョン1.1ではfaultreason(フォルト理由)。

lang
IN

理由に指定する言語(バージョン1.2)。バージョン1.1では使用されていません(NULL)。

node
OUT

フォルト・ノード

role
OUT

ロール: 次、なしまたは最終受信者。バージョン1.1では使用されていません

detail
OUT

ユーザー定義の詳細

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapSetFault()

9.17 XmlSoapGetHeader()

SOAPメッセージのエンベロープ・ヘッダーを戻します。

構文

xmlelemnode *XmlSoapGetHeader(
   xmlsoapctx *ctx, 
  xmldocnode *msg, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) SOAPヘッダー

関連項目:

XmlSoapGetBody()

9.18 XmlSoapGetHeaderElement()

SOAPヘッダーから要素を取得します。数値のエラー・コードを設定します。

構文

xmlelemnode *XmlSoapGetHeaderElement(
   xmlsoapctx *ctx,
   xmldocnode *msg,
   oratext *uri,
   oratext *local,
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

uri
IN

取得する要素の名前空間URI

local
IN

取得する要素のローカル名

xerr
IN/OUT

エラー・コード

戻り値

(xmlelemnode *) 指定された要素。エラー発生時には、NULLが戻されます。

9.19 XmlSoapGetMustUnderstand()

SOAPヘッダー要素からmustUnderstand属性を取得します。この属性がなくてもエラーにはならず、FALSE値として処理されます。属性がないことを示すために、この場合はXMLERR_SOAP_NO_MUST_UNDERSTANDが戻されます。属性がある場合は、XMLERR_OK (0)が戻されます。その他の該当するエラー・コードが戻される場合もあります。ユーザー指定のmustUnderstand値は、これに応じて設定されます。

構文

xmlerr XmlSoapGetMustUnderstand(
   xmlsoapctx *ctx, 
   xmlelemnode *elem,
   boolean *mustUnderstand);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN

SOAPヘッダー要素

mustUnderstand
OUT

mustUnderstand値、TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

9.20 XmlSoapGetReasonLang()

指定したインデックスを持つ理由の言語を取得します。

構文

xmlerr XmlSoapGetReasonLang(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   ub4 index, 
   oratext **lang);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

indx
IN

フォルト理由のインデックス

lang
IN

理由の言語

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

9.21 XmlSoapGetReasonNum()

Fault要素の理由の数を計算します。フォルトがない場合、0(ゼロ)が戻されます。

構文

ub4 XmlSoapGetReasonNum(
   xmlsoapctx *ctx, 
   xmldocnode *msg);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

戻り値

(ub4 *) 理由の数

9.22 XmlSoapGetRelay()

SOAPヘッダー要素からRelay属性を取得します。

構文

xmlerr XmlSoapGetRelay(
   xmlsoapctx *ctx, 
   xmlelemnode *elem,
   boolean *Relay);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN

SOAPヘッダー要素

Relay
OUT

リレー値

戻り値

xmlerr 数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。

9.23 XmlSoapGetRole()

SOAPヘッダー要素からロールを取得します。要素にロールがない場合、XMLERR_SOAP_NO_ROLEが戻されます。それ以外の場合は、XMLERR_OK (0)が戻され、これに応じてユーザーのロールが設定されます。要素にロールがない場合、標準に従ってユーザーのロールはXMLSOAP_ROLE_ULTに設定されます。

構文

xmlerr XmlSoapGetRole(
   xmlsoapctx *ctx, 
   xmlelemnode *elem, 
   xmlsoaprole *role);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN

SOAPヘッダー要素

role
OUT

ロール値

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

9.24 XmlSoapHasFault()

SOAPメッセージにフォルト・オブジェクトが含まれているかどうかを判別します。

構文

boolean XmlSoapHasFault(
   xmlsoapctx *ctx, 
   xmldocnode *msg, 
   xmlerr *xerr);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN

SOAPメッセージ

xerr
IN/OUT

エラー・コード

戻り値

(boolean) フォルトがある場合はTRUE、それ以外はFALSE

関連項目:

XmlSoapGetFault()

9.25 XmlSoapSetFault()

SOAPメッセージにフォルトを設定します。

  • バージョン1.2では、メッセージごとに使用可能なフォルトは1つのみであり、これは本文の唯一の子です。本文に子がある場合、最初に削除され、解放されます。これにより、子のコードに「env:Code」(必須)、理由に「env:Reason」(必須)、ノードに「env:Node」(オプション)、ロールに「env:role」(オプション)、詳細に「env:Detail」(オプション)を指定して、フォルトが追加されます。プライマリ言語の理由は最初に追加する必要があります。これは、NULL言語を渡すXmlSoapGetFaultへのコールによって選択されます。詳細は、フォルトに設定されるユーザー定義のサブツリーです。

  • バージョン1.1では、メッセージごとに使用可能なフォルトは1つのみです。本文にすでにフォルトがある場合、最初に削除され、解放されます。これにより、子のコードに「faultcode (フォルトコード)」(必須)、理由に「faultstring (フォルト文字列)」(必須)、ノードに「faultactor(フォルトアクタ)」(オプション)、詳細に「detail (詳細)」(オプション)を指定して、フォルトが追加されます。詳細は、フォルトに設定されるユーザー定義のサブツリーです。バージョン1.1では、roleとlangは使用されていません。

構文

xmlerr XmlSoapSetFault(
   xmlsoapctx *ctx, 
   xmldocnode *msg,
   oratext *node, 
   oratext *code, 
   oratext *reason, 
   oratext *lang, 
   oratext *role, 
   xmlelemnode *detail);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

msg
IN/OUT

SOAPメッセージ

node
IN

フォルトが発生したSOAPノードのURI。バーション1.2ではNode(ノード)、バージョン1.1ではfaultactor(フォルトアクタ)。

code
IN

バージョン1.2ではCode(コード)、バージョン1.1ではfaultcode(フォルトコード)

reason
IN

判読可能なフォルト理由(バージョン1.2)、バージョン1.1ではfaultreason(フォルト理由)。

lang
IN

理由の言語(バージョ・1.2)。バージョン1.1では使用されていません。

role
IN

ロールを示すURI。バージョン1.2ではRole(ロール)、バージョン1.1では使用されていません。

detail
IN

詳細要素(ユーザー定義)

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapAddFaultReason()

9.26 XmlSoapSetMustUnderstand()

SOAPヘッダー要素にmustUnderstand属性を設定します。値がFALSEである場合は、標準に従い、属性は設定されません。

構文

xmlerr XmlSoapSetMustUnderstand(
   xmlsoapctx *ctx, 
   xmlelemnode *elem,
   boolean mustUnderstand);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN/OUT

SOAPヘッダー要素

mustUnderstand
IN

mustUnderstand値、TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapSetRole()

9.27 XmlSoapSetRelay()

SOAPヘッダー要素にRelay属性を設定します。値がFALSEである場合、属性は設定されません。

構文

xmlerr XmlSoapSetRelay(
   xmlsoapctx *ctx,
   xmlelemnode *elem,   boolean Relay);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN/OUT

SOAPヘッダー要素

Relay
IN

リレー: TRUE|FALSE

戻り値

(xmlerr) 数値のエラー・コード。正常に終了した場合は、XMLERR_OK [0]を戻します。

関連項目:

XmlSoapGetRelay()

9.28 XmlSoapSetRole()

SOAPヘッダー要素にロールを設定します。指定されたロールがXMLSOAP_ROLE_ULTである場合、標準に従って、属性は設定されません。

構文

xmlerr XmlSoapSetRole(
   xmlsoapctx *ctx, 
   xmlelemnode *elem, 
   xmlsoaprole role);
パラメータ In/Out 説明
ctx
IN

SOAPコンテキスト

elem
IN/OUT

SOAPヘッダー要素

role
IN

ロール値

戻り値

xmlerr 数値のエラー・コード。正常に終了した場合は、XMLERR_OKを戻します。