Hi, Leandro Augusto de Almeida wrote:
Hi Armin,
I put the broker.beginTransaction() and broker.commitTransaction() only for test, because I was getting the same exception on broker.close() and now on broker.commit() (because commit closes the con...). Using the old datasource (not XA) this works fine. The bean that calls this method is configured bm-tx.
do you use this code in a EJB or only in a servlet?
do you set ConnectionFactoryManagedImpl in OJB.properties file as ConnectionFactory and JTATransactionManagerClass for use within Websphere?
regards, Armin
PersistenceBroker broker = null;
try { if (log.isInfoEnabled()) { log.info("Iniciando DAO - " + this.className + ".findAllParametro()"); }
broker = PersistenceBrokerFactory.defaultPersistenceBroker();
broker.beginTransaction();
QueryByCriteria query = new QueryByCriteria(ParametroVO.class, null); Vector parametros = (Vector) broker.getCollectionByQuery(query);
if (log.isInfoEnabled()) { log.info("Finalizando DAO - " + this.className + ".findAllParametro()"); }
broker.commitTransaction();
return parametros; } catch (PBFactoryException pbfe) { ResourceException re = new ResourceException("Erro ao procurar par�metros: erro ao buscar o PersistenceBroker.", pbfe); ..... .... finally {broker.close();}
--- Mensagem Original ---
Hi Leandro,
could you post a snip of the source code?
regards, Armin
Leandro Augusto de Almeida wrote:
Hi Armin,
I was using a DataSource (in Websphere) from
the Jdbc Provider oracle.jdbc.pool.OracleConnectionPoolDataSource and using the PB-tx-demarcation (broker.beginTransaction().....). When I changed the datasource to oracle.jdbc.xa.client.OracleXADataSource the application shows this exception when commit is called :
46563 ERROR
accesslayer.ConnectionFactoryAbstractImpl - Closing connection failed
com.ibm.ejs.cm.exception.WorkRolledbackException: Outstanding work on this connection which was not comitted or rolledback by the user has been rolledback.
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.commitTransaction(DelegatingPersistenceBroker.java:145)
at
br.com.equifax.dataqa.procir.persistencia.dao.OjbParametroDAO.findAllParametro(OjbParametroDAO.java:258)
Do you know what I am doing wrong ?
--- Mensagem Original ---
Hi Leandro,
Leandro Augusto de Almeida wrote:
Is it possible to use PB-tx-demarcation on a
session bean with bm-tx and getting a
connection
from a DataSource from my AppServer? Is it
right? What is the correct connection factory
to
use?
Or I must use the user (JTA) tx-demarcation
with the ConnectionFactoryManagedImpl and
choose
between cm-tx or bm-tx?
yep, in managed environments you have always
to
use JTA (except you don't want to use distributed tx at all and
set
tx-demarcation to 'none'). All settings described here
http://db.apache.org/ojb/deployment.html#Deployment%20in%20EJB%20based%20applications
regards, Armin
Thanks,
Leandro.
---------------------------------------------------------------------
To unsubscribe, e-mail:
[EMAIL PROTECTED]
For additional commands, e-mail:
[EMAIL PROTECTED]
---------------------------------------------------------------------
---------------------------------------------------------------------To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail:
[EMAIL PROTECTED]
For additional commands, e-mail:
[EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
