在tomcat5.0中配置JOTM

tomcat不支持事务,如果应用使用了容器事务,就不能使用tomcat了,这个问题可以通过JOTM插件解决。

 今天试了一下,果然简单又好用,共分3步:

1、

下载JOTM,将以下文件添加到$TOMCAT_HOME/common/lib/:
jotm.jar
jotm_jrmp_stubs.jar
jotm_iiop_stubs.jar
ow_carol.jar
jta-spec1_0_1.jar
jts1_0.jar
objectweb-datasource.jar
xapool.jar
howl.jar
connector-1_5.jar

2、

新建一个carol.properties文件,置于$TOMCAT_HOME/common/classes/,文件内容如下:

carol.properties

# JNDI (Protocol Invocation)
carol.protocols=jrmp

# Local RMI Invocation
carol.jvm.rmi.local.call=true

# do not use CAROL JNDI wrapper
carol.start.jndi=false

# do not start a name server
carol.start.ns=false

# Naming Factory
carol.jndi.java.naming.factory.url.pkgs=org.apache.naming

3、

在数据源的配置文件中增加如下

  <Resource name="UserTransaction" auth="Container"
    type="javax.transaction.UserTransaction"/>
  <ResourceParams name="UserTransaction">
    <parameter>
      <name>factory</name>
      <value>org.objectweb.jotm.UserTransactionFactory</value>
    </parameter>
    <parameter>
      <name>jotm.timeout</name>
      <value>60</value>
    </parameter>
  </ResourceParams>

数据源的配置文件在\conf\Catalina目录下

这样就OK了,很方便。

此方法只在5.0中可以,5.5及以上版本可能有所差别。

你可能感兴趣的:(apache,jvm,tomcat)