| == Camel Artemis AMQP Messaging |
| |
| This example shows how to produce/consume messages between Apache Camel |
| and ActiveMQ Artemis using the AMQP component based on the JMS 2.0 |
| Apache Qpid Proton client library. |
| |
| One benefit of using Camel's AMQP component is to allow connectivity to |
| Qpid's Dispatch Router enabling flexible and scalable interconnect |
| between any AMQP endpoints. |
| |
| The example includes a JUnit to showcase how to embed an AMQP enabled |
| Artemis Broker. This permits building and testing the code in complete |
| isolation. |
| |
| When deployed in a running environment, Camel will attempt to connect to |
| an already existing Artemis broker using the default AMQP port (5672). |
| |
| === Test with embedded Artemis |
| |
| The JUnit with an included embedded Artemis Broker can be triggered |
| using Maven. |
| |
| .... |
| mvn test -P itest |
| .... |
| |
| === Install ActiveMQ Artemis |
| |
| To automate downloading, unpacking and configuration of Apache ActiveMQ |
| Artemis with latest defined version a special profile is added. It's |
| necessary to run following Maven command for do this during example |
| install: |
| |
| .... |
| mvn install -P artemis |
| .... |
| |
| === Run ActiveMQ Artemis |
| |
| To start configured ActiveMQ Artemis instance in a shell use: |
| |
| .... |
| $ target/artemis-instance/bin/artemis run |
| .... |
| |
| Which startup ActiveMQ Artemis in the foreground and keeps it running |
| until you hit ctrl+c to shutdown ActiveMQ Artemis. |
| |
| === Run Camel |
| |
| Start the Camel application: |
| |
| .... |
| mvn camel:run -DskipTests=true |
| .... |
| |
| Once started, Camel will be listening for HTTP requests (port 9090) as a |
| trigger mechanism to fire AMQP messages to Artemis. |
| |
| From your prefered browser hit the following URL: |
| |
| .... |
| http://localhost:9090/message |
| .... |
| |
| Or alternatively, using cURL: |
| |
| .... |
| curl http://localhost:9090/message |
| .... |
| |
| The above actions should render on screen: |
| |
| .... |
| Hello from Camel's AMQP example |
| .... |
| |
| To stop the example hit ctrl+c. |
| |
| === ActiveMQ Artemis web console |
| |
| You can browse the Artemis web console: http://localhost:8161/console to |
| see activity such as number of consumers and producers or acknoledged |
| messages. |
| |
| === Run with Karaf |
| |
| You will need to install this example first to your local maven |
| repository with: |
| |
| .... |
| mvn install |
| .... |
| |
| Then you can install this example from the shell using this example's |
| `+features.xml+` for easy provisioning: |
| |
| .... |
| feature:repo-add mvn:org.apache.camel.example/camel-example-artemis-amqp-blueprint/${version}/xml/features |
| feature:install camel-example-artemis-amqp-blueprint |
| .... |
| |
| And you can see the application running by tailing the logs: |
| |
| .... |
| log:tail |
| .... |
| |
| And you can use ctrl+c to stop tailing the log. |
| |
| === Help and contributions |
| |
| If you hit any problem using Camel or have some feedback, then please |
| https://camel.apache.org/support.html[let us know]. |
| |
| We also love contributors, so |
| https://camel.apache.org/contributing.html[get involved] :-) |
| |
| The Camel riders! |