次の方法で共有


WS_FAULT 構造体 (webservices.h)

Fault は、処理エラーを伝えるメッセージの本文に含まれる値です。 障害は、 WS_FAULT 構造を使用してモデル化されます。

構文

typedef struct _WS_FAULT {
  WS_FAULT_CODE   *code;
  WS_FAULT_REASON *reasons;
  ULONG           reasonCount;
  WS_STRING       actor;
  WS_STRING       node;
  WS_XML_BUFFER   *detail;
} WS_FAULT;

メンバー

code

障害の種類を識別する障害コードの一覧の先頭。

障害コードは、最も一般的なものから最も具体的なものまで順に並べ替えられました。 少なくとも 1 つのエラー コードが必要です。 最初のエラー コードは、SOAP によって定義されたエラー コードに対応している必要があります。 WS_ENVELOPE_VERSION_SOAP_1_1では、最も具体的なエラー コードのみがシリアル化されます (一覧の最初のエラー コード)。

最初のエラー コードの名前空間 URI が空の文字列の場合、次のように、エラーがシリアル化されるときに、最初のエラー コードが次のように変換されます。

  • 適切な SOAP 名前空間は、 WS_ENVELOPE_VERSIONに基づいて使用されます。
  • WS_ENVELOPE_VERSION_SOAP_1_1を使用するときにローカル名が "Sender" の場合は、代わりに "Client" が使用されます。
  • WS_ENVELOPE_VERSION_SOAP_1_1を使用するときにローカル名が "Receiver" の場合は、代わりに "Server" が使用されます。
これらの変換を使用すると、使用されている SOAP バージョンを気にすることなく、SOAP エラー コードを指定できます。

reasons

エラーを説明するテキスト。 これは、さまざまな言語に対応する配列です。

reasonCount

reasons 配列内の理由の数。 テキストが複数の言語で表されている場合、これは複数になります。 少なくとも 1 つの障害理由が必要です。

WS_ENVELOPE_VERSION_SOAP_1_1の場合、最初の理由のみがシリアル化されます。

actor

エラーの原因となったプロセッサの名前。 文字列の長さが 0 の場合は、エンドポイントと見なされます。

node

障害の原因となったプロセッサの場所。 文字列の長さが 0 の場合は、エンドポイントと見なされます。

WS_ENVELOPE_VERSION_SOAP_1_1の場合、この値はシリアル化されません。

detail

エラーの詳細を使用すると、XML コンテンツをエラーと共に含めることができます。 詳細がない場合、このフィールドは NULL である可能性があります。

WS_ENVELOPE_VERSION_SOAP_1_1の場合は、エラーがメッセージのヘッダーの処理に関連しない場合にのみ使用する必要があります。 ヘッダーに関連するエラーでは、カスタム ヘッダーを使用して、エラーに関する情報を中継する必要があります。

エラーの詳細がある場合、 WS_XML_BUFFER には SOAP エラーの detail 要素に対応する要素が含まれている必要があります。 エラー固有の XML コンテンツは、detail 要素内に含まれています。 要素のローカル名と名前空間は無視されます。詳細要素の書き込み時に 、WS_ENVELOPE_VERSION に従って適切な要素名に置き換えられます。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
Header webservices.h