tomcat下应用JMS <转>
tomcat下应用JMSjms做为J2EE的高级部分一直蒙着一层神秘的面纱,作为JMS的定制者SUN只规定了JMS规范,象很多其他SUN产品一样被多家厂商提供了具体的实现。但是作为tomcat和RESIN(今年初宣布全部支持J2EE规范)。这些面向低端但却被广泛应用的服务器本身并不对JMS提供支持。庆幸的是openjms和activeMQ两家开源软件提供了插件式的支持。
在应用了一些开发框架如spring的项目里如果要使用到JMS,虽然SPRING提供了部分对JMS的支持但经过我一段时间的应用发现,OO的封装在某些地方反而成为开发过程中的障碍。在实现诸如监听之类的代码段里使人非常的懊恼,即使用callback(回调)有些东西仍然不能够很好的被取到。
下面就一些TOMCAT上面JMS的支持既实现做一下整理。
1.很自然的你需要下载JMS实现,如:opnerJMS或者activeMQ .下载地址www.jmsopen.com 或www.activeMQ.com
2.服务器下载以后的具体配置在以上两个网站上都有很详细的说明,就不再列举了。
3。和WEB服务器的整合
首先要配置应用的web.xml这个文件配置如下:
1 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif < context-param >
2 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif < param-name > brokerURI </ param-name >
3 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif < param-value > /WEB-INF/activemq.xml </ param-value >
4 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </ context-param >
5 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
6 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif < listener >
7 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif < listener-class > org.activemq.web.SpringBrokerContextListener </ listener-class >
8 http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </ listener >
将这一段代码放到web.xml里。注意到activemq.xml文件,是jms服务器的具体配置:
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<?xml version="1.0" encoding="UTF-8"?>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!DOCTYPE beans PUBLIC"-//ACTIVEMQ//DTD//EN" "http://activemq.org/dtd/activemq.dtd">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<beans>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- ==================================================================== -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- ActiveMQ Broker Configuration -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- ==================================================================== -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<broker>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <connector>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <tcpServerTransport uri="tcp://localhost:61616" useAsyncSend="true" maxOutstandingMessages="50"/>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </connector>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <!-- to enable Stomp support uncomment this
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <connector>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <serverTransport uri="stomp://localhost:61626"/>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </connector>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <persistence>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <jdbcPersistence dataSourceRef="oracle-ds"/>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </persistence>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif</broker>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- ==================================================================== -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- JDBC DataSource Configurations -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- ==================================================================== -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<!-- The Derby Datasource that will be used by the Broker -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif<bean id="oracle-ds" class="" destroy-method="close">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <property name="driverClassName">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <value>org.apache.derby.jdbc.EmbeddedDriver</value>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </property>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <property name="url">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <!-- Use a URL like 'jdbc:hsqldb:hsql://localhost:9001' if you want to connect to a remote hsqldb -->
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <value>jdbc:derby:derbydb;create=true</value>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </property>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <property name="username">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <value></value>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </property>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <property name="password">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <value></value>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </property>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <property name="poolPreparedStatements">
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif <value>true</value>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif </property>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif</bean>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif</beans>
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
http://srj2903.iteye.com/Images/OutliningIndicators/None.gif
此时,在启动你的TOMCAT的时候会看到JMS服务器已经绑到了上面。(待续)
posted on 2005-12-08 18:41 javajohn 阅读(7415) 评论(19)编辑收藏 所属分类: 短信开发
http://www.blogjava.net/javajohn/aggbug/23016.html?webview=1
<!--<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/"xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"><rdf:Descriptionrdf:about="http://www.blogjava.net/javajohn/archive/2005/12/08/23016.html"dc:identifier="http://www.blogjava.net/javajohn/archive/2005/12/08/23016.html"dc:title="tomcat下应用JMS"trackback:ping="http://www.blogjava.net/javajohn/services/trackbacks/23016.aspx" /></rdf:RDF>-->Feedback
# re: tomcat下应用JMS 2005-12-19 09:38 jackey
楼主,麻烦把具体的配置写详细,或者把文档发到我的邮箱,急用.
还有openjms的还有没别的网站下载,上面的我打不开.
我的邮箱:feitianshu1983@21cn.com回复更多评论
# re: tomcat下应用JMS 2005-12-19 13:13 javajohn
以上的两个网地址:
http://activemq.codehaus.org/ 是activeMQ的
http://openjms.sourceforge.net/ 是openjms的
配置的时候注意
<persistence>
<jdbcPersistence dataSourceRef="oracle-ds"/>
</persistence>
这段dataSourceRef的值是你下面配置的数据库连接的名称,比如我的配置是oracle-ds,在下面就做了oracle的连接信息,在下载了activeMQ以后在它的配置文件里有对mysql的例子。
页:
[1]