我正面临着我的jms messeages的问题。 案例是: 在我的mainPS中,我根据请求提供了一个employeeId路由到BS,以便雇员使用emploeeId> =而不是给定。响应是员工聚集。 在mainPS中的响应操作中,我遍历整个集合,并且id喜欢将JMS队列作为简单消息逐个添加到JMS队列中。在每个循环迭代中,在if语句中将用户定义的传输头设置为msgName'even'或'odd'取决于出站请求中的employeeId。在loged结果我可以看到标题已正确添加。 然后(仍为每个员工)我发布了我的JMS-BS,它将消息添加到队列中。 当我想在JMSConsumerPS中提取我的消息时,我没有添加任何传输头。消费者将“所有标题”属性设置为“是”。 我登录消费者我的整个
$inbound/ctx:transport
我得到的是:
<con:transport>
<con:uri>myURI</con:uri>
<con:mode>request</con:mode>
<con:qualityOfService>best-effort</con:qualityOfService>
<con:request xsi:type="jms:JmsRequestMetaData" xmlns:jms="http://www.bea.com/wli/sb/transports/jms" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tran:headers xsi:type="jms:JmsRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports">
<jms:JMSDeliveryMode>2</jms:JMSDeliveryMode>
<jms:JMSExpiration>0</jms:JMSExpiration>
<jms:JMSMessageID>ID:<834866.1398327222060.0></jms:JMSMessageID>
<jms:JMSPriority>4</jms:JMSPriority>
<jms:JMSRedelivered>false</jms:JMSRedelivered>
<jms:JMSTimestamp>1398327222060</jms:JMSTimestamp>
<jms:JMSXDeliveryCount>1</jms:JMSXDeliveryCount>
</tran:headers>
<tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">UTF-8</tran:encoding>
<jms:message-type>Text</jms:message-type>
</con:request>
感谢您的帮助。
答案 0 :(得分:0)
只是一个猜测。
我正在将传输标头设置在正确的位置。我有一个“发布” 代理中的操作,我正在设置传输标头 发布行动。我移动了“传输标题设置” 在“发布”动作/任务中。现在它按预期工作。
取自https://community.oracle.com/thread/2155298?tstart=165,链接很可能很快就会消失 - Oracle社区......
答案 1 :(得分:0)
非常感谢你。这几乎是同一个问题。我所做的是将“传输标题设置”移动到已发布BS的请求操作中。事情是我在问之前尝试过,但不知道为什么它不起作用。可能原因可能是我开启时通过管道传递所有标题[?]。不知道这是否会造成如此混乱。谢谢你的重播。