您可以处理消息头中用于识别和影响消息行为的字段。
关于此任务
除了路由字段外(请参阅
在消息头中设置路由地址),消息头还有一些字段供您处理。这些字段会影响消息的质量和特征,例如优先级、可靠性以及身份等等。有关与 JMS 消息头字段等效的头字段以及可用于处理这些字段的方法的信息,请参阅
消息头信息。
过程
- 在调解处理程序的方法 handle (MessageContext context)
中找到要插入功能性调解代码的位置。接口为 MessageContext,除非您仅对 MessageContext 提供的方法感兴趣,否则应该将此接口强制转换为 SIMessageContext。
- 从 MessageContext 对象中获取 SIMessage。例如,SIMessage
message = ((SIMessageContext)context).getSIMessage();
- 按照与下列示例类似的方式来构建调解头函数并使用消息头信息中的参考信息来获取帮助:
- 设置消息的可靠性。例如 siMessage.setReliability(Reliability.ASSURED_PERSISTENT);。
在这种情况下,会将服务质量设置为最高级别。
- 设置消息的生存时间 - 即,当未处理消息时,将该消息移除之前,允许将该消息保留在队列中的时间(以毫秒计)。例如,siMessage.setRemainingTimeToLive(1000000); 将消息应该到期之前的保留时间设置为 1000 秒。