Hitachi

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


付録B.5 WS-Reliabilityのヘッダ要素

Reliable Messagingで送受信するメッセージのSOAPヘッダ部分には,WS-Reliabilityプロトコルのヘッダ要素が設定されます。WS-Reliabilityプロトコルのヘッダ要素は,電文の種別によって設定される要素が異なります。

〈この項の構成〉

(1) Reliable Messageの送信時に設定される要素・属性

Reliable MessagingがReliable Messageを送信する時に設定される要素・属性に対する対応を次の表に示します。

表B‒1 Reliable Message送信時の対応

項番

メッセージヘッダの要素・属性

Reliable Messagingの対応

1

Request

WS-Reliabilityプロトコルの仕様と同様です。

2

Request/MessageId

WS-Reliabilityプロトコルの仕様と同様です。

3

Request/MessageId/@groupId

WS-Reliabilityプロトコルの仕様と同様です。

4

Request/MessageId/SequenceNum

必ず設定します。

5

Request/MessageId/SequenceNum/@groupExpiryTime

必ず設定します。

6

Request/MessageId/SequenceNum/@groupMaxIdleDuration

設定しません。

7

Request/MessageId/SequenceNum/@number

WS-Reliabilityプロトコルの仕様と同様です。

8

Request/MessageId/SequenceNum/@last

設定しません。

9

Request/ExpiryTime

WS-Reliabilityプロトコルの仕様と同様です。

10

Request/ReplyPattern

WS-Reliabilityプロトコルの仕様と同様です。

11

Request/ReplyPattern/Value

Responseだけ設定します。

CallbackおよびPollは設定しません。

12

Request/ReplyPattern/ReplyTo

設定しません。

13

Request/ReplyPattern/ReplyTo/@reference-scheme

設定しません。

14

Request/ReplyPattern/ReplyTo/any

設定しません。

15

Request/ReplyPattern/ReplyTo/BareURI

設定しません。

16

Request/AckRequested

必ず設定します。

17

Request/DuplicateElimination

必ず設定します。

18

Request/MessageOrder

WS-Reliabilityプロトコルの仕様と同様です。

注※

Reliable Messagingで設定するRequest/MessageId/@groupIdのフォーマットは次のとおりです。

mid://<システム名><グループID作成時刻><グループID通番>@<自マシンのIPアドレスから作成した数値>

グループID作成時刻の出力形式は「YYYYMMDDhhmmssSSS」です。

グループID通番は4けた固定です。例えば,グループ通番が1の場合は「0001」が設定されます。

(2) Reliable Messageの受信時に設定される要素・属性

Reliable Messagingが受信したReliable Messageに設定される要素に対する対応と,指定できる値の範囲を次の表に示します。

表B‒2 Reliable Message受信時の対応

項番

メッセージヘッダの要素・属性

Reliable Messagingの対応※1

指定できる値の範囲※2

1

Request

WS-Reliabilityプロトコルの仕様と同様です。

2

Request/MessageId

WS-Reliabilityプロトコルの仕様と同様です。

3

Request/MessageId/@groupId

WS-Reliabilityプロトコルの仕様と同様です。

0〜256文字

4

Request/MessageId/SequenceNum

設定を省略したメッセージにはRM-Faultを返します。

5

Request/MessageId/SequenceNum/@groupExpiryTime

設定を省略したメッセージにはRM-Faultを返します。

1970-01-01T00:00:00Z〜9999-12-31T23:59:59Z

6

Request/MessageId/SequenceNum/@groupMaxIdleDuration

設定したメッセージにはRM-Faultを返します。

7

Request/MessageId/SequenceNum/@number

WS-Reliabilityプロトコルの仕様と同様です。

8

Request/MessageId/SequenceNum/@last

設定したメッセージにはRM-Faultを返します。

9

Request/ExpiryTime

WS-Reliabilityプロトコルの仕様と同様です。

1970-01-01T00:00:00Z〜9999-12-31T23:59:59Z

10

Request/ReplyPattern

WS-Reliabilityプロトコルの仕様と同様です。

11

Request/ReplyPattern/Value

Responseだけ設定します。CallbackまたはPollを設定したメッセージにはRM-Faultを返します。

12

Request/ReplyPattern/ReplyTo

設定された値は無視します。

13

Request/ReplyPattern/@reference-scheme

設定された値は無視します。

14

Request/ReplyPattern/any

設定された値は無視します。

15

Request/ReplyPattern/BareURI

設定された値は無視します。

16

Request/AckRequested

WS-Reliabilityプロトコルの仕様と同様です。

17

Request/DuplicateElimination

WS-Reliabilityプロトコルの仕様と同様です。

18

Request/MessageOrder

WS-Reliabilityプロトコルの仕様と同様です。

(凡例)

−:該当しません。

注※1

RM-Faultを返す場合,「FeatureNotSupported」を設定したRM-Reply Messageが返信されます。

注※2

指定できる値の範囲を超えている要素または属性を設定しているReliableMessageを受信した場合,次の表に示すRM-Faultが設定されたRM-Reply Messageを返信します。

表B‒3 設定範囲を超えた場合に返信されるRM-Fault

メッセージヘッダの要素・属性

RM-Fault

Request/MessageId/@groupId

InvalidMessageId

Request/MessageId/@groupExpiryTime

InvalidMessageParameters

Request/ExpiryTime

InvalidExpiryTime

(3) RM-Reply Messageの送信時に設定される要素・属性

Reliable MessagingがRM-Reply Messageを送信する時に設定される要素に対する対応を次の表に示します。

表B‒4 RM-Reply Message送信時の対応

項番

メッセージヘッダの要素と属性

Reliable Messagingの対応

1

Response

WS-Reliabilityプロトコルの仕様と同様です。

2

Response/NonSequenceReply

設定しません。

3

Response/NonSequenceReply/@groupId

設定しません。

4

Response/NonSequenceReply/@fault

設定しません。

5

Response/SequenceReplies

必ず一つは設定します。

6

Response/SequenceReplies/@groupId

WS-Reliabilityプロトコルの仕様と同様です。

7

Response/SequenceReplies/ReplyRange

一つだけ設定します。

8

Response/SequenceReplies/ReplyRange/@from

@toと同じ値を設定します。

9

Response/SequenceReplies/ReplyRange/@to

@fromと同じ値を設定します。

10

Response/SequenceReplies/ReplyRange/@fault

WS-Reliabilityプロトコルの仕様と同様です。

(4) RM-Reply Messageの受信時に設定される要素・属性

Reliable Messagingが受信したRM-Reply Messageに設定される要素に対する対応と,指定できる値の範囲を次の表に示します。

表B‒5 RM-Reply Message受信時の対応一覧

項番

メッセージヘッダの要素と属性

Reliable Messagingの対応

指定できる値の範囲

1

Response

WS-Reliabilityプロトコルの仕様と同様です。

2

Response/NonSequenceReply

設定されたメッセージは破棄します。

3

Response/NonSequenceReply/@groupId

設定されたメッセージは破棄します。

4

Response/NonSequenceReply/@fault

設定されたメッセージは破棄します。

5

Response/SequenceReplies

一つだけ設定したメッセージには対応します。省略された,または複数設定されたメッセージは破棄します。

6

Response/SequenceReplies/@groupId

WS-Reliabilityプロトコルの仕様と同様です。

0〜256文字

7

Response/SequenceReplies/ReplyRange

一つだけ設定したメッセージには対応します。省略された,または複数設定されたメッセージは破棄します。

8

Response/SequenceReplies/ReplyRange/@from

@toと同じ値を設定したメッセージには対応します。@toと異なる値が設定されたメッセージは破棄します。

9

Response/SequenceReplies/ReplyRange/@to

@fromと同じ値を設定したメッセージには対応します。@fromと異なる値が設定されたメッセージは破棄します。

10

Response/SequenceReplies/ReplyRange/@fault

WS-Reliabilityプロトコルの仕様と同様です。

(凡例)

−:該当しません。

注※

指定できる値の範囲を超えている要素または属性を設定しているRM-Reply Messageを受信した場合,そのメッセージを破棄します。

(5) PollRequest Messageの送受信時に設定される要素・属性

Reliable Messagingでは,送信,受信ともにPollRequest Messageはサポートしません。PollRequest Messageを受信した場合は,メッセージ内で指定しているメッセージに対して「FeatureNotSupported」のRM-Faultを設定したRM-Reply Messageを返信します。

なお,Reliable Messagingでは,PollRequest Messageに指定された最初のメッセージに対して「FeatureNotSupported」のRM-Faultを返します。

(6) Reliable MessageとRM-Reply Messageの同梱

Reliable Messagingは,Reliable MessageとRM-Reply Messageが同梱されているメッセージに対して,WS-Reliabilityプロトコルの仕様とは異なる対応をします。

Reliable MessageとRM-Reply Messageが同梱されているメッセージを受信した場合,Reliable Messageに対して「FeatureNotSupported」のRM-Faultを設定したRM-Reply Messageの返信を行います。さらに,RM-Reply Messageに対してはメッセージを破棄します。

(7) [XML Schema Part 2]dateTimeの扱い

Reliable Messagingは,groupExpiryTimeやExpiryTimeを表す[XML Schema Part2]dateTimeの値に,次の制限を持ちます。