14.6. 使用命名的 Reply Destination

概述

默认情况下,使用 JMS 的 Apache CXF 端点会创建一个临时队列来回发送回复。如果您希望使用命名队列,您可以配置用于发送回复作为端点 JMS 配置一部分的队列。

设置回复目的地名称

您可以使用端点的 JMS 配置中的 jmsReplyDestinationName 属性或 jndiReplyDestinationName 属性来指定回复目的地。客户端端点将侦听指定目的地的回复,它将在所有传出请求的 ReplyTo 字段中指定属性值。服务端点将使用 jndiReplyDestinationName 属性的值,作为在请求的 ReplyTo 字段中指定任何目的地时放置回复的位置。

示例

例 14.9 “使用命名的 Reply Queue 的 JMS 消费者规格” 显示 JMS 客户端端点的配置。

例 14.9. 使用命名的 Reply Queue 的 JMS 消费者规格

<jms:conduit name="{http://cxf.apache.org/jms_endpt}HelloWorldJMSPort.jms-conduit">
    <jms:address destinationStyle="queue"
                 jndiConnectionFactoryName="myConnectionFactory"
                 jndiDestinationName="myDestination"
                 jndiReplyDestinationName="myReplyDestination" >
      <jms:JMSNamingProperty name="java.naming.factory.initial"
                             value="org.apache.cxf.transport.jms.MyInitialContextFactory" />
      <jms:JMSNamingProperty name="java.naming.provider.url"
                             value="tcp://localhost:61616" />
    </jms:address>
  </jms:conduit>