Title: RE: [JBoss-user] EJB testing Framework
Hello All,
 
Oracle XA used to work with my previous JBoss3.2.0Beta2. But does not work on the latest JBoss3.2.0Beta version.
 
I am getting the following error. Any expert comments/suggestions.
 
Thanks in advance.
 
With Best Wishes for X-Mas and New Year
MS
 
15:32:16,964 WARN  [TransactionImpl] XAException: tx=TransactionImpl:XidImpl [Fo
rmatId=257, GlobalId=manoj//15, BranchQual=] errorCode=XAER_RMERR
oracle.jdbc.xa.OracleXAException
        at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:483)
 
        at oracle.jdbc.xa.client.OracleXAResource.end(OracleXAResource.java:285)
 
        at org.jboss.tm.TransactionImpl.endResource(TransactionImpl.java:1056)
        at org.jboss.tm.TransactionImpl.endResources(TransactionImpl.java:1118)
        at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:332)
        at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCM
T.java:308)
        at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
torCMT.java:194)
        at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.ja
va:58)
        at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityIntercep
tor.java:105)
        at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:1
31)
        at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyF
actoryFinderInterceptor.java:125)
        at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:475)
        at org.jboss.ejb.Container.invoke(Container.java:692)
        at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1023)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
        at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:
325)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
        at sun.rmi.transport.Transport$1.run(Transport.java:148)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
60)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:701)
        at java.lang.Thread.run(Thread.java:536)
15:32:17,057 WARN  [TransactionImpl] XAException: tx=TransactionImpl:XidImpl [Fo
rmatId=257, GlobalId=manoj//15, BranchQual=] errorCode=XAER_RMERR
oracle.jdbc.xa.OracleXAException
        at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:483)
 
        at oracle.jdbc.xa.client.OracleXAResource.end(OracleXAResource.java:285)
 
        at org.jboss.tm.TransactionImpl.endResource(TransactionImpl.java:1056)
        at org.jboss.tm.TransactionImpl.endResources(TransactionImpl.java:1118)
        at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:332)
        at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCM
T.java:308)
        at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
torCMT.java:194)
        at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.ja
va:58)
        at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityIntercep
tor.java:105)
        at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:1
31)
        at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyF
actoryFinderInterceptor.java:125)
        at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:475)
        at org.jboss.ejb.Container.invoke(Container.java:692)
        at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1023)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
        at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:
325)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
        at sun.rmi.transport.Transport$1.run(Transport.java:148)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
60)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:701)
        at java.lang.Thread.run(Thread.java:536)
15:32:17,104 ERROR [LogInterceptor] TransactionRolledbackException:
javax.transaction.TransactionRolledbackException: Unable to commit, tx=Transacti
onImpl:XidImpl [FormatId=257, GlobalId=manoj//15, BranchQual=] status=STATUS_NO_
TRANSACTION
        at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCM
T.java:315)
        at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
torCMT.java:194)
        at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.ja
va:58)
        at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityIntercep
tor.java:105)
        at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:1
31)
        at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyF
actoryFinderInterceptor.java:125)
        at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:475)
        at org.jboss.ejb.Container.invoke(Container.java:692)
        at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1023)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
        at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:
325)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
        at sun.rmi.transport.Transport$1.run(Transport.java:148)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
60)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:701)
        at java.lang.Thread.run(Thread.java:536)
 
 
oracle-xa-service.xml file contents:

<?xml version="1.0" encoding="UTF-8"?>

<!-- ===================================================================== -->

<!-- -->

<!-- JBoss Server Configuration -->

<!-- -->

<!-- ===================================================================== -->

<server>

<mbean code="org.jboss.resource.connectionmanager.XATxConnectionManager"

name="jboss.jca:service=XATxCM,name=XAOracleDS">

<attribute name="JndiName">XAOracleDS</attribute>

<attribute name="TrackConnectionByTx">true</attribute>

<depends optional-attribute-name="ManagedConnectionFactoryName">

<!--embedded mbean-->

<mbean code="org.jboss.resource.connectionmanager.RARDeployment"

name="jboss.jca:service=XATxDS,name=XAOracleDS">

<attribute name="ManagedConnectionFactoryClass">org.jboss.resource.adapter.jdbc.xa.oracle.XAOracleManagedConnectionFactory</attribute>

<!--real attributes-->

<attribute name="ManagedConnectionFactoryProperties">

<properties>

<config-property name="XADataSourceProperties"

type="java.lang.String">URL="">

<config-property name="XADataSourceClass"

type="java.lang.String">oracle.jdbc.xa.client.OracleXADataSource</config-property>

<!--set these only if you want only default logins, not through JAAS -->

<config-property name="UserName"

type="java.lang.String">mstest</config-property>

<config-property name="Password"

type="java.lang.String">mstest</config-property>

<!--

Do not try to set transaction isolation level here or you'll get

java.sql.SQLException: ORA-01453: SET TRANSACTION must be first statement of transaction

Read committed is a default isolation level for Oracle, so there

is not real need to set it here. I'll take a look into it later ...maybe.

<config-property name="TransactionIsolation"

type="java.lang.String">TRANSACTION_READ_COMMITTED</config-property>

-->

</properties>

</attribute>

</mbean>

</depends>

<depends optional-attribute-name="ManagedConnectionPool">

<!--embedded mbean-->

<mbean code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool"

name="jboss.jca:service=XATxPool,name=XAOracleDS">

<attribute name="MinSize">2</attribute>

<attribute name="MaxSize">10</attribute>

<attribute name="BlockingTimeoutMillis">5000</attribute>

<attribute name="IdleTimeoutMinutes">15</attribute>

<!--criteria indicates if Subject (from security domain) or app supplied

parameters (such as from getConnection(user, pw)) are used to distinguish

connections in the pool. Choices are

ByContainerAndApplication (use both),

ByContainer (use Subject),

ByApplication (use app supplied params only),

ByNothing (all connections are equivalent, usually if adapter supports

reauthentication)-->

<attribute name="Criteria">ByContainer</attribute>

</mbean>

</depends>

<depends optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager</depends>

<!-- Include a login module configuration named InformixXaDbRealm.

Update your login-conf.xml, here is an example for a

ConfiguredIdentityLoginModule:

<application-policy name = "InformixXaDbRealm">

<authentication>

<login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required">

<module-option name = "principal">yourprincipal</module-option>

<module-option name = "userName">yourusername</module-option>

<module-option name = "password">yourpassword</module-option>

<module-option name = "managedConnectionFactoryName">jboss.jca:service=XATxCM,name=InformixXaDS</module-option>

</login-module>

</authentication>

</application-policy>

NOTE: the application-policy name attribute must match SecurityDomainJndiName, and the

module-option name = "managedConnectionFactoryName"

must match the object name of the ConnectionManager you are configuring here.

-->

<!--uncomment out this line if you are using the InformixXaDbRealm above

<attribute name="SecurityDomainJndiName">InformixXaDbRealm</attribute>

-->

<depends optional-attribute-name="JaasSecurityManagerService">jboss.security:service=JaasSecurityManager</depends>

<attribute name="TransactionManager">java:/TransactionManager</attribute>

</mbean>

</server>

 
 

Reply via email to