web模块
/WEB-INF/hornetq-jms.xml
<?xml version="1.0" encoding="UTF-8"?>
<messaging-deployment xmlns="urn:jboss:messaging-deployment:1.0">
<hornetq-server>
<jms-destinations>
<jms-queue name="HelloWorldMDBQueue">
<entry name="/queue/HelloWorldMDBQueue"/>
</jms-queue>
</jms-destinations>
</hornetq-server>
</messaging-deployment>
/src/ejb/servlet/TextServlet.java
package ejb.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.Resource;
import javax.jms.Connection;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.Queue;
import javax.jms.QueueConnectionFactory;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/TextServlet")
public class TextServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Resource(mappedName = "java:/ConnectionFactory")
private QueueConnectionFactory queueConnectionFactory;
@Resource(mappedName = "java:/queue/HelloWorldMDBQueue")
private Queue queue;
protected void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
Connection connection;
try {
connection = queueConnectionFactory.createConnection();
Session session = connection.createSession(false,
Session.AUTO_ACKNOWLEDGE);
MessageProducer messageProducer = (MessageProducer) session
.createProducer(queue);
TextMessage textMessage = session.createTextMessage();
// Part number – 12345
// Weight – 12.5f
// Quantity - 50
String message = "12345 12.5 50";
textMessage.setText(message);
messageProducer.send(textMessage);
System.out.println("---> Text Message Sent");
} catch (JMSException ex) {
Logger.getLogger(TextServlet.class.getName()).log(Level.SEVERE,
null, ex);
}
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet TextServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet TextServlet at "
+ request.getContextPath() + "</h1>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
}
ejb 模块
/ejbModule/ejb/bean/TextMDB.java
package ejb.bean;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.TextMessage;
@MessageDriven(name = "HelloWorldMDB", activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/HelloWorldMDBQueue"),
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge") })
public class TextMDB implements MessageListener {
private final static Logger LOGGER = Logger.getLogger(TextMDB.class
.toString());
/**
* @see MessageListener#onMessage(Message)
*/
public void onMessage(Message message) {
TextMessage msg = null;
try {
if (message instanceof TextMessage) {
msg = (TextMessage) message;
Scanner scanner = new Scanner(msg.getText());
System.out.println("---> Part Number: " + scanner.nextInt());
System.out.println("---> Weight: " + scanner.nextFloat());
System.out.println("---> Quantity: " + scanner.nextInt());
System.out.println("---> TextMessage Received");
}
} catch (JMSException ex) {
LOGGER.log(Level.SEVERE, null, ex);
}
}
}
使用 standalone-full.xml 启动jboss7 才有jms支持
分享到:
相关推荐
JBoss7.1.1配置指南及管理员手册PDF版本,很清楚,介绍的也很详细
jboss7.1超详细说明,有群的说明 也有jboss7.1独有的”域“说明和详细配置
Jboss7.1.1linux64位安装包,可用于部署javaweb应用程序
这是ejb3.1用jboss7.1.1开发的HelloWorld文档,网上有一个和这个差不多,但是有些错误,这个是修正版的
ejb3.0配置使用jboss7.1.1的数据源
Jboss7.1.1p配置mysql和oracle以及项目调用参照.pdf
jboss7.1.1+ejb3.0+MySQL数据源配置,包含项目源码,可直接导入MyEclipse
Jboss7.1.1+eclipse-kepler开发ejb3 使用eclipse4.3即kepler版本来集成jboss tools工具并使用jboss7.1.1来开发ejb3.1
NULL 博文链接:https://guoying252166655.iteye.com/blog/2068704
JBoss 7.1.1 Final版本下,更改了JSP也需要重启服务,调试非常不方便。现在找到了解决方案:添加一个jar文件、修改两个xml即可。
最近在做一web服务的项目,使用apache的tomcat作为web服务器,但是考虑到后期可能出现高...由于是第一次使用JBOSS,所以过程中遇到一些问题,为了给其他人以参考,特写出下面JBOSS 7.1.1 Final版本的安装和配置、部署。
Jboss配置虚拟路径
从网上找资料,并亲自测试成功的,与大家分享。
jboss的起步,包含数据库数据源的配置教程,以及应用的发布
NULL 博文链接:https://8366.iteye.com/blog/502114
附件提供一个jar、两个xml、一个文档,分别实现jsp热部署(默认情况下jboss修改了JSP还需要重启)、占用根目录“/”无需使用工程名(即使用http://127.0.0.1:8080直接访问首页)、多个工程同时启动(默认情况下会冲突...
JBOSS优化配置/内存优化/Jboss日志输出模式/Jboss数据库连接池优化/ Jboss部署目录优化
Jboss7.1安装配置(linux环境)
NULL 博文链接:https://lwpsoft.iteye.com/blog/2254348