`

GlassFish JMS 配置

 
阅读更多

物理目的地名称不能包含('/') ,
大家一般喜欢把它和 JNDI 的名称统一起来 (jms/topic), 可是不行




其他的配置只要点几下鼠标即可


代码 (NetBeans EE project :pserver:pprun@cvs.dev.java.net:/cvs/hjpetstore/MyJMS)

1. 服务器端 (MDB - the subscriber)

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ejb;

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.MapMessage;
import javax.jms.Message;
import javax.jms.MessageListener;

/**
*
* @author pprun
*/
@MessageDriven(mappedName = "jms/topic", activationConfig = {
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"),
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Topic"),
@ActivationConfigProperty(propertyName = "subscriptionDurability", propertyValue = "Durable"),
@ActivationConfigProperty(propertyName = "clientId", propertyValue = "MyMessageBean"),
@ActivationConfigProperty(propertyName = "subscriptionName", propertyValue = "MyMessageBean")
})
public class MyMessageBean implements MessageListener {

public MyMessageBean() {
}

MapMessage msg = null;
@Override
public void onMessage(Message message) {
try {
msg = (MapMessage) message;
System.out.println("----------------------");
System.out.println(msg.getString("lastname"));
System.out.println(msg.getString("firstname"));
System.out.println(msg.getString("id"));
System.out.println("----------------------");
} catch (JMSException ex) {
Logger.getLogger(MyMessageBean.class.getName()).log(Level.SEVERE, null, ex);
}

}
}


2. client (Enterprise Client) - the message/topic producer

package myjms;

import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.Resource;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.MapMessage;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.Topic;

/**
*
* @author pprun
*/
public class Main {
@Resource(mappedName="jms/topicFactory")
private static ConnectionFactory topicFactory;

@Resource(mappedName="jms/topic")
private static Topic topic;

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Connection topicConnection = null;
Session session = null;
MapMessage message = null;
MessageProducer producer = null;

try {
topicConnection = topicFactory.createConnection();
session = topicConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
producer = session.createProducer(topic);
message = session.createMapMessage();

message.setString("lastname", "Pi");
message.setString("firstname", "Pprun");
message.setString("id", "1111");

producer.send(message);
} catch (Exception e) {
Logger.getLogger(Main.class.getCanonicalName()).log(Level.SEVERE, "error in jmx send...", e);
}
}

}



The Result (GlassFish log)
----------------------
Pi
Pprun
1111
----------------------


开源工程站点
https://hjpetstore.dev.java.net/source/browse/hjpetstore/MyJMS/

  • 大小: 81.9 KB
分享到:
评论

相关推荐

    GlassFish 管理配置

    作为IT行业的一名专家,我们知道GlassFish服务器是基于Java EE平台的,为开发者提供了一个全面的开发和部署环境,用于构建并运行多种Java应用程序,包括Web应用、EJB组件以及JMS消息服务等。 文件标题“GlassFish ...

    GlassFish配置SonicMQ

    5. **配置应用中的JMS连接**: 在你的Java代码或应用的配置文件中,你需要配置应用程序以使用在GlassFish中设置的JMS资源。这通常涉及通过JNDI查找获取连接工厂,并使用该工厂创建JMS连接。 6. **测试配置**: 完成...

    GlassFish5.0安装包

    【GlassFish 5.0 安装与配置详解】 GlassFish,由Oracle公司主导的开源项目,是一款功能强大的Web服务器和应用服务器,以其卓越的性能和丰富的特性在开发者社区中备受推崇。相比于Tomcat,GlassFish提供了更全面的...

    glassfish安装手册及源文件

    5. **默认端口配置**:在默认情况下,Glassfish的管理端口为4848,HTTP服务端口为8080,JMS端口为7676,IIOP端口为3700。这些端口在安装过程中需要确保没有其他程序占用。 6. **启动与管理**:将Glassfish安装目录...

    glassfish安装

    本文将详细讲解如何安装和配置Glassfish,以帮助初学者快速入门。 首先,理解Glassfish的角色至关重要。它是Java Enterprise Edition(Java EE)的参考实现,提供了对各种Java EE规范的支持,包括Servlet、JSP、EJB...

    GlassFish Eclipse Plugin

    4. **资源管理**:允许开发者管理GlassFish服务器上的数据源、JMS资源等,方便配置应用程序所需的外部资源。 5. **热部署**:插件支持热部署,即在不中断服务器运行的情况下,更新应用代码,提高开发效率。 6. **...

    glassfish插件-eclipse.rar

    此外,插件还集成了GlassFish管理控制台的部分功能,如查看服务器状态、管理数据源、JMS资源等,使得开发者无需离开Eclipse即可完成大部分管理工作。 总的来说,GlassFish插件为Eclipse开发者带来了极大的便利,...

    glassfish-v2 source code

    《深入解析Glassfish-v2源码》 Glassfish-v2是一款基于Java EE 5标准的开源应用服务器,其源码的公开为开发者提供了深入了解和学习Java企业级开发的宝贵资源。在本文中,我们将深入探讨Glassfish-v2的核心概念、...

    glassfish 教程指南

    这份文档将详细讲解如何配置和管理Glassfish中的MQ服务,包括创建、配置队列和主题,以及监控和管理消息传递。 `administration-guide.pdf`是Glassfish的管理指南,涵盖了服务器的日常运维任务。它将详细介绍如何...

    glassfish官方文档

    1. **安装与配置**:文档将指导如何下载和安装GlassFish服务器,包括设置环境变量、配置网络监听端口和初始化域。 2. **域管理**:GlassFish使用域的概念来组织多个服务器实例,域配置包括了服务器设置、数据源、...

    glassfish网络开发服务器

    由Oracle公司维护,它支持各种企业级服务,包括Web服务、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JPA(Java Persistence API)以及Servlet和JSP等。作为NetBeans IDE的一部分,GlassFish为...

    glassfish api

    在Glassfish 4.0版本中,配置工具提供了一个直观的界面,使得配置过程相对简便。开发者可以通过命令行工具或管理控制台进行配置,同时也支持通过XML配置文件进行精细调整。 4. **性能调优** "glassfish-...

    NetBeans IDE and GlassFish developing demo

    GlassFish作为Java EE的实现,遵循了完整的Java EE规范集,包括EJB(企业级JavaBean)、JPA(Java Persistence API)、JSF(JavaServer Faces)、JMS(Java消息服务)等。开发者可以使用GlassFish部署和运行各种Java...

    GlassFish 解析

    GlassFish是Oracle公司主导的开源项目,它遵循JSR(Java Specification Requests)规范,支持Java EE的各种组件,如Servlet、JSP、EJB、JMS、JPA等。作为一款全面的企业级应用服务器,GlassFish提供了强大的管理和...

    GlassFish 2.1.1QuickStartGuide

    - **服务器实例配置:** 位于 `<glassfish-home>/domains/domain1/config/server.xml`。 - **资源适配器配置:** 位于 `<glassfish-home>/domains/domain1/config/ra.xml`。 #### 四、应用开发与部署 **1. 支持...

    GlassFishServer是JavaEE的开源参考实现

    GlassFish Server的核心功能包括对Java Servlet、JavaServer Pages (JSP)、Java Persistence API (JPA)、EJB(Enterprise JavaBeans)、Java Message Service (JMS)、Java Transaction API (JTA)、Web服务等的支持。...

    GlassFish源码

    对于学习者来说,通过研究GlassFish 2.1源码,可以深入理解Java EE 5中的核心概念和技术,如JNDI(Java Naming and Directory Interface)、RMI(Remote Method Invocation)、JMS(Java Message Service)以及EJB的...

    soapjms测试例子使用activemq和glassfish中的jar包

    GlassFish包含了一个内置的JMS提供者,我们可以使用它来创建消息目的地(如队列或主题),并配置相应的连接工厂。在GlassFish管理控制台中,可以创建这些资源并进行配置。 在`soaptest`这个压缩包中,可能包含了...

Global site tag (gtag.js) - Google Analytics