Hitachi

Cosminexus V11 アプリケーションサーバ Cosminexus Reliable Messaging


付録B.7 Reliable Messagingが返信するフォルトコード一覧

Reliable Messagingは,メッセージの受信時に障害が発生した場合,WS-Reliabilityに規定されたフォルトメカニズムに従って,RM-Faultを返します。Responseリプライパターンのメッセージへの応答でRM-Faultを返す場合は,SOAP Faultも同時に返します。その際,HTTPステータスコードに返す値はSOAP通信基盤の仕様に従います。

Reliable Messagingが返すRM-Faultのフォルトコードを次の表に示します。

表B‒7 Reliable Messagingが返すRM-Faultのフォルトコード

種別

フォルトコード

障害内容

RMFault

InvalidRequest

受信したReliable Messageに次の要素がありません。

  • ExpiryTime

  • ReplyPattern

または,次の要素が二つ以上含まれています。

  • MessageId

  • ExpiryTime

  • ReplyPattern

受信したReliable Messageの要素が,次に示す順序に従っていません。

  • MessageId

  • ExpiryTime

  • ReplyPattern

MessageOrder要素があるのに,AckRequested要素とDuplicateElimination要素がありません。

SOAP:mustUnderstand属性がありません。または,SOAP:mustUnderstand属性の値は「1」以外です。

InvalidPollRequest

該当しません。

InvalidMessageId

受信したReliable Messageで,MessageId要素に含まれる要素や属性が不正です。

  • groupId属性の指定値が256バイトを超えています。

  • groupId属性の指定値がURI[RFC2396]と一致しません。

  • SequenceNum要素が2個以上指定されています。

InvalidMessageParameters

受信したReliable Messageの属性で,次のような不正があります。

  • groupExpiryTime属性とgroupMaxIdleDuration属性が両方ともありません。

  • groupExpiryTime属性とgroupMaxIdleDuration属性が両方とも指定されています。

  • groupExpiryTimeまたはgroupMaxIdleDurationの指定値が,時刻または時間として読み取れません。

  • number属性の値が0〜18446744073709551615の範囲外です。

受信したReliable MessageのgroupExpiryTime属性の時刻がExpiryTime要素の時刻と同じか,またはそれ以前の時刻です。

受信したReliable MessageのgroupExpiryTime属性の時刻が,以前受信した同じグループのメッセージの最大ExpiryTimeの時刻と同じか,またはそれ以前の時刻です。

InvalidReplyPattern

受信したReliable Messageで,ReplyPattern要素に含まれる要素が不正です。

・Value要素がありません。

・Value要素が二つ以上含まれています。

・Value要素にResponse,Callback,およびPoll以外の文字列が指定されています。

InvalidExpiryTime

受信したReliable Messageで,ExpiryTime要素の指定値が時刻として読み取れません。

受信したReliable Messageで,ExpiryTime要素から取得した時刻が有効期限切れです。

FeatureNotSupported

受信したReliable Messageで,SequenceNum要素が省略されています。

受信したReliable Messageで,groupMaxIdleDuration属性が指定されています。

受信したReliable Messageで,last属性が指定されています。

受信したReliable Messageで,ReplyPattern/Value要素にCallbackまたはPollが指定されています。

PollRequest Messageを受信しました。

Reliable MessageとRM-Reply Messageを同梱したSOAPメッセージを受信しました。

PermanentProcessingFailure

スキップ済みの受信待ちメッセージを受信しました。

指定されたキューがないか,またはローカルキューではありません。

受信処理中に永続的な内部障害が発生しました。

指定されたキューが閉塞状態です。

MessageProcessingFailure

配送待ちメッセージがキューのメッセージ最大数に達しているなどの理由で,受信キューにメッセージを登録できません。

指定されたキューが受信抑止中です。

受信処理中に一時的な内部障害が発生しました。

GroupAborted

障害が発生して閉鎖されたグループでメッセージを受信しました。

指定されたグループは,指定されたキュー以外に属するグループです。

受信処理中にグループが有効期限切れになり,削除されました。

非永続キューのグループが再起動によって閉鎖されました。

なお,Reliable Messagingは,SOAP Faultだけを返す場合があります。Reliable Messagingが返すSOAP Faultのフォルトコードを次の表に示します。

表B‒8 Reliable Messagingが返すSOAP Faultのフォルトコード

種別

フォルトコード

障害文字列(faultstring)

障害内容

SOAP Fault

Server

Exception occurred at the server side.

Reliable Messagingが閉塞状態のときにメッセージを受信しました。

Reliable Messagingが管理状態か,または開始中状態のときメッセージを受信しました。

受信処理中に内部障害が発生しました。

Client

Invalid message was transmitted by client side.

受信したSOAPメッセージにWS-Reliabilityのヘッダが指定されていません(プロトコルが不明のSOAPメッセージです)。

正常にRM-Faultを返せない不正なメッセージを受信しました。