Ancoron Luciferis created SYNCOPE-606:
-----------------------------------------

             Summary: Cannot commit when autoCommit is enabled
                 Key: SYNCOPE-606
                 URL: https://issues.apache.org/jira/browse/SYNCOPE-606
             Project: Syncope
          Issue Type: Bug
          Components: core
    Affects Versions: 1.2.0
         Environment: Ubuntu 14.04 LTS
PostgreSQL 9.3.5
PostgreSQL JDBC driver 9.2-1002
            Reporter: Ancoron Luciferis
             Fix For: 1.2.1, 1.3.0


After setting up the system according to the documentation for Debian-based 
systems, setting up an LDAP resource and creating a synchronization task, 
whenever I try to access the Tasks page, I get the following exception in the 
{{core-rest.log}} file:
{noformat}
12:36:10.533 ERROR 
org.apache.syncope.core.rest.utils.RestServiceExceptionMapper - Exception 
thrown by REST method: Cannot commit when autoCommit is enabled.; nested 
exception is <openjpa-2.3.0-r422266:1540826 fatal general error> 
org.apache.openjpa.persistence.PersistenceException: Cannot commit when 
autoCommit is enabled.
org.springframework.orm.jpa.JpaSystemException: Cannot commit when autoCommit 
is enabled.; nested exception is <openjpa-2.3.0-r422266:1540826 fatal general 
error> org.apache.openjpa.persistence.PersistenceException: Cannot commit when 
autoCommit is enabled.
        at 
org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:418)
 ~[spring-orm-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:122)
 ~[spring-orm-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:519)
 ~[spring-orm-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:757)
 ~[spring-tx-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:726)
 ~[spring-tx-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:478)
 ~[spring-tx-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:272)
 ~[spring-tx-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:95)
 ~[spring-tx-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:64)
 ~[spring-security-core-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
 ~[spring-aop-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:644)
 ~[spring-aop-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.apache.syncope.core.rest.controller.TaskController$$EnhancerBySpringCGLIB$$907506fd.list(<generated>)
 ~[spring-core-4.0.7.RELEASE.jar:?]
        at 
org.apache.syncope.core.services.TaskServiceImpl.list(TaskServiceImpl.java:121) 
~[TaskServiceImpl.class:?]
        at 
org.apache.syncope.core.services.TaskServiceImpl.list(TaskServiceImpl.java:112) 
~[TaskServiceImpl.class:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.7.0_65]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
~[?:1.7.0_65]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.7.0_65]
        at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_65]
        at 
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:181)
 ~[cxf-core-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:97) 
~[cxf-core-3.0.1.jar:3.0.1]
        at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:200) 
~[cxf-rt-frontend-jaxrs-3.0.1.jar:3.0.1]
        at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:99) 
~[cxf-rt-frontend-jaxrs-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
 ~[cxf-core-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
 ~[cxf-core-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
 ~[cxf-core-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
 ~[cxf-core-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:243)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:197)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:149)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:211)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:620) 
~[servlet-api-3.0.jar:?]
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
 ~[cxf-rt-transports-http-3.0.1.jar:3.0.1]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
 ~[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
        at 
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
 ~[spring-web-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
 ~[spring-web-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
 ~[spring-web-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) 
~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) 
~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) 
~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
 ~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) 
~[tomcat-catalina-7.0.52.jar:7.0.52]
        at 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
 ~[tomcat-coyote-7.0.52.jar:7.0.52]
        at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
 ~[tomcat-coyote-7.0.52.jar:7.0.52]
        at 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
 ~[tomcat-coyote-7.0.52.jar:7.0.52]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
[?:1.7.0_65]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
[?:1.7.0_65]
        at java.lang.Thread.run(Thread.java:745) [?:1.7.0_65]
Caused by: org.apache.openjpa.persistence.PersistenceException: Cannot commit 
when autoCommit is enabled.
        at 
org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4974) 
~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4934)
 ~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:134) 
~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:108) 
~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:60) 
~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.commit(JDBCStoreManager.java:204)
 ~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingStoreManager.commit(DelegatingStoreManager.java:95)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.datacache.DataCacheStoreManager.commit(DataCacheStoreManager.java:88)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingStoreManager.commit(DelegatingStoreManager.java:95)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.endStoreManagerTransaction(BrokerImpl.java:1485)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.endTransaction(BrokerImpl.java:2384) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.afterCompletion(BrokerImpl.java:2043) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:94)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1528) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:933) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:570)
 ~[openjpa-persistence-2.3.0.jar:2.3.0]
        at 
org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:515)
 ~[spring-orm-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        ... 82 more
Caused by: org.postgresql.util.PSQLException: Cannot commit when autoCommit is 
enabled.
        at 
org.postgresql.jdbc2.AbstractJdbc2Connection.commit(AbstractJdbc2Connection.java:813)
 ~[postgresql-jdbc4-9.2.jar:?]
        at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source) ~[?:?]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.7.0_65]
        at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_65]
        at 
org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:71)
 ~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:153)
 ~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:41) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) 
~[tomcat-jdbc-7.0.52.jar:?]
        at 
org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:80)
 ~[tomcat-jdbc-7.0.52.jar:?]
        at com.sun.proxy.$Proxy16.commit(Unknown Source) ~[?:?]
        at 
org.apache.openjpa.lib.jdbc.DelegatingConnection.commit(DelegatingConnection.java:175)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection.commit(LoggingConnectionDecorator.java:341)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.lib.jdbc.DelegatingConnection.commit(DelegatingConnection.java:175)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection.commit(ConfiguringConnectionDecorator.java:124)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.lib.jdbc.DelegatingConnection.commit(DelegatingConnection.java:175)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.lib.jdbc.DelegatingConnection.commit(DelegatingConnection.java:175)
 ~[openjpa-lib-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.commit(JDBCStoreManager.java:198)
 ~[openjpa-jdbc-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingStoreManager.commit(DelegatingStoreManager.java:95)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.datacache.DataCacheStoreManager.commit(DataCacheStoreManager.java:88)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingStoreManager.commit(DelegatingStoreManager.java:95)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.endStoreManagerTransaction(BrokerImpl.java:1485)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.endTransaction(BrokerImpl.java:2384) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.BrokerImpl.afterCompletion(BrokerImpl.java:2043) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:94)
 ~[openjpa-kernel-2.3.0.jar:2.3.0]
        at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1528) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:933) 
~[openjpa-kernel-2.3.0.jar:2.3.0]
        at 
org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:570)
 ~[openjpa-persistence-2.3.0.jar:2.3.0]
        at 
org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:515)
 ~[spring-orm-4.0.7.RELEASE.jar:4.0.7.RELEASE]
        ... 82 more
{noformat}

\\
According to several discussions around OpenJPA and auto-commit behavior, it 
looks to me like for Syncope, OpenJPA treats the JDBC connection factory as 
being non-managed, otherwise, it would have disabled auto-commit as you can see 
in 
[org.apache.openjpa.jdbc.schema.DataSourceFactory|http://svn.apache.org/viewvc/openjpa/tags/2.3.0/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/schema/DataSourceFactory.java?view=markup],
 lines 214 or 216.

As a workaround, I added the following OpenJPA configuration property to 
{{/var/lib/tomcat7/webapps/syncope/WEB-INF/classes/persistenceContextEMFactory.xml}}:
{code:xml}
<entry key="openjpa.ConnectionFactoryMode" value="managed"/>
{code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to