BTM事务配置
请参考原贴:http://thinkdifferent.iteye.com/blog/1450433
Tomcat6上配置BTM
博客分类: practice
tomcatjava
)去http://docs.codehaus.org/display/BTM/Home上下载BTMzip包。
)解压缩包,并将如下几个jar包拷贝tomcat6的lib下:btm-2.1..jar,btm-tomcat55-lifecycle-2.1..jar,geronimo-jta_1.1_spec-1.1..jar,slf4j-api-1.6..jar,slf4j-jdk14-1.6..jar。
)拷贝对应数据的jdbc驱动包到tomcat6的lib下,则这边采用oracle11g作为后端测试的数据库,所以拷贝oracle jdk6. jdbc包ojdbc6.jar到lib下。
)进入tomcat6的bin目录下,编辑startup.bat,在
Java代码 收藏代码
set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"
下增加一行
Java代码 收藏代码
set "CATALINA_OPTS=-Dbtm.root=%CATALINA_HOME% -Dbitronix.tm.configuration=%CATALINA_HOME%\conf\btm-config.properties"
后,进行保存。
)进入tomcat6的conf目录,创建文件:btm-config.properties并填入内容:
Java代码 收藏代码
bitronix.tm.serverId=spring-btm
bitronix.tm.journal.disk.logPart1Filename=${btm.root}/work/btm1.tlog
bitronix.tm.journal.disk.logPart2Filename=${btm.root}/work/btm2.tlog
bitronix.tm.resource.configuration=${btm.root}/conf/resources.properties
;
在conf目录下创建定义数据源的properties文件:resources.properties。在其中写入:
Java代码 收藏代码
resource.ds1.className=oracle.jdbc.xa.client.OracleXADataSource
resource.ds1.uniqueName=jdbc/oracle
resource.ds1.minPoolSize=
resource.ds1.maxPoolSize=
resource.ds1.allowLocalTransactions=true
#resource.ds1.driverProperties.driverClassName=oracle.jdbc.driver.OracleDriver
resource.ds1.driverProperties.URL=jdbc:oracle:thin:@localhost::orcl
resource.ds1.driverProperties.user=scott
resource.ds1.driverProperties.password=Pass1234
。绑定的JNDI名称为:java:comp/env/jdbc/oracle。
)进入tomcat6的conf文件,编辑server.xml,在
Java代码 收藏代码
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
下增加一行:
Java代码 收藏代码
<Listener className="bitronix.tm.integration.tomcat55.BTMLifecycleListener" />
用于监控BTM的生命周期(在tomcat启动或者关闭时);在同一目录下,编辑context.xml文件,在
Java代码 收藏代码
<WatchedResource>WEB-INF/web.xml</WatchedResource>
下增加一行:
Java代码 收藏代码
<Transaction factory="bitronix.tm.BitronixUserTransactionObjectFactory" />
配置UserTransaction,对应的jndi名称为:java:comp/UserTransaction。在增加一行对上面配置的数据源的引用:
Java代码 收藏代码
<Resource name="jdbc/oracle" auth="Container" type="javax.sql.DataSource"
factory="bitronix.tm.resource.ResourceObjectFactory" uniqueName="jdbc/oracle" />
在配置BTM的时候,发现配置了BTM管理的的数据源后,发现在Eclipse中通过tomcat的plugin来启动tomcat时,找不到配置的数据源,但在增加如上一行配置后,就能够找到了。
最后,你就可以在项目中使用如上配置的数据源及BTM的事务管理器了。
BTM事务配置的更多相关文章
- Spring事务配置的五种方式(转载)
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...
- Spring事务配置的五种方式
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...
- 【荐】Spring事务配置的五种方式
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...
- spring事务配置详解
一.前言 好几天没有在对spring进行学习了,由于这几天在赶项目,没有什么时间闲下来继续学习,导致spring核心架构详解没有继续下去,在接下来的时间里面,会继续对spring的核心架构在继续进行学 ...
- Spring MVC 事务配置
Spring MVC事务配置 要了解事务配置的所有方法,请看一下<Spring事务配置的5种方法> 本文介绍两种配置方法: 一. XML,使用tx标签配置拦截器实现事务 一. ...
- Spring管理 hibernate 事务配置的五种方式
Spring配置文件中关于事务配置总是由三个组成部分,DataSource.TransactionManager和代理机制这三部分,无论是那种配置方法,一般变化的只是代理机制这块! 首先我创建了两个类 ...
- Sping中的事务配置
关于Spring的事务配置,主要的配置文件如下(使用了C3P0连接池): <?xml version="1.0" encoding="UTF-8"?> ...
- Spring事务配置
Spring中事务的配置学习: 1.心法 Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一 ...
- Spring事务配置的五种方式 -- 越往后需要Spring版本越高
第五种 基本零配置 个人感觉第四种也可以 Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式, ...
随机推荐
- mfc "缺少函数标题(是否是老式的形式表)"的总结
首先出现这种问题要定位到程序中出错的地方查看,如果没有问题就仔细看类的声明和定义.可能是对应类的后面没有加: 第二个原因是可能忘记了添加头文件 "stdafx",如果是这样可以加上 ...
- git源代码管理工具
git是一款源代码管理工具 是分布式版本管理工具 分布式管理必须先在本地提交然后才能提交到服务器: svn集中式版本管理工具 集中式版本管理工具离开服务器就做不了版本管理: 初始化仓库 1.用git初 ...
- 使用POI设置导出的EXCEL锁定指定的单元格
注:要锁定单元格需先为此表单设置保护密码,设置之后此表单默认为所有单元格锁定,可使用setLocked(false)为指定单元格设置不锁定. sheet.protectSheet("&quo ...
- 彻底明白IP地址——计算相关地址
知道ip地址和子网掩码后可以算出: 1. 网络地址 2. 广播地址 3. 地址范围 4. 本网有几台主机 例1:下面例子IP地址为192·168·100·5 子网掩码是255·255·255·0.算出 ...
- form表单post请求保护 隐藏秘钥
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- hdu 3695 10 福州 现场 F - Computer Virus on Planet Pandora 暴力 ac自动机 难度:1
F - Computer Virus on Planet Pandora Time Limit:2000MS Memory Limit:128000KB 64bit IO Format ...
- Portability Flaw Locale Dependent Comparison
Portability Flaw Locale Dependent Comparison [问题描述] 该问题涉及String的toUpperCase()方法.具体通过例子演示相关现象. public ...
- win10中jdk1.8环境配置完,重启之后配置失效
1.win10操作系统下重启电脑java环境变量失效 解决方式: 右击开始按钮,选择管理员方式的windows powershell,如下图: 在窗口中输入javac,一切正常,即使重启都不会有问题啦 ...
- azure 最佳实践 -- 保持冗余
保持冗余确保你的应用的部署体系是有冗余的,以避免单一节点失败的情况.一个弹性良好的系统可以灵活的绕过系统故障.找出应用中(请求执行)的关键路径.路径中的每个节点是否都有冗余?子系统失败时,系统能否有效 ...
- vue使用百度编辑器ueditor踩坑记录
一.使用 下载放入项目 main.js引入 import '../static/UE/ueditor.config.js'; import '../static/UE/ueditor.all.js'; ...