5.3. Configuration files
The configuration files are stored in a number of locations in the JBoss Enterprise Application Server directory structure. In all cases, you must change the file in each server profile you want to run because they are not shared between profiles.
Files located in /deploy/hornetq/
- hornetq-configuration.xml
- This is the main HornetQ configuration file. All the parameters in this file are described in Appendix A, Configuration Reference. Refer to Section 5.4, “The Main Configuration File” for more information on this file.
Note
The propertyfile-deployment-enabled
in thehornetq-configuration.xml
configuration when set to false means that the other configuration files are not loaded. By default, this is set to true. - hornetq-jboss-beans.xml
- This is the JBoss Microcontainer beans file which defines what beans the Microcontainer should create and what dependencies to enforce between them.
- hornetq-jms.xml
- The distribution configuration by default includes a server side JMS service which mainly deploys JMS Queues, Topics and Connection Factories from this file into JNDI. If you are not using JMS, or you do not need to deploy JMS objects on the server side, then you do not need this file. For more information on using JMS, refer to Chapter 6, Using JMS.
Files located in /conf/props/
- hornetq-users.properties
- HornetQ ships with a security manager implementation that obtains user credentials from the
hornetq-users.properties
file. This file contains user and password information. For more information on security, refer to Chapter 29, Security. - hornetq-roles.properties
- This file contains user names defined in
hornetq-users.properties
with the roles they have permission to use. For more information on security, refer to Chapter 29, Security.
It is also possible to use system property substitution in all the configuration files in a server profile by replacing a value with the name of a system property. Here is an example of this with a connector configuration:
<connector name="netty"> <factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory </factory-class> <param key="host" value="${hornetq.remoting.netty.host:localhost}" type="String"/> <param key="port" value="${hornetq.remoting.netty.port:5445}" type="Integer"/> </connector>
Here you can see two values have been replaced with system properties
hornetq.remoting.netty.host
and hornetq.remoting.netty.port
. These values will be replaced by the value found in the system property if there is one. If not, they default back to localhost or 5445 respectively. It is also possible to not supply a default. That is, ${hornetq.remoting.netty.host}
, however the system property must be supplied in that case.