Problem with transaction in Jboss (programatic model)
michal_szymanski Jun 10, 2010 8:42 AMI try to use programatic model transaction for Axis2 Webservice, for this we deployed Axis2 and our services on Jboss 5.1. I created XA datasource and without 'begin' all transaction are autocommited and it works ok. But when I put
UserTransaction.userTransaction().begin(); I've got following error:
14:32:57,250 INFO [STDOUT] [ERROR] loader constraint violation: loader (instance of org/apache/axis2/deployment/DeploymentCl
assLoader) previously initiated loading for a different type with name "javax/transaction/UserTransaction"
java.lang.reflect.InvocationTargetException
Should I switch off local transaction or maybe there is other error?
Below part of my program.
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import javax.transaction.HeuristicMixedException;
import javax.transaction.HeuristicRollbackException;
import javax.transaction.NotSupportedException;
import javax.transaction.RollbackException;
import javax.transaction.SystemException;
import org.apache.log4j.Logger;
import com.arjuna.ats.jta.UserTransaction;
public CreateServiceResponse createService(String token, String serviceName, String serviceType, String consolePassword) {
InitialContext dic;
try {
dic = new InitialContext();
DataSource dsUms = (DataSource) dic.lookup("java:jdbc/UMSDbDS");
Connection conUms = null;
conUms = dsUms.getConnection();
try {
UserTransaction.userTransaction().begin(); /* EXCEPTION HAPPENS HERE !! */
} catch (NotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Statement stmtUms = conUms.createStatement();;
String sql = "update dict.cfg_dictionary set description='DUPAUMS_1'";
stmtUms.executeUpdate(sql);
Michal Szymanski