WSReliableMessaging ポリシー・プロパティーおよびバインディング・プロパティー
setPolicyType および setBinding コマンドで attributes パラメーターを使用して、ReliableMessaging ポリシーおよびポリシー・セット・バインディングに追加の構成情報を指定します。WSReliableMessaging サービスの品質 (QoS) は、アプリケーション・ポリシー・セットでのみ使用できます。
WSReliableMessaging は、2 つのエンドポイント間で信頼性の高いメッセージ送信を行う場合の、インターオペラビリティー標準です。 ビジネス間で Web サービスを使用する際は、WSReliableMessaging を使用してトランザクションを保護および検証します。
- ポリシーおよびバインディング構成のプロパティーを表示するには、getPolicyType コマンドおよび getBinding コマンドの -attributes パラメーターを使用します。属性を取得するには、プロパティー名を getPolicyType コマンドまたは getBinding コマンドに渡します。
- ポリシーおよびバインディング構成にプロパティーを追加したり、更新したり、プロパティーを除去するには、setPolicyType コマンドおよび setBinding コマンドの -attributes パラメーターを使用します。属性を追加したり、更新したりするには、プロパティーの名前と値を指定します。 setPolicyType コマンドおよび setBinding コマンドは、その属性が存在する場合は値を更新します。また、その属性が存在しない場合は属性と値を追加します。 属性を除去するには、空ストリング ("") で値を指定します。-attributes パラメーターがプロパティー・オブジェクトを受け入れます。

複合セル環境をサポートするために、WebSphere Application Server は、バージョン 7.0 およびバージョン 6.1 のバインディングをサポートします。セル・レベルの 汎用バインディングは、バージョン 7.0 以降に特化したものですが、アプリケーション固有のバインディングは、そのアプリケーションに必要なバージョンのままです。 ユーザーがアプリケーション固有のバインディングを作成すると、 アプリケーション・サーバーは、そのアプリケーションで使用する必要があるバインディング・バージョンを 判別します。
WSReliableMessaging ポリシー・プロパティー
- specLevel
- 信頼性の高いメッセージ送信に使用する WS-ReliableMessaging 標準を選択してください。
デフォルト値は、WS-ReliableMessaging 仕様のバージョン 1.1 です。
以下の情報を使用して、仕様レベルを選択してください。
- specLevel 属性の値として 1.0 を指定すると、WS-ReliableMessaging 仕様のバージョン 1.0、2005 年 2 月の仕様レベルを使用します。
- specLevel 属性の値として 1.1 を指定すると、OASIS WS-ReliableMessaging 仕様のバージョン 1.1、2006 年 8 月の仕様レベルを使用します。
以下のコード・セットの例では、specLevel プロパティーを OASIS WS-ReliableMessaging 仕様のバージョン 1.1、2006 年 8 月のレベルに設定しています。AdminTask.setPolicyType('[-policySet "CustomWSReliableMessaging" -policyType WSReliableMessaging -attributes "[[specLevel 1.1]]"]')
- inOrderDelivery
- メッセージを受信した順序で処理するかどうかを指定します。
inOrderDelivery プロパティーを使用すると、前のメッセージの処理を待つ間、インバウンド・メッセージはキューに入れられる可能性があります。
以下のサンプル・コードでは、inOrderDelivery プロパティーを有効にしています。
AdminTask.setPolicyType('[-policySet "CustomWSReliableMessaging" -policyType WSReliableMessaging -attributes "[[inOrderDelivery true]]"]')
- qualityOfService
- 使用する WSReliableMessaging サービスの品質を指定します。 以下の 3 つの値の 1 つを qualityOfService 属性に定義します。
- unmanagedNonPersistent
この設定は、ネットワークとリモート・システムの障害を許容します。 unmanagedNonPersistent サービスの品質は、非トランザクションです。 この設定を構成すると、サーバーに障害が発生した場合にメッセージが失われます。 このサービスの品質は、Web サービス・リクエスターとして構成されているすべての環境でサポートされます。
- managedNonPersistent
この設定は、システム、ネットワーク、およびリモート・システムの障害を許容します。 ただし、メッセージング・エンジンが再始動すると、メッセージ状態は破棄されます。 managedNonPersistent サービスの品質は、非トランザクションです。 この設定により、サーバーの障害発生時におけるメッセージ損失を防ぐことができます。 ただし、メッセージング・エンジンに障害が発生した場合、メッセージは失われます。 管理対象およびシン・クライアントのアプリケーションでは、このサービスの品質を使用できません。
- managedPersistent
この設定は、システム、ネットワーク、およびリモート・システムの障害を許容します。 この場合、メッセージはトランザクション内で処理され、Web サービス・リクエスターおよびプロバイダーで維持されます。 サーバーに障害が発生した場合に、メッセージを回復可能です。 障害時に正常に送信されなかったメッセージは、メッセージング・エンジンまたはアプリケーションを再始動すると、送信が続行されます。 管理対象およびシン・クライアントのアプリケーションでは、このサービスの品質を使用できません。
以下の例では、qualityOfService プロパティーを管理対象外の非パーシスタントとして設定しています。AdminTask.setPolicyType('[-policySet "CustomWSReliableMessaging" -policyType WSReliableMessaging -attributes "[[qualityOfService unmanagedNonPersistent]]"]')
- unmanagedNonPersistent
AdminTask.setPolicyType('[-policySet "CustomWSReliableMessaging" -policyType
WSReliableMessaging -attributes "[[specLevel 1.1][inOrderDelivery true][qualityOfService
unmanagedNonPersistent]]"]')
WSReliableMessaging バインディング構成属性
- busName
- managedNonPersistent または managedPersistent のサービスの品質オプションで使用するメッセージング・エンジンを含むサービス統合バスの名前です。
以下の例では、busName プロパティーを myBus として設定しています。
AdminTask.setBinding('[-bindingLocation "" -bindingName cellWideBinding2 -policyType WSReliableMessaging -attributes "[[busName myBus]]"]')
- messagingEngineName
- managedNonPersistent または managedPersistent のサービスの品質オプションで使用するメッセージング・エンジンの名前です。
以下の例では、messagingEngineName プロパティーを messagingEngine001 として設定しています。
AdminTask.setBinding('[-bindingLocation "" -bindingName cellWideBinding2 -policyType WSReliableMessaging -attributes "[[messageEngineName messageEngine001]]"]')
AdminTask.setBinding('[-bindingLocation "" -bindingName cellWideBinding2 -policyType
WSReliableMessaging -attributes "[[busName myBus][messageEngineName messageEngine001]]"]')