nychen000 2010-04-07
1 jotm jars into tomcat6/lib
2 create a file named "carol.properties" in tomcat6/lib with following content:
carol.protocols=jrmp carol.start.jndi=false carol.start.ns=false carol.jvm.rmi.local.call=false carol.jndi.java.naming.factory.url.pkgs=org.apache.naming
3 modify tomcat's server.xml:
<Context docBase="workflow" path="/workflow" reloadable="true"> <Resource name="oracle/call66" auth="Container" type="javax.sql.DataSource" url="jdbc:oracle:thin:@IP地址:1521:数据库名" driverClassName="oracle.jdbc.driver.OracleDriver" username="erpsdb" password="erps#66*call" maxActive="50" maxWait="10000" factory="org.objectweb.jndi.DataSourceFactory" poolPreparedStatements="true" maxOpenPreparedStatements="100" validationQuery="SELECT SYSDATE FROM DUAL" /> </Context>
4 modify spring config:
<bean id="jotm" class="org.springframework.transaction.jta.JotmFactoryBean"/> <bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager"> <property name="userTransaction" ref="jotm" /> </bean> <bean id="MyDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/oracle/call66" /> </bean>
5 modify web.xml config:
<resource-ref> <description>DB Connection</description> <res-ref-name>oracle/call66</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
另:http://jotm.ow2.org/xwiki/bin/view/Main/WebHome
http://docs.codehaus.org/display/BTM/Spring+Framework13
注:jtom支持分布式事务,多数据源事务,但是在网络断开或者db重起的情况下,不会自动重连。请看相关讨论http://old.nabble.com/Connection-Pool-Recovery-in-Bitronix---migrating-from-JOTM-td22953931.html