42.4.2. メッセージヘッダーのプロパティーの検査

標準 JMS ヘッダープロパティー

表42.3「JMS ヘッダーのプロパティー」 検査できる JMS ヘッダーの標準プロパティーを一覧表示します。

表42.3 JMS ヘッダーのプロパティー

プロパティー名プロパティータイプゲッターメソッド

相関 ID

string

getJMSCorralationID()

配信モード

int

getJMSDeliveryMode()

メッセージの有効期限

long

getJMSExpiration()

メッセージ ID

string

getJMSMessageID()

優先度

int

getJMSPriority()

再配信

boolean

getJMSRedlivered()

タイムスタンプ

long

getJMSTimeStamp()

string

getJMSType()

有効期間

long

getTimeToLive()

オプションのヘッダープロパティー

さらに、JMSMessageHeadersType.getProperty() を使用して、JMS ヘッダーに保存されているすべてのオプションプロパティーを検証することもできます。オプションのプロパティーは、org.apache.cxf.transports.jms.context.JMSPropertyTypeList として返されます。オプションのプロパティーは、名前と値のペアとして保存されます。

例42.14「JMS ヘッダープロパティーの読み取り」 は、応答コンテキストを使用して一部の JMS プロパティーを検査するためのコードを示しています。

例42.14 JMS ヘッダープロパティーの読み取り

// JMSMessageHeadersType messageHdr retrieved previously
System.out.println("Correlation ID: "+messageHdr.getJMSCorrelationID());
System.out.println("Message Priority: "+messageHdr.getJMSPriority());
System.out.println("Redelivered: "+messageHdr.getRedelivered());

JMSPropertyType prop = null;
List<JMSPropertyType> optProps = messageHdr.getProperty();
Iterator<JMSPropertyType> iter = optProps.iterator();
while (iter.hasNext())
{
  prop = iter.next();
   System.out.println("Property name: "+prop.getName());
   System.out.println("Property value: "+prop.getValue());
}

例42.14「JMS ヘッダープロパティーの読み取り」 のコードは、以下を行います。

メッセージの相関 ID の値を出力します。

メッセージの priority プロパティーの値を出力します。

メッセージの再配信されたプロパティーの値を出力します。

メッセージのオプションのヘッダープロパティーのリストを取得します。

プロパティーのリストをトラバースするために Iterator を取得する。

オプションのプロパティーのリストを繰り返し、それらの名前と値を出力します。