Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 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 2008-12-31 18:07 禮物 閱讀(1141) 評論(0)  編輯  收藏 所屬分類: javaJBoss
          主站蜘蛛池模板: 德令哈市| 平安县| 天台县| 平乐县| 万载县| 九寨沟县| 宾川县| 榕江县| 盘山县| 泸溪县| 峨边| 南安市| 定南县| 汝城县| 陆良县| 会宁县| 云和县| 缙云县| 睢宁县| 江陵县| 彭阳县| 丹凤县| 沙坪坝区| 台中县| 芷江| 太保市| 武宣县| 诸城市| 大同县| 靖州| 鄂州市| 绍兴县| 竹北市| 台东县| 桐城市| 绵阳市| 青冈县| 德州市| 和硕县| 阿拉善盟| 阳东县|