請教!jboss是否支援servlet中的分散式事務?
最近用了jboss 4.0.3sp1+jbossTS 4.2做伺服器,打算利用jboss的分散式事務管理器,遇到了不小的麻煩。
我用的是struts結構,web容器是jboss自帶的tomcat5
資料來源配置 szxmgl-xa-ds.xml,szjdcdb-xa-ds.xml是從jboss的jca目錄中複製修改的,
我用的是informix資料庫,JDBC是Type-4
配置的資料來源在不使用JTA時沒有問題的,用到JTA時程式就會一直執行下去,並且鎖表,不過沒有報錯。具體程式碼如下,請指點
String ls_sql=null;
Context ctx=null;
UserTransaction ut=null;
Connection conn=null;
Connection conn1=null;
try{
ctx = new InitialContext();
ut=(UserTransaction)ctx.lookup("java:/comp/UserTransaction");
ut.begin();
DataSource ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/szjdcdb");
ls_sql=" update y_user set username='yzs' where usercode='001'";
conn=ds.getConnection();
Statement stmt=conn.createStatement();
stmt.execute(ls_sql);
stmt.close();
DataSource ds1 = (DataSource) ctx.lookup("java:/comp/env/jdbc/szxmgl");
ls_sql=" update y_user set username='yzs' where usercode='001'";
conn1=ds.getConnection();
Statement stmt1=conn.createStatement();
stmt1.execute(ls_sql);
stmt1.close();
request.setAttribute("sql","ok");
ut.commit();
}catch(Exception e){
ut.rollback();
request.setAttribute("error",e.toString());
request.setAttribute("sql",ls_sql);
return mapping.findForward("failed");
}finally{
conn.close();
conn1.close();
}
我用的是struts結構,web容器是jboss自帶的tomcat5
資料來源配置 szxmgl-xa-ds.xml,szjdcdb-xa-ds.xml是從jboss的jca目錄中複製修改的,
我用的是informix資料庫,JDBC是Type-4
配置的資料來源在不使用JTA時沒有問題的,用到JTA時程式就會一直執行下去,並且鎖表,不過沒有報錯。具體程式碼如下,請指點
String ls_sql=null;
Context ctx=null;
UserTransaction ut=null;
Connection conn=null;
Connection conn1=null;
try{
ctx = new InitialContext();
ut=(UserTransaction)ctx.lookup("java:/comp/UserTransaction");
ut.begin();
DataSource ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/szjdcdb");
ls_sql=" update y_user set username='yzs' where usercode='001'";
conn=ds.getConnection();
Statement stmt=conn.createStatement();
stmt.execute(ls_sql);
stmt.close();
DataSource ds1 = (DataSource) ctx.lookup("java:/comp/env/jdbc/szxmgl");
ls_sql=" update y_user set username='yzs' where usercode='001'";
conn1=ds.getConnection();
Statement stmt1=conn.createStatement();
stmt1.execute(ls_sql);
stmt1.close();
request.setAttribute("sql","ok");
ut.commit();
}catch(Exception e){
ut.rollback();
request.setAttribute("error",e.toString());
request.setAttribute("sql",ls_sql);
return mapping.findForward("failed");
}finally{
conn.close();
conn1.close();
}
相關文章
- 分散式事務(一)—分散式事務的概念分散式
- 比較微服務中的分散式事務模式微服務分散式模式
- 事務使用中如何避免誤用分散式事務分散式
- 分散式事務(3)---RocketMQ實現分散式事務原理分散式MQ
- 分散式事務和分散式hash分散式
- 分散式系統中的事務問題分散式
- 分散式事務(4)---RocketMQ實現分散式事務專案分散式MQ
- 分散式事務 TCC-Transaction 原始碼分析 —— Dubbo 支援分散式原始碼
- 理解分散式事務分散式
- 分散式事務概述分散式
- 聊聊分散式事務分散式
- seata 分散式事務分散式
- 本地事務和分散式事務的區別分散式
- 分散式系統(三)——分散式事務分散式
- 分散式事務~從seata例項來學習分散式事務分散式
- 基於可靠訊息方案的分散式事務(二):Java中的事務分散式Java
- DTM:Golang中微服務架構的分散式事務框架Golang微服務架構分散式框架
- 分散式事務框架dtm1.3.1釋出,新增postgres支援分散式框架
- 分散式系列七: 分散式事務理論分散式
- 分散式事務之Spring事務與JMS事務(二)分散式Spring
- 分散式事務介紹分散式
- 分散式事務實戰分散式
- 分散式事務總結分散式
- 分散式事務Saga模式分散式模式
- SpringCloud(六)分散式事務SpringGCCloud分散式
- 淺談ORACLE的分散式事務Oracle分散式
- 分散式事務之Seata的AT模型分散式模型
- 關於分散式事務的理解分散式
- 避不開的分散式事務分散式
- MySQL 中基於 XA 實現的分散式事務MySql分散式
- 分散式事務框架dtm1.4.1釋出,支援高階SAGA分散式框架
- 分散式事務利器——RocketMQ事務訊息的啟示分散式MQ
- PHP 微服務之 [分散式事務]PHP微服務分散式
- PHP 微服務之【分散式事務】PHP微服務分散式
- 微服務架構中的分散式事務全面詳解 -DZone微服務微服務架構分散式
- 搞懂分散式技術19:使用RocketMQ事務訊息解決分散式事務分散式MQ
- 分散式事務(2)---強一致性分散式事務解決方案分散式
- 使用Kafka Streams和Spring Boot微服務中的分散式事務 - PiotrKafkaSpring Boot微服務分散式
- Laravel 分散式事務處理Laravel分散式