This page is out of date and should not be used. Please refer to the Qpid JMS client books for up to date documentation.

Explanation of System properties used in Qpid

This page documents the various System Properties that are currently used in the Qpid Java code base.

Client Properties

STRICT_AMQP

Type : boolean
Default : FALSE
This forces the client to only send AMQP compliant frames. This will disable a number of JMS features.

Features disabled by STRICT_AMQP
  • Queue Browser
  • Message Selectors
  • Durable Subscriptions
  • Session Recover may result in duplicate message delivery
  • Destination validation, so no InvalidDestinationException will be thrown

This is associated with property STRICT_AMQP_FATAL

STRICT_AMQP_FATAL

Type : boolean
Default : FALSE

This will cause any attempt to utilise an enhanced feature to throw and UnsupportedOperationException. When set to false then the exception will not occur but the feature will be disabled.

e.g.
The Queue Browser will always show no messages.
Any message selector will be removed.

IMMEDIATE_PREFETCH

Type : boolean
Default : FALSE

The default with AMQP is to start prefetching messages. However, with certain 3rd party Java tools, such as Mule this can cause a problem. Mule will create a consumer but never consume from it so any any prefetched messages will be stuck until that session is closed. This property is used to re-instate the default AMQP behaviour. The default Qpid behaviour is to prevent prefetch occurring, by starting the connection Flow Controlled, until a request for a message is made on the consumer either via a receive() or setting a message listener.

qpid.sync_op_timeout

Type : long
Default: 60000
The length of time in millisecond to wait for a synchronous operation to complete. amqj.default_syncwrite_timeout is a synonym.

amq.dynamicsaslregistrar.properties

Type : String
Default: org/apache/qpid/client/security/DynamicSaslRegistrar.properties
The name of the SASL configuration properties file.

amqj.heartbeat.timeoutFactor

Type : float
Default : 2.0
The factor used to get the timeout from the delay between heartbeats

amqj.tcp_nodelay

Type : boolean
Default : TRUE
Disable Nagle's algorithm on the TCP connection.

amqj.protocol.logging.level

Type : boolean
Default : null
If set this will turn on protocol logging on the client

jboss.host

Used by the JBossConnectionFactoryInitialiser to specify the host to connect to perform JNDI lookups.

jboss.port

Used by the JBossConnectionFactoryInitialiser to specify the port to connect to perform JNDI lookups.

amqj.MaximumStateWait

Default : 30000
Used to set the maximum time the State Manager should wait before timing out a frame wait.

qpid.amqp.version

Default : 0-10
Used to restrict the client to a particular version of the AMQP Protocol. Client will begin negotiation at the specified version and only negotiate downwards if the broker does not support the specified version.

Management Properties

security

Default: null
String representing the Security level to be used to on the connection to the broker. The null default results in no security or PLAIN. When used with jmxconnector 'javax.management.remote.jmxmp.JMXMPConnector' a security value of 'CRAM-MD5' will result in all communication to the broker being encrypted.

jmxconnector

Default: null
String representing the JMXConnector class used to perform the connection to the broker. The null default results in the standard JMX connector. Utilising 'javax.management.remote.jmxmp.JMXMPConnector' and security 'CRAM-MD5' will result in all communication to the broker being encrypted.

timeout

Default: 5000
Long value representing the milli seconds before connection to the broker should timeout.

Properties used in Examples

archivepath

Used in : FileMessageDispatcher
This properties specifies the directory to move payload file(s) to archive location as no error

  • No labels