Chapter 3. Getting started
This chapter guides you through the steps to set up your environment and run a simple messaging program.
3.1. Prerequisites
- To build the example, Maven must be configured to use the Red Hat repository or a local repository.
- You must install the examples.
-
You must have a message broker listening for connections on
localhost
. It must have anonymous access enabled. For more information, see Starting the broker. -
You must have a queue named
queue
. For more information, see Creating a queue.
3.2. Running Hello World
The Hello World example calls createConnection()
for each character of the string "Hello World", transferring one at a time. Because AMQ JMS Pool is in use, each call reuses the same underlying JMS Connection
object.
Procedure
Use Maven to build the examples by running the following command in the
<source-dir>/pooled-jms-examples
directory.$ mvn clean package dependency:copy-dependencies -DincludeScope=runtime -DskipTests
The addition of
dependency:copy-dependencies
results in the dependencies being copied into thetarget/dependency
directory.Use the
java
command to run the example.On Linux or UNIX:
$ java -cp "target/classes:target/dependency/*" org.messaginghub.jms.example.HelloWorld
On Windows:
> java -cp "target\classes;target\dependency\*" org.messaginghub.jms.example.HelloWorld
Running it on Linux results in the following output:
$ java -cp "target/classes/:target/dependency/*" org.messaginghub.jms.example.HelloWorld 2018-05-17 11:04:23,393 [main ] - INFO JmsPoolConnectionFactory - Provided ConnectionFactory is JMS 2.0+ capable. 2018-05-17 11:04:23,715 [localhost:5672]] - INFO SaslMechanismFinder - Best match for SASL auth was: SASL-ANONYMOUS 2018-05-17 11:04:23,739 [localhost:5672]] - INFO JmsConnection - Connection ID:104dfd29-d18d-4bf5-aab9-a53660f58633:1 connected to remote Broker: amqp://localhost:5672 Hello World
The source code for the example is in the <source-dir>/pooled-jms-examples/src/main/java
directory. The JNDI and logging configuration is in the <source-dir>/pooled-jms-examples/src/main/resources
directory.