JMS outbound gateway

JMS outbound gateway

This service is a JMS outbound gateway. This gateway sends a message to a queue or topic and waits for a reply on another queue or topic.

In the table below, you will find an explanation ofthese properties. All attributes with a ‘*’ are mandatory.

All attributes with a ‘** require at least one of these properties having been set.

Attribute

Description

Name*

By default, we fill this out with the technical ‘tag’, followed by a serial number. Changing the name is optional.

Enabled

Set this value to true, if you want this service to be enabled.

Topology

Specify which type of JMS toplogy you want to use. You can choose between QUEUE and TOPIC. The default is QUEUE.

   

Request Queue Name**

Name of the queue to send to. Only one request-destination-ref, request-queue-name, request-topic-name or request-destination-header can be set.

Request Topic Name**

Name of the topic to send to. Only one request-destination-ref, request-queue-name, request-topic-name or request-destination-header can be set.
Request Queue Header ** Name of the header that contains a Queue name. Only one of request-queue-name, request-queue-header can be set.
Request Topic Header ** Name of the header that contains a Topic name. Only one of request-topic-name, request-topic-header can be set.

MessagePart-In

Name of the MessagePart in a ConnectMessage where the content of the file is stored.

MessagePart-Out

Name of the MessagePart in a ConnectMessage that is used for the response. The Message Queue or Time-out Message will be put in this MessagePart before the message is sent to the next Service or Producer.

Connection Factory

A Connection Factory determines which JMS environment is used. By default, internal ActiveMQ factory is used. You may configure additional JMS Connection Factories which are incorporated as a Spring Bean with the name connectionFactory, see custom-connection-factories.xml. If a different connectionFactory is desired, you may enter the name of another Connection Factory.
   

Reply Queue Name°°

Name of the queue to receive from. Only one reply-destination-ref, reply-queue-name, reply-topic-name or reply-destination-header can be set. If none is set, a temporary reply queue will be used.

Reply Topic Name°°

Name of the topic to receive from. Only one reply-destination-ref, reply-queue-name, reply-topic-name or reply-destination-header can be set. If none is set a temporary reply queue will be used.
Reply Queue Header°° Name of the header that contains Queue name. Only one of reply-queue-name, reply-queue-header can be set.
Reply Topic Header°° Name of the header that contains Topic name. Only one of reply-topic-name, reply-topic-header can be set.

Reply Receive Timeout

Time to wait in milliseconds for a reply on the reply destination.

Concurrent-consumers

Specify the number of concurrent Consumers to create. The default value is 1. Specifying a higher value for this setting will increase the standard level of scheduled concurrent Consumers at runtime. Raising the number of concurrent Consumers is recommended in order to scale the consumption of messages coming in from a queue. However, note that any ordering guarantees are lost once multiple Consumers are registered.

Requires-reply

Defines the service as request-response(true) or fire-forget(false). The default is true.

Persistent-delivery

Set to true to enable Persistent QOS on JMS Delivery, this will send Messages marked as Persistent. Defaults to false.

Description

Description of the specific service. This is for documentation purposes.

This component is by default synchronous. A timeout on the JMS-REPLY will lead to a stop of the flow without any error messages. The thread will be released and a next message will be able to use it. If a reply is received after the thread is released, the reply is discarded.


By setting the property required-reply to false, you will make this component asynchronous. A fire and forget will be performed and the gateway is immediately released and will not wait for a reply.