`
linliangyi2007
  • 浏览: 1014291 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

ActiveMQ 5.X 与 Tomcat 集成一(JNDI部署)

阅读更多
原文地址:http://activemq.apache.org/setting-up-activemq-with-tomcat-559.html

生成文件 <webapp-root>/META-INF/context.xml. 以下是样例:
<Context antiJARLocking="true">
    <Resource
        name="jms/ConnectionFactory"
        auth="Container"
        type="org.apache.activemq.ActiveMQConnectionFactory"
        description="JMS Connection Factory"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        brokerURL="tcp://localhost:61616"
        brokerName="LocalActiveMQBroker"
        useEmbeddedBroker="false"/>

    <Resource name="jms/topic/MyTopic"
        auth="Container"
        type="org.apache.activemq.command.ActiveMQTopic"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        physicalName="MY.TEST.FOO"/>
    <Resource name="jms/queue/MyQueue"
        auth="Container"
        type="org.apache.activemq.command.ActiveMQQueue"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        physicalName="MY.TEST.FOO.QUEUE"/>
</Context>

上面的配置,在Tomcat内产生了一个JMS的ConectionFactory 和Topic 的JNDI上下文。

下面是一段Java样例代码,它像一个名为MY.TEST.FOO 的主题发布一段文本信息:
try {
    InitialContext initCtx = new InitialContext();
    Context envContext = (Context) initCtx.lookup("java:comp/env");
    ConnectionFactory connectionFactory = (ConnectionFactory) envContext.lookup("jms/ConnectionFactory");
    Connection connection = connectionFactory.createConnection();
    Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
    MessageProducer producer = session.createProducer((Destination) envContext.lookup("jms/topic/MyTopic"));

    Message testMessage = session.createMessage();
    testMessage.setStringProperty("testKey", "testValue");
    producer.send(testMessage);
} catch (NamingException e) {
    // TODO handle exception
} catch (JMSException e) {
    // TODO handle exception
}


1
1
分享到:
评论

相关推荐

    ActiveMq-JMS简单实例使用tomcat.doc

    5. **优秀的Spring框架集成**,简化部署和配置。 6. **高性能**,速度通常是JBossMQ的十倍。 7. **强大的社区支持**,作为Apache项目,拥有持续发展和更新的优势。 **二、ActiveMQ的下载与安装** 1. 从官方网站...

    ActiveMq-JMS好用实例详解

    不论是在何种Java虚拟机环境中,ActiveMQ 都能正常运行,并且它还能够在大部分主流的Web容器中无缝集成,如Tomcat、Jetty等,这极大地提高了它的部署灵活性。 3. **支持多种语言客户端** 除了Java之外,ActiveMQ...

    activemq-ra-3.2.3.jar.zip

    使用ActiveMQ RA 3.2.3.jar时,开发者需要将其部署到Java EE应用服务器,例如Tomcat、WebLogic或JBoss等,然后配置相应的连接工厂和目的地。这样,应用就可以通过JNDI查找这些资源,创建JMS会话,发送和接收消息。...

    ActiveMQ+tomcat

    在很多企业环境中,Tomcat被用作Web服务的基础,但其自身并不包含消息队列的功能,因此需要通过集成ActiveMQ来扩展这一功能。 整合ActiveMQ和Tomcat,主要涉及以下几个步骤: 1. **安装和配置ActiveMQ**:首先需要...

    Spring+JMS+ActiveMQ+Tomcat实现消息服务_服务器应用

    - **Tomcat 6.0.30**:Tomcat 是一个免费开源的轻量级 Web 服务器软件,主要用来部署和运行基于 Java 的 Web 应用。Tomcat 6.0.30 版本在此领域也是较为成熟的版本之一。 #### 二、Spring 对 JMS 的支持 Spring ...

    apache-activemq

    4. **创建JMS连接工厂**:在Tomcat的`META-INF/context.xml`或Web应用的`WEB-INF/classes/META-INF/context.xml`中配置ActiveMQ的JNDI连接工厂。 5. **部署JMS资源**:在Tomcat的`server.xml`或Web应用的`WEB-INF/...

    activemq-ra-3.1-M6.jar.zip

    该JAR文件包含了实现JCA(Java Connector Architecture)规范的代码,允许ActiveMQ与Java EE应用服务器如Tomcat、WebLogic、JBoss等进行无缝集成。 2. **JMS与JCA**:JMS是Java平台上的标准接口,用于在分布式环境...

    Spring JMS 消息处理-基于JNDI

    通过JNDI,开发者可以将JMS相关的配置与实际代码分离,实现更灵活的部署和管理。在“Spring JMS 消息处理-基于JNDI”的博文中,作者可能会讲解如何在应用服务器如Tomcat或WebLogic中配置JNDI资源,以及如何在Spring...

    spring jms tomcat 异步消息传递入门实例

    2. **Tomcat与JMS**:虽然Tomcat本身并不直接支持JMS,但可以在Tomcat中部署一个支持JMS的容器,如Apache ActiveMQ或IBM WebSphere MQ。这些服务器将作为消息代理,接收和分发消息。在Tomcat中配置JMS,需要在`...

    java面试题集(j2ee)

    - Tomcat、Jetty等是常见的Servlet容器,理解如何配置和部署WAR文件到这些容器。 - 部署到应用服务器如WebLogic、WebSphere的流程和注意事项。 11. **性能调优**: - JVM内存模型、垃圾回收机制以及如何调整JVM...

    haha手册

    客户端配置主要包括JNDI配置文件、Tomcat集成以及Spring框架集成等方面。 ### 6. 代理配置 代理配置是ActiveMQ的核心部分,涉及XML配置文件的编写、连接器配置、网络配置等内容。 ### 7. 传输协议 ActiveMQ支持...

    Jetty中文手册

    Binding JAX-WS 2.x Endpoints to Jetty Contexts Java Management Extensions (JMX) 配置JMX教程 处理JVM NIO Bug Rewrite模块 Inversion of Control and Dependency Injection Frameworks Jetty XML IOC 如何使用...

    个人整理的J2EE开发面试题(很全面的)

    11. **容器与服务器**:Tomcat、Jetty、WebLogic、WebSphere等的应用,以及如何部署和管理应用。 12. **设计模式**:常见的设计模式如单例、工厂、观察者、装饰者、适配器、代理、策略等在实际开发中的应用。 13. ...

    IT面试宝典

    4. **软件工程**:敏捷开发、持续集成/持续部署(CI/CD)、代码版本控制(Git等)。 5. **项目管理**:了解瀑布模型、敏捷开发、Scrum框架,以及风险管理、需求分析。 6. **云原生技术**:Docker容器化、...

    java、数据库等方面的面试题

    最后,各大公司软件测试面试题可能会涉及自动化测试工具(如Selenium、JUnit)、测试策略(如单元测试、集成测试、系统测试)、缺陷管理(如Bugzilla、Jira)、性能测试(如JMeter)、持续集成/持续部署(CI/CD)等...

    tongweb6.0使用手册

    TongWeb 6.0 是一款由东方通科技研发的企业级应用服务器,它遵循JavaEE6 Full Profile标准,提供了丰富的功能与特性来支持企业级应用程序的开发、部署与管理。 **1.2 JavaEE6 Full Profile 的新特性** JavaEE6 ...

    分布式Hibernate search详解

    这使得应用程序能够通过JNDI查找来获取到连接工厂和队列,从而与ActiveMQ进行通信。 Spring框架在这里的作用是提供依赖注入和配置管理,使得集成各个组件(如Hibernate Search、ActiveMQ和应用程序本身)变得更加...

    fix_MDB:此MDB将处理所有传入的JMS消息并从中删除所有非字母数字字符

    为了实现这个功能,MDB需要配置在Java EE容器中,例如Tomcat、GlassFish或WildFly,并且需要与JMS提供者进行集成。在部署描述符(如`ejb-jar.xml`或`web.xml`)中,我们需要定义MDB的接口、实现类以及消息监听器的...

Global site tag (gtag.js) - Google Analytics