用户操作
[留言]  [发消息]  [加为好友] 
订阅我的博客
XML聚合    FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
rgbwoo的公告
<a href="http://www3.clustrmaps.com/counter/maps.php?url=http://blog.csdn.net/rgbwoo" id="clustrMapsLink"><img src="http://www3.clustrmaps.com/counter/index2.php?url=http://blog.csdn.net/rgbwoo" style="border:0px;" alt="Locations of visitors to this page" title="Locations of visitors to this page" id="clustrMapsImg" onError="this.onError=null; this.src='http://www2.clustrmaps.com/images/clustrmaps-back-soon.jpg'; document.getElementById('clustrMapsLink').href='http://www2.clustrmaps.com'" /> </a><br> <img src="http://services.nexodyne.com/email/icon/77Qq94Sk/OYPjkto%3D/R01haWw%3D/0/image.png"/><br> <img src="http://services.nexodyne.com/email/icon/d%2BhIE9wNEA%3D%3D/ynF1NV8%3D/SG90bWFpbA%3D%3D/0/image.png"/><br> <img src="http://services.nexodyne.com/email/customicon/UFrGeA2U17613wXDswQ%3D/EjcmNuM%3D/000000/bfbfff/000000/1/image.png"/>
文章分类
struts链接
StrutsTest使用简明手册
论坛
Hibernate中文论坛
Spring中文论坛
相关网站
Hibernate
Spring
存档

原创  整合Jboss和Hibernate 收藏

原来的项目中包含了Hibernate的应用,最近,另外一个项目也要引用这个Hibernate的应用,因此决定将Hibernate应用独立出来,作为一个MBean部署到JBoss中,不同的项目通过JNDI来访问。

先说说我的开发环境
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项目,目录结构如图一。
在根目录建立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中,否则会出现hibernate not bound的异常。
 

发表于 @ 2007年10月17日 09:28:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:SVN Command | 新一篇:使用Spring Framework发送HTML格式邮件

  • 发表评论
  • 评论内容:
  •  
Copyright © rgbwoo
Powered by CSDN Blog