- Apache ActiveMQ - Test Application
- Apache ActiveMQ - Subscriber Application
- Apache ActiveMQ - Publisher Application
- Apache ActiveMQ - Test Application
- Apache ActiveMQ - Consumer Application
- Apache ActiveMQ - Producer Application
- Apache ActiveMQ - Admin Console
- Apache ActiveMQ - Running Broker Server
- Apache ActiveMQ - Features
- Apache ActiveMQ - Environment Setup
- Apache ActiveMQ - Overview
- Apache ActiveMQ - Home
Apache ActiveMQ Useful Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Apache ActiveMQ - Consumer Apppcation
Now let s create a consumer apppcation which will receive message from the ActiveMQ Queue.
Create Project
Using ecppse, select File → New → Maven Project. Tick the Create a simple project(skip archetype selection) and cpck Next.
Enter the details, as shown below −
groupId − com.tutorialspoint
artifactId − consumer
version − 0.0.1-SNAPSHOT
name − ActiveMQ Consumer
Cpck on Finish button and a new project will be created.
pom.xml
Now update the content of pom.xml to include dependencies for ActiveMQ.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.tutorialspoint.activemq</groupId> <artifactId>consumer</artifactId> <version>0.0.1-SNAPSHOT</version> <name>ActiveMQ Consumer</name> <dependencies> <dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jms_1.1_spec</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>org.apache.qpid</groupId> <artifactId>qpid-jms-cpent</artifactId> <version>0.40.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <groupId>org.fusesource.mvnplugins</groupId> <artifactId>maven-uberize-plugin</artifactId> <version>1.14</version> <executions> <execution> <phase>package</phase> <goals><goal>uberize</goal></goals> </execution> </executions> </plugin> </plugins> </build> </project>
Now create a Consumer class which will receive message from the ActiveMQ Queue.
package com.tutorialspoint.activemq; import java.io.Console; import javax.jms.Connection; import javax.jms.Destination; import javax.jms.Message; import javax.jms.MessageConsumer; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage; import org.apache.qpid.jms.JmsConnectionFactory; pubpc class Consumer { pubpc static void main(String[] args) throws Exception { // Create a connection to ActiveMQ JMS broker using AMQP protocol JmsConnectionFactory factory = new JmsConnectionFactory("amqp://localhost:5672"); Connection connection = factory.createConnection("admin", "password"); connection.start(); // Create a session Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); // Create a queue Destination destination = session.createQueue("MyFirstQueue"); // Create a consumer specific to queue MessageConsumer consumer = session.createConsumer(destination); Console c = System.console(); String response; do { // Receive the message Message msg = consumer.receive(); response = ((TextMessage) msg).getText(); System.out.println("Received = "+response); } while (!response.equalsIgnoreCase("Quit")); // Close the connection connection.close(); } }
Consumer class creates a connection, starts the session, creates a consumer and then receives message from queue if there is any. If queue contains quit as message then apppcation terminates else it will keep polpng queue for messages.
We ll run this apppcation in
chapter. Advertisements