Comment puis-je m'abonner programme Java en tant que consommateur, Activemq?

Je veux mettre en œuvre Pub/Sub de domaine dans le projet.Fondamentalement, je ne suis pas un développeur java,à l'aide de google vous aider.J'ai lu ce Lien.
J'ai commencé à mettre en œuvre la structure suivante.
Comment puis-je m'abonner programme Java en tant que consommateur, Activemq?

J'ai écrit en Java nom de l'Application que MessageConsumer.java pour recevoir des messages de AMQ courtier et placé dans le Serveur web(Apache, Tomcat).

MessageConsumercode:

 package PackageName;
 import java.io.IOException;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.jms.*;
 import org.apache.activemq.ActiveMQConnectionFactory;
 public class Consumer extends HttpServlet {
 @Override
 protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
    throws ServletException, IOException {
try {
//creating connectionfactory object for way
ConnectionFactory connectionFactory=new ActiveMQConnectionFactory("admin","admin","tcp://localhost:61617");
//establishing the connection b/w this Application and Activemq
Connection connection=connectionFactory.createConnection();
Session session=connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Topic queue=session.createTopic("MessageTesting");
javax.jms.MessageConsumer consumer=session.createConsumer(queue);
//fetching queues from Activemq
MessageListener listener = new MyListener();
consumer.setMessageListener(listener);
connection.start();
}
catch (Exception e) {
//TODO: handle exception
}
}

}

Séparément, j'ai écrit une autre Application Java pour le traitement des messages(MyListener.java).

MyListener.java code :

package PackageName;
import java.io.*;
import java.net.*;
import javax.jms.*;
public class MyListener implements MessageListener {
public void onMessage(Message msg) {
    TextMessage msg1=(TextMessage)msg;
    //just for your understanding I mention dummy code
    //System.out.println(msg1.getText());
    MyListener ml=new MyListener();
    try {

      ml.executeHttp("http://localhost:8080/ExecutableFileProcess/ClassName");
        System.out.println(msg1.getText());
    } catch (Exception e) {
        //TODO Auto-generated catch block
        e.printStackTrace();
    }
}}

À la fois les Applications Java sont dans le serveur web(Apache, Tomcat).jusqu'à présent, nous suivent de la manière suivante.

  1. Avant d'envoyer des messages au Sujet,nous sommes déclenchement MessageConsumer.java par le biais de l'adresse HTTP du navigateur.

Droit de savoir, ce que nous essayons.Initialement, nous ne voulons pas de déclenchement MessageConsumer.java.

Moyens,Supposons MessageConsumer.java est dans le Serveur web. D'abord Si AMQ un message à partir de n'importe où, notre MessageConsumer.java devrait être le processus de leur propre logique.

Je l'espère, vous les gars à comprendre ce que Nous essayons.

Je n'ai jamais travailler sur Apache Camel, pouvez-vous expliquer clairement.

Grâce.

Pouvez-vous reformuler votre question?
Pourquoi n'Est-il pas clair.

OriginalL'auteur Hanumath | 2013-09-07