21.2. QPID AMQP 1.0 JMS Client Connection URLs
amqp://hostname:port[?option=value[&option2=value...]]
ConnectionFactory, these are detailed in the following tables.
Connection, Session, MessageConsumer and MessageProducer.
Table 21.2. JMS Configuration options
| Option | Description |
|---|---|
jms.username
|
User name value used to authenticate the connection
|
jms.password
|
The password value used to authenticate the connection
|
jms.clientID
|
The ClientID value that is applied to the connection.
|
jms.forceAsyncSend
|
Configures whether all Messages sent from a
MessageProducer are sent asynchronously or only those Message that qualify such as Messages inside a transaction or non-persistent messages.
|
jms.alwaysSyncSend
|
Override all asynchronous send conditions and always sends every Message from a
MessageProducer synchronously.
|
jms.sendAcksAsync
|
Causes all Message acknowledgments to be sent asynchronously.
|
jms.localMessageExpiry
|
Controls whether
MessageConsumer instances will locally filter expired Messages or deliver them. By default this value is set to true and expired messages will be filtered.
|
jms.localMessagePriority
|
If enabled pre-fetched messages are reordered locally based on their given Message priority value. Default is false.
|
jms.validatePropertyNames
|
If message property names should be validated as valid Java identifiers. Default is
true.
|
jms.queuePrefix
|
Optional prefix value added to the name of any Queue created from a JMS Session.
|
jms.topicPrefix
|
Optional prefix value added to the name of any Topic created from a JMS Session.
|
jms.closeTimeout
|
Timeout value that controls how long the client waits on Connection close before returning. (By default the client waits 15 seconds for a normal close completion event).
|
jms.connectTimeout
|
Timeout value that controls how long the client waits on Connection establishment before returning with an error. (By default the client waits 15 seconds for a connection to be established before failing).
|
jms.clientIDPrefix
|
Optional prefix value that is used for generated Client ID values when a new Connection is created for the JMS
ConnectionFactory. The default prefix is ID:.
|
jms.connectionIDPrefix
|
Optional prefix value that is used for generated Connection ID values when a new Connection is created for the JMS
ConnectionFactory. This connection ID is used when logging some information from the JMS Connection object so a configurable prefix can make breadcrumbing the logs easier. The default prefix is ID:.
|
Table 21.3. Prefetch Options
| Option | Description |
|---|---|
jms.prefetchPolicy.queuePrefetch
|
defaults to
1000
|
jms.prefetchPolicy.topicPrefetch
|
defaults to
1000
|
jms.prefetchPolicy.queueBrowserPrefetch
|
defaults to
1000
|
jms.prefetchPolicy.durableTopicPrefetch
|
defaults to
1000
|
jms.prefetchPolicy.all
|
used to set all prefetch values at once.
|
RedeliveryPolicy parameter controls how redelivered messages are handled on the client.
Table 21.4. Redelivery Options
| Option | Description |
|---|---|
jms.redeliveryPolicy.maxRedeliveries | Controls when an incoming message is rejected based on the number of times it has been redelivered, the default value is disabled (-1). A value of zero (0) would indicate no message redeliveries are accepted, a value of five (5) would allow a message to be redelivered five times. |
amqp://localhost:5672?jms.clientID=foo&transport.connectTimeout=30000
Table 21.5. TCP Transport Options
| Option | Description |
|---|---|
transport.sendBufferSize
|
default is
64k
|
transport.receiveBufferSize
|
default is
64k
|
transport.trafficClass
|
default is
0
|
transport.connectTimeout
|
default is
60 seconds
|
transport.soTimeout
|
default is
-1
|
transport.soLinger
|
default is
-1
|
transport.tcpKeepAlive
|
default is
false
|
transport.tcpNoDelay
|
default is
true
|
amqps://localhost:5673
Table 21.6. SSL Transport Options
| Option | Description |
|---|---|
transport.keyStoreLocation
|
The default is to read from the system property
javax.net.ssl.keyStore
|
transport.keyStorePassword
|
The default is to read from the system property
javax.net.ssl.keyStorePassword
|
transport.trustStoreLocation
|
The default is to read from the system property
javax.net.ssl.trustStore
|
transport.trustStorePassword
|
The default is to read from the system property
javax.net.ssl.keyStorePassword
|
transport.storeType
|
The type of trust store being used. Default is
JKS.
|
transport.contextProtocol
|
The protocol argument used when getting an SSLContext. Default is
TLS.
|
transport.enabledCipherSuites
|
The cipher suites to enable, comma separated. No default, meaning the context default ciphers are used. Any disabled ciphers are removed from this.
|
transport.disabledCipherSuites
|
The cipher suites to disable, comma separated. Ciphers listed here are removed from the enabled ciphers. No default.
|
transport.enabledProtocols
|
The protocols to enable, comma separated. No default, meaning the context default protocols are used. Any disabled protocols are removed from this.
|
transport.disabledProtocols
|
The protocols to disable, comma separated. Protocols listed here are removed from the enabled protocols. Default is
SSLv2Hello,SSLv3.
|
transport.trustAll
|
Whether to trust the provided server certificate implicitly, regardless of any configured trust store. Defaults to
false.
|
transport.verifyHost
|
Whether to verify that the hostname being connected to matches with the provided server certificate. Defaults to
true.
|
transport.keyAlias
|
The alias to use when selecting a keypair from the keystore if required to send a client certificate to the server. No default.
|
Table 21.7. AMQP Options
| Option | Description |
|---|---|
amqp.idleTimeout
|
The idle timeout in milliseconds after which the connection will be failed if the peer sends no AMQP frames. Default is
60000.
|
amqp.vhost
|
The
vhost to connect to. Used to populate the SASL and Open hostname fields. Default is the main hostname from the Connection URI.
|
amqp.saslLayer
|
Controls whether connections use a SASL layer or not. Default is
true.
|
amqp.saslMechanisms
|
Which SASL mechanism(s) the client allows selection of, if offered by the server and usable with the configured credentials. Comma separated if specifying more than 1 mechanism. Default is to allow selection from all the clients supported mechanisms, which are currently
EXTERNAL, CRAM-MD5, PLAIN, and ANONYMOUS.
|
amqp.maxFrameSize
|
The max-frame-size value in bytes that is advertised to the peer. Default is
1048576.
|
failover prefix and a list of URIs for the brokers is contained inside a set of parentheses.
jms. options are applied to the overall failover URI, outside the parentheses, and affect the JMS Connection object for its lifetime.
failover:(amqp://host1:5672,amqp://host2:5672)?jms.clientID=foo&failover.maxReconnectAttempts=20
transport. or amqp. options defined earlier, with these being applied as each host is connected to:
failover:(amqp://host1:5672?amqp.option=value,amqp://host2:5672?transport.option=value)?jms.clientID=foo
Table 21.8. Failover Options
| Option | Description |
|---|---|
failover.initialReconnectDelay
|
The amount of time the client will wait before the first attempt to reconnect to a remote peer. The default value is zero (
0), meaning the first attempt happens immediately.
|
failover.reconnectDelay
|
Controls the delay between successive reconnection attempts, defaults to
10 milliseconds. If the backoff option is not enabled this value remains constant.
|
failover.maxReconnectDelay
|
The maximum time that the client will wait before attempting a reconnect. This value is only used when the backoff feature is enabled to ensure that the delay does not grow too large. Defaults to
30 seconds as the max time between connect attempts.
|
failover.useReconnectBackOff
|
Controls whether the time between reconnection attempts grows based on a configured multiplier. This option defaults to
true.
|
failover.reconnectBackOffMultiplier
|
The multiplier used to grow the reconnection delay value, defaults to
2.0d.
|
failover.maxReconnectAttempts
|
The number of reconnection attempts allowed before reporting the connection as failed to the client. The default is no limit or (
-1).
|
failover.startupMaxReconnectAttempts
|
For a client that has never connected to a remote peer before this option control how many attempts are made to connect before reporting the connection as failed. The default is to use the value of
maxReconnectAttempts.
|
failover.warnAfterReconnectAttempts
|
Controls how often the client will log a message indicating that failover reconnection is being attempted. The default is to log every
10 connection attempts.
|
transport. and amqp. URI options outlined earlier for a non-failover broker URI but prefixed with failover.nested.. For example, to apply the same value for the amqp.vhost option to every broker connected to you might have a URI like:
failover:(amqp://host1:5672,amqp://host2:5672)?jms.clientID=foo&failover.nested.amqp.vhost=myhost
failover.nested. to discovery.discovered. For example, without the agent URI details, a general discovery URI might look like:
discovery:(<agent-uri>)?discovery.maxReconnectAttempts=20&discovery.discovered.jms.clientID=foo
discovery:(file:///path/to/monitored-file?updateInterval=60000)
updateInterval. It controls the frequency in milliseconds which the file is inspected for change. The default value is 30000.
discovery:(multicast://default?group=default)
239.255.2.3:6155). You may change this to specify the actual IP and port in use with your multicast configuration.
group. It controls which multicast group messages are listened for on. The default value is default.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.