读书人

jotm跨数据库事宜 spring + hibernate

发布时间: 2012-09-04 14:19:30 作者: rapoo

jotm跨数据库事务 spring + hibernate
jotm跨数据库 spring + hibernate

软件包
ow2-jotm-dist-2.1.9-bin.tar.gz
spring-framework-3.0.5.RELEASEhibernate-3.6.0.Final
hibernate-3.6.0.Final

spring和hibernate不再详述,讲讲jotm如何与spring集成
web开发中,使用hibernate的SessionFactory,而在SessionFactory中注入DataSource
DataSource需要支持事务,因此采用软件包ow2-jotm-dist-2.1.9-bin.tar.gz中的xapool.jar包来配置DataSource,放弃了org.springframework.jdbc.datasource.DriverManagerDataSource

配置jta事务管理器JtaTransactionManager
重点<property name="userTransaction" ref="jotm" />




数据源配置(DataSource)
重点<property name="transactionManager" ref="jotm" />


SessionFactory配置
重点<property name="dataSource" ref="dataSource1" />
重点<property name="dataSource" ref="dataSource2" />


附录
jotm必须的jar包
xapool.jarjotm-core.jarcarol.jarcarol-interceptors.jar



后记:
在使用spring的 进行跨数据库测试的时候没有问题,而在发布web的时候,启动始终都报异常javax.resource.spi.XATerminator找不到,查看类库的时候发现该类就在javaee.jar中,但发布的时候始终找不到。后来发现,这是由于在MyEclipse发布web的时候,设置项目->属性->Order and Export中没有将javaee.jar等jar包发布到web中,于是勾选该jar包,但测试仍然不能成功。
最后将javaee.jar包copy到tomcat是lib目录中,启动tomcat进行测试,一切正常。
暂时好不知道为什么设置了Order and Export也不能行的原因,只是知道在MyEclipse在打包发布的时候也不是完全可信的。切记。

读书人网 >其他数据库

热点推荐