hk2000c技術專欄

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            111 隨筆 :: 1 文章 :: 28 評論 :: 0 Trackbacks
           JMS做為J2EE的高級部分一直蒙著一層神秘的面紗,作為JMS的定制者SUN只規(guī)定了JMS規(guī)范,象很多其他SUN產(chǎn)品一樣被多家廠商提供了具體的實現(xiàn)。但是作為tomcat和RESIN(今年初宣布全部支持J2EE規(guī)范)。這些面向低端但卻被廣泛應用的服務器本身并不對JMS提供支持。慶幸的是openjms和activeMQ兩家開源軟件提供了插件式的支持。

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

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

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

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

          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服務器已經(jīng)綁到了上面。
          posted on 2007-11-16 16:48 hk2000c 閱讀(3909) 評論(0)  編輯  收藏 所屬分類: JMS
          主站蜘蛛池模板: 三亚市| 昭苏县| 花莲市| 宜春市| 宁乡县| 奉新县| 犍为县| 岳普湖县| 湛江市| 新和县| 泗洪县| 靖西县| 和龙市| 南木林县| 聂拉木县| 江川县| 营山县| 通河县| 永清县| 甘泉县| 潜江市| 阿城市| 高清| 大荔县| 青阳县| 洪洞县| 永登县| 夏邑县| 隆化县| 衡阳市| 临西县| 玛曲县| 谷城县| 台北市| 古田县| 霍林郭勒市| 正镶白旗| 康定县| 金秀| 牡丹江市| 库尔勒市|