嗨开发者,
我想使用库名编写 2 个.java
文件,分别是和.JMS
MessageProducer
MessageConsumer
我在我的文件夹中添加了activemq-all-5.8.0.jar
和commons-io-2.4.jar
文件。我lib
将端口号Activemq
从更改61616
为61617
。
使用MessageProducer.java
文件,我会将消息发送到Activemq
。为此,我编写了代码,它工作正常。如果您想查看,请单击此链接。
我想从到发送消息Activemq
。MessageConsumer.java
这是应用程序在Apache Tomcat
(http://localhost:8080/ExecutableFileProcess/MessageConsumer
)
收到MessageConsumer
消息后,它将消息正文与消息分开,并仅在控制台上打印(仅用于我的测试)。为此,我编写了以下 2 个java
文件。但它不起作用。
消息消费者.java:
package PackageName;
import java.io.IOException;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.MessageListener;
import javax.jms.Queue;
import javax.jms.Session;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.activemq.ActiveMQConnectionFactory;
public class MessageConsumer 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);
Queue queue=session.createQueue("MessageTesing");
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
}
}
}
MyListener.java:
package PackageName;
import javax.jms.Message;
import javax.jms.MessageListener;
public class MyListener implements MessageListener {
public void onMessage(Message msg) {
System.out.println(msg);
}
};
我没有为 Queue in 配置目的地,Activemq console
也没有在从MessageProducer.java
.
我正在使用 Eclipse。如何在控制台中打印 messagebody,实际上基于 messagebody 我将在我的MessageConsumer.java
.but 中进行一些操作。但是对于我的测试,我需要查看 messagebody。
我希望,你明白我在尝试什么。
我是新手JMS
,Java
所以你能解释清楚吗。到目前为止,我使用谷歌搜索编写了代码。但我在任何地方都没有找到这个问题。
任何人都可以建议我。
谢谢。