Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學(xué);靜其心,可悟天下之理;恒其心,可成天下之業(yè)。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks

          JMS做為J2EE的高級部分一直蒙著一層神秘的面紗,作為JMS的定制者SUN只規(guī)定了JMS規(guī)范,象很多其他SUN產(chǎn)品一樣被多家廠商提供了具 體的實現(xiàn)。但是作為tomcat和RESIN(今年初宣布全部支持J2EE規(guī)范)。這些面向低端但卻被廣泛應(yīng)用的服務(wù)器本身并不對JMS提供支持。慶幸的 是openjms和activeMQ兩家開源軟件提供了插件式的支持。

          在應(yīng)用了一些開發(fā)框架如spring的項目里如果要使用到JMS,雖然SPRING提供了部分對JMS的支持但經(jīng)過我一段時間的應(yīng)用發(fā) 現(xiàn),OO的封裝在某些地方反而成為開發(fā)過程中的障礙。在實現(xiàn)諸如監(jiān)聽之類的代碼段里使人非常的懊惱,即使用callback(回調(diào))有些東西仍然不能夠很 好的被取到。

          下面就一些TOMCAT上面JMS的支持既實現(xiàn)做一下整理。

          1.很自然的你需要下載JMS實現(xiàn),如:opnerJMS或者activeMQ .下載地址www.jmsopen.com 或www.activeMQ.com

          2.服務(wù)器下載以后的具體配置在以上兩個網(wǎng)站上都有很詳細的說明,就不再列舉了。

          3.和WEB服務(wù)器的整合,首先要配置應(yīng)用的web.xml這個文件配置如下:

          1  <context-param>
          2 <param-name>brokerURI</param-name>
          3 <param-value>/WEB-INF/activemq.xml</param-value>
          4 </context-param>
          5
          6 <listener>
          7 <listener-class>org.activemq.web.SpringBrokerContextListener</listener-class>
          8 </listener>

          將這一段代碼放到web.xml里。注意到activemq.xml文件,是jms服務(wù)器的具體配置:

          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE beans PUBLIC
          "-//ACTIVEMQ//DTD//EN"
          "http://activemq.org/dtd/activemq.dtd">
          <beans>

          <!-- ===================== -->
          <!-- ActiveMQ Broker Configuration -->
          <!-- ===================== -->
          <broker>
          <connector>
          <tcpServerTransport
          uri="tcp://localhost:61616"
          useAsyncSend="true"
          maxOutstandingMessages="50"/>
          </connector>

          <!-- to enable Stomp support uncomment this
          <connector>
          <serverTransport
          uri="stomp://localhost:61626"/>
          </connector>
          -->

          <persistence>
          <jdbcPersistence
          dataSourceRef="oracle-ds"/>
          </persistence>
          </broker>

          <!-- ======================= -->
          <!-- JDBC DataSource Configurations -->
          <!-- ======================= -->

          <!-- The Derby Datasource
          that will be used by the Broker -->
          <bean id="derby-ds" class=
          "org.apache.commons.dbcp.BasicDataSource"
          destroy-method="close">
          <property name="driverClassName">
          <value>
          org.apache.derby.jdbc.EmbeddedDriver
          </value>
          </property>
          <property name="url">
          <!-- Use a URL like
          'jdbc:hsqldb:hsql://localhost:9001'
          if you want to connect to a remote hsqldb -->
          <value>
          jdbc:derby:derbydb;create=true
          </value>
          </property>
          <property name="username">
          <value></value>
          </property>
          <property name="password">
          <value></value>
          </property>
          <property name="poolPreparedStatements">
          <value>true</value>
          </property>
          </bean>
          </beans>

          此時,在啟動你的TOMCAT的時候會看到JMS服務(wù)器已經(jīng)綁到了上面。

          posted on 2008-12-31 18:07 禮物 閱讀(1140) 評論(0)  編輯  收藏 所屬分類: javaJBoss
          主站蜘蛛池模板: 德保县| 灵武市| 长白| 台北县| 祁连县| 梁山县| 时尚| 牙克石市| 台州市| 德令哈市| 旅游| 城市| 河北省| 三江| 柞水县| 军事| 泾川县| 介休市| 乐亭县| 巧家县| 平武县| 桐柏县| 安顺市| 界首市| 原平市| 白玉县| 扬中市| 娱乐| 政和县| 石渠县| 赞皇县| 库伦旗| 景德镇市| 宣威市| 维西| 叶城县| 盖州市| 平湖市| 都昌县| 旌德县| 托克托县|