Joinwork首页 Joinwork dev2dev
Joinwork用户论坛
 
 常见问题与解答 (FAQ)常见问题与解答 (FAQ)   搜索搜索   成员列表成员列表   成员组成员组   注册注册 
 个人资料个人资料   登陆查看您的私人留言登陆查看您的私人留言   登陆登陆 

请问如何配置JTA?

 
发表新帖   回复帖子    Joinwork dev2dev 首页 -> 协同工作
阅读上一个主题 :: 阅读下一个主题  
作者 留言
jjsun007



注册时间: 2009-09-07
帖子: 36

帖子发表于: 2009-十二月-17 星期四, am11:44    发表主题: 请问如何配置JTA? 引用并回复

如题。能否给一个详细的关于JTA使用的例子?包括J2EE应用服务器(如Tomcat5.5.x+JDK1.5,或者JBOSS、websphere等)的JTA配置、Joinwork的配置、应用(如workdesk应用)的配置以及代码如何调用?最好能够提供在Tomcat5和WebSphere6上使用的例子?尽可能详细些。多谢
返回页首
阅览成员资料 (Profile) 发送私人留言 (PM)
joinwork



注册时间: 2005-01-15
帖子: 1055

帖子发表于: 2009-十二月-17 星期四, pm2:39    发表主题: 引用并回复

1、配置Joinwork数据库连接,使其支持JTA。
通过joinwork_console为数据连接指定UserTransaction并指定类型为JTA即可。
joinwork完整开发版的数据库配置例子如下:
代码:
<list>
  <database>
    <id>Direct</id>
    <type>direct</type>
    <datasource></datasource>
    <connection__url>jdbc:hsqldb:hsql://localhost:1701</connection__url>
    <driver__class>org.hsqldb.jdbcDriver</driver__class>
    <username>sa</username>
    <password></password>
    <dialect>HSQL</dialect>
    <transaction__type>JDBC</transaction__type>
    <jta__UserTransaction></jta__UserTransaction>
    <Appserver>JBoss</Appserver>
    <debug>true</debug>
  </database>
  <database>
    <id>HSQLDS</id>
    <type>datasource</type>
    <datasource>java:/DefaultDS</datasource>
    <connection__url></connection__url>
    <driver__class></driver__class>
    <username></username>
    <password></password>
    <dialect>HSQL</dialect>
    <transaction__type>JTA</transaction__type>
    <jta__UserTransaction>UserTransaction</jta__UserTransaction>
    <Appserver>JBoss</Appserver>
  </database>
</list>

上边第二个就是JTA数据库连接
<transaction__type>JTA</transaction__type>
<jta__UserTransaction>UserTransaction</jta__UserTransaction>


2、J2EE应用服务器的JTA配置你还是在网上查一下,不同服务器各不相同。
好像tomcat实现JTA还需要第三方包。
我们完整开发版使用JBoss而不使用 tomcat就是因为JBoss本身就支持JTA;

3、使用代码如下:
代码:

public void init() throws ServletException {
    UserTransaction utx = null;
    try {
        InitialContext jndiContext= new InitialContext();
        utx= (javax.transaction.UserTransaction)jndiContext.lookup("UserTransaction");
        utx.begin();
       .....
      your database execute code..
      call joinwork API
      ....

    utx.commit();
    } catch (Exception e) {
        if(utx!=null){
           utx.rollback();//此处异常代码省略
        }
    }
}
返回页首
阅览成员资料 (Profile) 发送私人留言 (PM) 发送电子邮件 MSN Messenger
从以前的帖子开始显示:   
发表新帖   回复帖子    Joinwork dev2dev 首页 -> 协同工作 论坛时间为 北京时间
1页/共1

 
转跳到:  
不能发布新主题
不能在这个论坛回复主题
不能在这个论坛编辑自己的帖子
不能在这个论坛删除自己的帖子
不能在这个论坛发表民意调查


Powered by phpBB © 2001, 2005 phpBB Group
phpBB 简体中文界面由 iCy-fLaME 更新翻译