This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Configuring qpid-config.xml

The <MB_HOME>/repository/conf/advanced/qpid-config.xml file is used to configure the QPID extension of WSO2 MB. 

Note that this file is taken from the QPID broker and used only within the QPID extension in WSO2 MB. Some parameters in this file are overruled by the settings in the broker.xml file.

Following is a tree of the XML elements in the file:  

<broker>
    <prefix>
    <work>
    <conf>
    <plugin-directory>
    <cache-directory>
    <connector>
        <qpidnio>
        <protectio>
            <enabled>
            <readBufferLimitSize>
            <writeBufferLimitSize>
        <transport>
        <socketReceiveBuffer>
        <socketSendBuffer>
    <management>
        <enabled>
        <jmxport>
        <ssl>
            <enabled>
            <keyStorePath>
            <keyStorePassword>
    <advanced>
        <filterchain>
        <enablePooledAllocator>false</enablePooledAllocator>
        <enableDirectBuffers>false</enableDirectBuffers>
        <framesize>65535</framesize>
        <compressBufferOnQueue>false</compressBufferOnQueue>
        <enableJMSXUserID>false</enableJMSXUserID>
        <locale>en_US</locale>
    <security>
        <pd-auth-manager>
            <principal-database>
                <class>
                <attributes>
                    <attribute>
                        <name>
                        <value>
        <msg-auth>
    <virtualhosts>
    <heartbeat>
        <delay>
        <timeoutFactor>
    <queue>
        <auto_register>
        <viewMessageCounts>false</viewMessageCounts>
    <status-updates>ON</status-updates>

Click an element below for more information:


<broker>

This is the top level element of the qpid-config.xml file. It contains all the other elements needed to configure WSO2 MB. The setting of the prefixes for ANDES_HOME and QPID_WORK allows environment variables to be used throughout the config.xml file and removes the need for hard coding of paths in this file.

Configurable sub elements

These parameters relate to the original QPID distribution and are overruled by the configurations of the broker.xml file. Therefore they will not have the effect intended when they were introduced by QPID.

Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<prefix>This points to the directory in which the QPID source is located.String${ANDES_HOME} Mandatory 
<work>This points to the directory in which the temporary data stored within QPID are located. e.g., Log files.String${QPID_WORK} Mandatory 
<conf>This points to the directory in which the QPID configuration files are located.String${prefix} Mandatory 
<plugin-directory>This points to the directory in which any plug-ins to QPID are located.String${ANDES_HOME}/lib/plugins Mandatory 
<cache-directory>This points to the cache directory of QPID.String${QPID_WORK}/cache Mandatory 

<connector>

This element contains parameters relating to the various aspects of the connection between the WSO2 MB and the QPID broker.

<qpidnio>

This is a sub element of the <connector> element.

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<qpidnio>QPIDNIO is enabled by setting this parameter to true. When QPIDNIO is enabled, a multi-threaded MINA socket acceptor will be set up. This socket acceptor will make an attempt to boost the performance by allowing both reading from and writing to a socket simultaneously.Boolean false true/falseMandatory 
<transport>This parameter determines which transport type to use to work with AMQP publishers/subscribers.Stringnio Mandatory 
<port>The port which corresponds with the port in which the non-secure Java Broker is run.Integer5672 Mandatory 
<socketReceiveBuffer>The buffer size which applies to messages received by the socket.Integer32768 Mandatory 
<socketSendBuffer>The buffer size for messages sent from the socket.Integer32768  Mandatory 

<protectio>

This element contains parameters used to prevent the QPID broker from running out of memory because of run-away clients and unresponsive clients. The parameters in this section are overruled by the settings in the broker.xml  file. Therefore they will not have the effect intended when they were introduced by QPID.

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<enabled>If the value is true, it means that the Protect I/O Configuration feature is enabled.Booleanfalse   
<readBufferLimitSize>The buffer limit for messages read by the QPID broker.Integer262144   
<writeBufferLimitSize>The buffer limit for messages sent by the QPID broker.Integer262144   

 

<management> 

This configuration option is for managing the JMX console. 

Since WSO2 MB uses its own management console, parameters in this section do not apply to WSO2 MB. The parameters relating to the WSO2 management console are described in the broker.xml file.

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<enabled>This element allows the user to switch the connectivity of the management console on/off. If the enabled tag is set to false you will not be able to connect a management console to this broker instance.Booleantruetrue/falseMandatory 
<jmxport> The JMX Management port.Int8999N/AMandatory 
<ssl>SSL related configurations for the management console.     
        <enabled>This is a sub element of the <ssl> element. This parameter determines whether SSL is enabled for the management console or not..Booleanfalsetrue/falseMandatory 
        <keyStorePath>This is a sub element of the <ssl> element. Update the path to your keystore location, or run the bin/create-example-ssl-stores (.sh|.bat) script from within the etc/ folder to generate an example store with a self-signed cert.String${conf}/qpid.keystoreN/AMandatory 
<keyStorePassword>The password for the keystore provided.StringpasswordN/AMandatory 


<advanced>

The elements in this section are used by the QPID extension within WSO2MB. At present, we do not recommend any changes to these settings.

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<filterchain>If the value is true, then the filter chain is activated. Thus, many filters will be applied to the requests and each filter would invoke the next filter in the chain. Boolean truetrue/falseMandatory 
<enablePooledAllocator>If this parameter is set to true, there will be a defined pool of ByteBuffers which will be used by the MINA socket acceptor to handle incoming messages. Boolean falsetrue/falseMandatory 
<enableDirectBuffers>If this parameter is set to true, the MINA socket acceptor will use direct ByteBuffers instead of heap ByteBuffers. Boolean falsetrue/falseMandatory 
<framesize>This parameter defines the buffer size when chunking the message content body as per the AMQP protocol. Int 65535N/AMandatory 
<compressBufferOnQueue>If this parameter is set to true, the ByteBuffers created by the MINA socket acceptor will be compressed for better performance. Boolean falsetrue/falseMandatory 
<enableJMSXUserID>If this parameter is set to true, it allows JMX user to connect to the QPID broker management console. However, since the QPID management console is not active within the WSO2 MB, this parameter is not used. Boolean falsetrue/falseMandatory 
<locale>This defines the language used by QPID to communicate its information/errors.Stringen_USN/AMandatory 

<security>

The security section specifies exactly one authentication manager (responsible for determining that a user's credentials are correct) and zero or more access plugins ( which limit what the user may and may not do). No configuration changes are required in this section.

Configurable sub elements
Parameter NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<pd-auth-manager>This parameter contains the principle databases for which the authorization related parameters are set.StringN/A   
<principle-database>This element contains the principle database for which the authorisation related parameters apply.StringN/A   
<class>This parameter contains the authentication class which applies to the principle database.Stringorg.wso2.carbon.andes.authentication.andes.CarbonBasedPrincipalDatabase   


<virtualhosts>

This element allows you to specify a location for the virtualhosts.xml file that you wish to use. If you are not using a subdirectory under $QPID_HOME you can provide a fully qualified path instead. For more information on the content of the virtualhosts.xml file please see Configuring qpid-virtualhosts.xml.

<heartbeat>

The Qpid broker sends an internal (only) heartbeat. This element is use to configure parameters relating to the frequency of this heartbeat. You need to to configure a proper delay for the heartbeat value if the connections will stay idle for a long time. For a description of all related configurations see Configure Broker and Client Heartbeating.

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<delay>This defines an interval between the pings sent to a subscriber to keep the connection alive. Int 0N/A This value is given in seconds.
<timeoutFactor>The time duration allowed for a subscriber to respond to a heartbeat request. If this time elapses before the response is received, the channel of communication between the server and the subscriber will end.Float 2.0N/A This value is given in seconds.


<queue>

This parameter should NOT be changed lightly as it sets the broker up to automatically bind queues to exchanges. It could be used to prevent users from creating new queues at runtime, assuming that you have created all queues/topics etc at broker startup. However, it is recommended to leave the parameter unchanged for now. 

Configurable sub elements
Element NameDescriptionTypeDefault ValueFixed ValuesMandatory/OptionalNotes
<auto_register>This parameter determines whether to register the queue name in the server at the time it is created or not.Booleantruetrue/false  
<viewMessageCounts>

If this parameter is set to true, the queue message counters are activated. As a result, the message count of each queue is displayed in the admin console by default. When this parameter is set to false, the message count can be read from the console on user demand.

Booleanfalsetrue/falseOptionalSetting this parameter to true has a direct impact on the broker performance. Therefore, change the value to true only when a performance degradation is acceptable.

 

<status-updates>

If the value for this parameter is on, status updates from the QPID broker will be generated.