14.6. 名前付き応答宛先の使用

概要

デフォルトでは、JMS を使用する Apache CXF エンドポイントは、応答を送受信するための一時キューを作成します。名前付きキューを使用する場合は、エンドポイントの JMS 設定の一部として返信を送信するために使用されるキューを設定できます。

応答先名の設定

エンドポイントの JMS 設定の jmsReplyDestinationName 属性または jndiReplyDestinationName 属性のいずれかを使用して、応答宛先を指定します。クライアントエンドポイントは、指定された宛先で応答をリッスンし、すべての送信要求の ReplyTo フィールドに属性の値を指定します。サービスエンドポイントは、リクエストの jndiReplyDestinationName フィールドに宛先が指定されていない場合に、応答の送信先として ReplyTo 属性の値を使用します。

例14.9「名前付き応答キューを使用した JMS コンシューマー仕様」 は、JMS クライアントエンドポイントの設定を示しています。

例14.9 名前付き応答キューを使用した 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>