42.4.2. 检查消息标头属性

标准 JMS 标头属性

表 42.3 “JMS 标头属性” 列出 JMS 标头中您可以检查的标准属性。

表 42.3. JMS 标头属性

属性名称属性类型getter Method

关联 ID

字符串

getJMSCorralationID()

交付模式

int

getJMSDeliveryMode()

消息过期

long

getJMSExpiration()

消息 ID

字符串

getJMSMessageID()

优先级

int

getJMSPriority()

redelivered

布尔值

getJMSRedlivered()

时间时间戳

long

getJMSTimeStamp()

类型

字符串

getJMSType()

生存时间

long

getTimeToLive()

可选标题属性

另外,您可以使用 JMSMessageHeadersType.getProperty () 检查 JMS 标头中存储的任何可选属性。可选属性返回为 org.apache.cxf.transports.jms.context.JMSPropertyType 的列表。可选属性存储为名称/值对。

示例

例 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 的值。

打印消息优先级属性的值。

打印消息的 redelivered 属性的值。

获取消息的可选标头属性列表。

获取 迭代 属性列表。

迭代可选属性列表并打印其名称和值。