You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@syncope.apache.org by "Ancoron Luciferis (JIRA)" <ji...@apache.org> on 2014/11/18 12:16:33 UTC

[jira] [Commented] (SYNCOPE-606) Cannot commit when autoCommit is enabled

    [ https://issues.apache.org/jira/browse/SYNCOPE-606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14216069#comment-14216069 ] 

Ancoron Luciferis commented on SYNCOPE-606:
-------------------------------------------

D'OH!

My fault, I just enabled the datasource in Tomcat in file {{/etc/tomcat7/Catalina/localhost/syncope.xml}}. So, the datasource actually was managed by Tomcat (see stacktrace lines starting with {{org.apache.tomcat.jdbc.pool...}}), but it seemed to collide with the definition in Spring. At least after some time (I suspect idle-time here) I got the following exceptions almost everywhere: {{org.apache.openjpa.util.InvalidStateException: Could not perform automatic lookup of EJB container's javax.transaction.TransactionManager implementation. [...]}}.

So I guess I just confused OpenJPA.

> 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
>
> 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)