Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] committing / rollback question + entitymanager

Hi James,

No - no transaction controller configured. We're running Tomcat6 and
Oracle database 10.1.0.4.2 on Linux.

On a different note:
We're using the JPA's underlying JDBC connection to insert data into
another schema for which we've been given grants.

-J.

On Mon, 2008-06-09 at 06:13 -0700, James Sutherland wrote:
> Your config looks correct.
> 
> Are you setting a server platform (target-server) or transaction controller
> in EclipseLink?
> 
> What server are you running on?
> 
> 
> 
> Leon Derks-2 wrote:
> > 
> > Hello
> > 
> > I use a datasource.
> > 
> > Here are pieces of my persistence.xml:
> > 
> > <persistence-unit name="application-web"
> > transaction-type="RESOURCE_LOCAL">
> > <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
> > <non-jta-data-source>java:comp/env/jdbc/myDS</non-jta-data-source>
> > <property name="eclipselink.target-database" 
> > value="org.eclipse.persistence.platform.database.oracle.Oracle10Platform"
> > />
> > 
> > Here is my datasource definition in the tomcat context.xml
> > <Resource name="jdbc/myDS" auth="Container"
> >         type="oracle.jdbc.pool.OracleDataSource"
> >         driverClassName="oracle.jdbc.driver.OracleDriver"
> >         factory="oracle.jdbc.pool.OracleDataSourceFactory"
> >         url="jdbc:oracle:thin:@//localhost:1521/XE" user="test" 
> > password="test"
> >         connectionCachingEnabled="true" connectionCacheName="AppCache"
> >         connectionCacheProperties="{MaxStatementsLimit=40, MinLimit=0, 
> > InitialLimit=0,
> >             ValidateConnection=true, ConnectionWaitTimeout=10, 
> > MaxLimit=20}" />
> > 
> > web.xml:
> >  <resource-ref>
> >         <description>Resource reference to the application 
> > Datasource</description>
> >         <res-ref-name>jdbc/myDS</res-ref-name>
> >         <res-type>javax.sql.DataSource</res-type>
> >         <res-auth>Container</res-auth>
> >     </resource-ref>
> > 
> > Is there something wrong with this configuration?
> > 
> > Leon
> > 
> > James Sutherland wrote:
> >> My guess would be that you have configured EclipseLink with a JTA
> >> DataSource,
> >> but the DataSource that you are using is not JTA.
> >>
> >> Otherwise something very odd is occurring.   Perhaps include your
> >> persistence.xml, and enable logging on finest to see when your
> >> transaction
> >> is begun/committed, it seems your connection is somehow being left in
> >> auto-commit mode, or perhaps your database does not support transactions.
> >>
> >>
> >>
> >> Leon Derks-2 wrote:
> >>   
> >>> Hello
> >>>
> >>> I have a problem with the rollback of my transaction. For some reason 
> >>> the entities are saved in the db while the transaction has not
> >>> committed.
> >>>
> >>> These are the steps:
> >>>
> >>> try{
> >>>     logger.debug(" Starting a transaction");
> >>>     entityManager.getTransaction().begin();
> >>>             //here do some entityManager.persist(entities);
> >>>            //then throw a runtime exception to fake an exception.
> >>>      logger.debug("Committing the transaction");
> >>>      entityManager.getTransaction().commit();
> >>> catch(Exception e) {
> >>>     logger.error(e);
> >>> }
> >>> finally {
> >>>      if (entityManager != null && 
> >>> entityManager.getTransaction().isActive()) {
> >>>                 logger.debug("Rolling back the transaction");
> >>>                 entityManager.getTransaction().rollback();
> >>> }
> >>>
> >>> This is my logging info:
> >>> Starting a transaction
> >>>         exception stacktrace...........
> >>> Rolling back the transaction
> >>>
> >>> As you can see the transaction is not committed but rolled back. However 
> >>> there are entities in my db.
> >>>
> >>> How is this possible?
> >>> Leon
> > 
> 
> 
> -----
> ---
> http://wiki.eclipse.org/User:James.sutherland.oracle.com James Sutherland 
> http://www.eclipse.org/eclipselink/
>  EclipseLink ,  http://www.oracle.com/technology/products/ias/toplink/
> TopLink 
> Wiki:  http://wiki.eclipse.org/EclipseLink EclipseLink , 
> http://wiki.oracle.com/page/TopLink TopLink 
> Forums:  http://forums.oracle.com/forums/forum.jspa?forumID=48 TopLink , 
> http://www.nabble.com/EclipseLink-f26430.html EclipseLink 
> Book:  http://en.wikibooks.org/wiki/Java_Persistence Java Persistence 



Back to the top