14.5.4. JMS 提供程序配置

概述

JMS 提供程序端点具有许多可以配置的行为。它们是:

  • 如何关联消息
  • 使用持久订阅
  • 如果服务使用本地 JMS 事务
  • 端点使用的选择器

指定配置

提供商端点行为使用可选的 jms:server 元素进行配置。jms:server 元素是 WSDL wsdl:port 元素的子项,具有下列属性:

表 14.4. JMS 提供程序端点 WSDL 扩展

属性描述

useMessageIDAsCorrealationID

指定 JMS 是否将使用消息 ID 来关联消息。默认值为 false

durableSubscriberName

指定注册持久订阅的名称。

messageSelector

指定要使用的消息选择器的字符串值。有关使用指定选择器的语法的更多信息,请参阅 JMS 1.1 规格。

事务性

指定本地 JMS 代理是否围绕消息处理创建事务。默认值为 false[a]

[a] 目前,运行时不支持将 事务 属性设置为 true

示例

例 14.8 “用于 JMS 供应商端点的 WSDL” 显示用于配置 JMS 提供程序端点的 WSDL。

例 14.8. 用于 JMS 供应商端点的 WSDL

<service name="JMSService">
  <port binding="tns:Greeter_SOAPBinding" name="SoapPort">
    <jms:address jndiConnectionFactoryName="ConnectionFactory"
                 jndiDestinationName="dynamicQueues/test.Celtix.jmstransport" >
      <jms:JMSNamingProperty name="java.naming.factory.initial"
                             value="org.activemq.jndi.ActiveMQInitialContextFactory" />
      <jms:JMSNamingProperty name="java.naming.provider.url"
                             value="tcp://localhost:61616" />
    </jms:address>
    <jms:server messageSelector="cxf_message_selector"
                useMessageIDAsCorrelationID="true"
                transactional="true"
                durableSubscriberName="cxf_subscriber" />
  </port>
</service>