posts - 3,  comments - 1,  trackbacks - 0
          原來的項目中包含了Hibernate的應用,最近,另外一個項目也要引用這個Hibernate的應用,因此決定將Hibernate應用獨立出來,作為一個MBean部署到JBoss中,不同的項目通過JNDI來訪問。

          先說說我的開發(fā)環(huán)境
          Eclipse3.2+MyEclipse5.0+Spring2.0+Hibernate3.0+JBoss4.0.5GA

          首先在Google上搜索一番,知道了要在JBoss下部署Hibernate的應用,需要一個Hibernate的部署器。我在我的Jboss的Deploy目錄中沒有找到這個部署器(不知道為什么沒有),沒辦法,只好到Google上搜索一番,終于在下載到了這個加載器Hibernate3-deployer(點擊下載),把它部署到JBoss下的Deploy目錄中。接著,在Eclipse中建立一個Hibernate的Java項目,目錄結(jié)構(gòu)如圖一。
          在根目錄建立META-INF目錄,在目錄下編寫jboss-service.xml文件
           1 <?xml version="1.0" encoding="UTF-8"?>  
           2 <server>  
           3      <mbean
           4          code="org.jboss.hibernate.jmx.Hibernate"
           5          name="jboss.har:service=Hibernate">   
           6         <depends>jboss.jca:service=RARDeployer</depends>
           7         <depends>
           8           jboss.jca:name=TestDS,service=DataSourceBinding
           9         </depends>        
          10         <attribute name="DatasourceName">
          11              java:/TestDS
          12         </attribute>   
          13          <attribute name="Dialect">
          14              org.hibernate.dialect.Oracle9Dialect
          15         </attribute> 
          16         <attribute name="SessionFactoryName">
          17              java:/hibernate/SessionFactory
          18         </attribute> 
          19         <attribute name="ShowSqlEnabled">
          20                false
          21         </attribute>  
          22         <attribute name="ScanForMappingsEnabled">
          23                 true
          24         </attribute> 
          25         <attribute name="CacheProviderClass">
          26                 org.hibernate.cache.HashtableCacheProvider
          27         </attribute> 
          28      </mbean>   
          29 </server>
          30 

          將以上項目以dataInterface.har為名稱Deploy到Jboss,啟動Jboss后,就可以通過JNDI名為java:/hibernate/SessionFactory的服務來取得SessionFactory。
          通過Spring來取得該SessionFactory可以在ApplicationContext.xml中這樣寫
          1 <bean id="sessionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
          2     <property name="jndiName">           
          3        <
          value>java:/hibernate/SessionFactory</value>
          4     </property>
          5 </bean>
          其他的就和你平常寫法一樣了。o(∩_∩)o...

          注意的是:你項目中hibernate3.jar包不能包含在項目的Classpath中,否則會出現(xiàn)hibernate not bound的異常。





          Luke Skywalker in BlogJava

           

          posted on 2007-09-18 14:39 行者吳江 閱讀(2036) 評論(1)  編輯  收藏

          FeedBack:
          # re: 整合Jboss和Hibernate[未登錄]
          2010-12-24 13:48 |
          最后一句話好值錢!  回復  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          <2007年9月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          常用鏈接

          留言簿(1)

          隨筆分類(2)

          隨筆檔案(3)

          文章分類(1)

          文章檔案(1)

          收藏夾(3)

          Java

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 永川市| 正蓝旗| 资源县| 饶阳县| 乌拉特中旗| 光山县| 濉溪县| 土默特左旗| 泰兴市| 洱源县| 太谷县| 遂川县| 四川省| 尚义县| 高密市| 夏邑县| 汕头市| 桃江县| 绵阳市| 龙陵县| 时尚| 天祝| 元谋县| 兴义市| 绵阳市| 乐陵市| 九江市| 临猗县| 兴仁县| 德清县| 瑞丽市| 于都县| 青河县| 高密市| 西安市| 余姚市| 许昌县| 碌曲县| 福安市| 平果县| 南华县|