hk2000c技術專欄

          技術源于哲學,哲學來源于生活 關心生活,關注健康,關心他人

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            111 隨筆 :: 1 文章 :: 28 評論 :: 0 Trackbacks
           JMS做為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  <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服務器的具體配置:

          <?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服務器已經綁到了上面。
          posted on 2007-11-16 16:48 hk2000c 閱讀(3905) 評論(0)  編輯  收藏 所屬分類: JMS
          主站蜘蛛池模板: 五峰| 大英县| 芜湖县| 盖州市| 神农架林区| 行唐县| 台山市| 宁南县| 古丈县| 利川市| 兴宁市| 临澧县| 孙吴县| 二手房| 沾益县| 夹江县| 海伦市| 台东县| 澄江县| 潞城市| 许昌市| 大埔区| 昆山市| 开平市| 北海市| 康乐县| 大厂| 临清市| 黄平县| 邢台县| 萝北县| 永善县| 略阳县| 金阳县| 株洲县| 保靖县| 安吉县| 青田县| 高邮市| 台安县| 沙田区|