[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [eclipselink-users] Issues with remove jta, eclipselink with a relational object..
|
Turning it to finest for both org.springframework.orm and finest for
eclipselink gives us the following
17:57:41,817 INFO [STDOUT]:152 17:57:41,817 TRACE
[ClassPathXmlApplicationContext]:301 Publishing event in
ApplicationContext 'pmabWebBeanFactory':
org.springframework.security.access.event.AuthorizedEvent[source=FilterInvocation:
URL: /faces/pg/systemManagement/security/security/user/index.xhtml?q=http://localhost:8080/PMABWebUI/secured/rest/users/1320/5/details]
17:57:41,848 INFO [STDOUT]:156
com.dst.hps.pmab.ui.SessionAttributeListener: ATTRIBUTE REPLACED:
javax.faces.request.charset -> UTF-8
17:57:41,851 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:41,855 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:41,879 INFO [STDOUT]:156
com.dst.hps.pmab.ui.SessionAttributeListener: ATTRIBUTE ADDED:
org.apache.myfaces.trinidadinternal.application.VIEW_CACHE.15c84131 ->
org.apache.myfaces.trinidadinternal.application.StateManagerImpl$PageState@5c0011f3
17:57:42,373 INFO [STDOUT]:152 17:57:42,372 TRACE
[ClassPathXmlApplicationContext]:301 Publishing event in
ApplicationContext 'pmabWebBeanFactory':
org.springframework.security.access.event.PublicInvocationEvent[source=FilterInvocation:
URL: /secured/rest/users/1320/5/details?__ts=1342047462351]
17:57:42,377 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:42,378 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:42,379 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:42,384 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:42,392 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:42,398 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:42,405 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:42,410 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:42,480 INFO [STDOUT]:152 17:57:42,479 TRACE
[ClassPathXmlApplicationContext]:301 Publishing event in
ApplicationContext 'pmabWebBeanFactory':
org.springframework.security.access.event.PublicInvocationEvent[source=FilterInvocation:
URL: /secured/rest/roles?__ts=1342047462452]
17:57:42,485 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:42,490 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,493 INFO [STDOUT]:152 17:57:50,493 TRACE
[ClassPathXmlApplicationContext]:301 Publishing event in
ApplicationContext 'pmabWebBeanFactory':
org.springframework.security.access.event.PublicInvocationEvent[source=FilterInvocation:
URL: /secured/rest/users/1320/5/details]
17:57:50,500 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,502 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,503 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,508 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,518 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,523 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,531 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,537 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,548 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,549 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,550 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,554 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,557 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,557 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,560 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,561 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,563 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,564 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,629 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,630 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:50,642 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:50,647 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:53,932 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:53,947 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:55,107 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:55,127 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:55,602 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:55,618 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:58,393 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:58,403 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:57:58,410 DEBUG
[SharedEntityManagerCreator$SharedEntityManagerInvocationHandler]:231
Creating new EntityManager for shared EntityManager invocation
17:57:58,419 DEBUG [EntityManagerFactoryUtils]:328 Closing JPA EntityManager
17:58:00,842 SEVERE [MappedExceptions]:17 400 BAD REQUEST
java.lang.IllegalArgumentException: Entity must be managed to call
remove: com.dst.hps.pmab.security.bom.helpers.UserRole@349d, try
merging the detached and try the remove again.
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.performRemove(UnitOfWorkImpl.java:3559)
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.remove(EntityManagerImpl.java:518)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:365)
at $Proxy641.remove(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:240)
at $Proxy641.remove(Unknown Source)
at com.dst.hps.pmab.common.dao.eclipselink.EclipseLinkDAO.deleteObject(EclipseLinkDAO.java:192)
at com.dst.hps.pmab.dao.eclipselink.EclipseLinkSecurityDAO.setRoles(EclipseLinkSecurityDAO.java:214)
at com.dst.hps.pmab.security.impls.PMABSecurityImpl.setRoles(PMABSecurityImpl.java:401)
at com.dst.hps.pmab.security.impls.PMABSecurityImpl.setRoles(PMABSecurityImpl.java:412)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:69)
at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)
at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)
at sun.reflect.GeneratedMethodAccessor370.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)
at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_2032924280.invoke(InvocationContextInterceptor_z_fillMethod_2032924280.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)
at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_2032924280.invoke(InvocationContextInterceptor_z_setup_2032924280.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:68)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:421)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:85)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
at $Proxy634.invoke(Unknown Source)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:207)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:164)
at $Proxy615.setRoles(Unknown Source)
at com.dsths.pmab.utils.SecurityServiceHelper.updateUser(SecurityServiceHelper.java:176)
at com.dsths.pmab.resources.security.UserDetails.updateUser(UserDetails.java:168)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:168)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:70)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:279)
at com.sun.jersey.server.impl.uri.rules.SubLocatorRule.accept(SubLocatorRule.java:121)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:86)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:74)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1357)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1289)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1239)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1229)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:420)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:497)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:684)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:662)
17:58:00,847 INFO [ContainerResponse]:493 Mapped exception to
response: 400 (Bad Request)
javax.ejb.EJBException: java.lang.IllegalArgumentException: Entity
must be managed to call remove:
com.dst.hps.pmab.security.bom.helpers.UserRole@349d, try merging the
detached and try the remove again.
at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:77)
at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:421)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:85)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
at $Proxy634.invoke(Unknown Source)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:207)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:164)
at $Proxy615.setRoles(Unknown Source)
at com.dsths.pmab.utils.SecurityServiceHelper.updateUser(SecurityServiceHelper.java:176)
at com.dsths.pmab.resources.security.UserDetails.updateUser(UserDetails.java:168)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:168)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:70)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:279)
at com.sun.jersey.server.impl.uri.rules.SubLocatorRule.accept(SubLocatorRule.java:121)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:86)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:74)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1357)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1289)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1239)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1229)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:420)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:497)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:684)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
On Wed, Jul 11, 2012 at 12:49 PM, Christopher Delahunt
<christopher.delahunt@xxxxxxxxxx> wrote:
> Turning on EclipseLink logging to finest might help debug what is going on:
> <property name="eclipselink.logging.level" value="FINEST"/>
>
> Regards,
> Chris
>
>
> On 11/07/2012 1:08 PM, vaidya nathan wrote:
>>
>> Thanx Christopher,
>>
>>
>>> Spring wraps the EclipseLink EntityManager in its own, so it is still
>>> quite
>>> possible you are not using the same underlying EntityManager on the
>>> find/merge and remove calls - actually this is the only way it can
>>> happen.
>>>
>>> Check your transaction demarcation to be sure the two calls are occurring
>>> in
>>> the same transaction, otherwise Spring might give you different EMs on
>>> each
>>> call.
>>>
>> If you look at my deleteObject I am doing a find before doing a remove
>> ,So shouldn't either find/merge get the entity to be managed. I
>> rewrote the deleteObject slightly to be as follows , but am still
>> having the error..
>>
>> Also , given that this is called with the ejb method and we are
>> starting a transaction at the boundary of the method call , the
>> deleteObject should definitely be within the same transaction. I used
>> the link that you sent and even set the two ends of my object to be
>> null but that is not helping either..
>>
>> public<T extends PersistableObject> void deleteObject(T entity)
>> throws DAOException
>> {
>> try
>> {
>> EntityManager em=getEntityManager();
>> if (em.contains(entity)) {
>> em.remove(entity);
>> } else {
>> entity = (T) em.find(entity.getClass(), entity.getId());
>> if (em.contains(entity))
>> {
>> System.out.println("hello");
>> }
>> em.remove(em.merge(entity));
>> }
>>
>> }
>> catch (PersistenceException e)
>> {
>> e.printStackTrace() ;
>> throw new DAOException(e.getMessage()) ;
>> }
>> }
>>
>>
>> Given that i am using the same em across both the merges and deletes ,
>> i am still not sure why i don't either get an exception or it doesn't
>> delete still.
>>
>> Cheers
>> Vaidya
>>
>>
>>
>> On Wed, Jul 11, 2012 at 11:17 AM, Christopher Delahunt
>> <christopher.delahunt@xxxxxxxxxx> wrote:
>>>
>>> Spring wraps the EclipseLink EntityManager in its own, so it is still
>>> quite
>>> possible you are not using the same underlying EntityManager on the
>>> find/merge and remove calls - actually this is the only way it can
>>> happen.
>>>
>>> Check your transaction demarcation to be sure the two calls are occurring
>>> in
>>> the same transaction, otherwise Spring might give you different EMs on
>>> each
>>> call.
>>>
>>> A similar problem is described here:
>>>
>>> http://stackoverflow.com/questions/2428706/jpa-thinks-im-deleting-a-detached-object
>>>
>>> Best Regards,
>>> Chris
>>>
>>>
>>> On 11/07/2012 12:10 PM, vaidya nathan wrote:
>>>>
>>>>
>>>> The entityManager is just injected ..
>>>>
>>>> public BaseEclipselinkDAO
>>>> {
>>>> protected EntityManager getEntityManager() throws DAOException
>>>> {
>>>> return entityManager;
>>>> }
>>>> @PersistenceContext(unitName="PersistenceEl")
>>>> private EntityManager entityManager = null ;
>>>> }
>>>>
>>>>
>>>> and we use spring to inject the entity manager
>>>>
>>>> <bean id="entityManagerFactory"
>>>>
>>>>
>>>> class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
>>>> <property name="dataSource" ref="ourDataSource" />
>>>> <property name="persistenceUnitName"
>>>> value="PersistenceEl"
>>>> />
>>>> <property name="jpaDialect" ref="eclipseLinkDialect" />
>>>> <property name="persistenceXmlLocation"
>>>>
>>>> value="classpath:META-INF/persistence-eclipse.xml"
>>>> />
>>>> <property name="jpaVendorAdapter">
>>>> <bean
>>>>
>>>> class="org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter">
>>>> <property name="showSql" value="true"
>>>> />
>>>> <property name="generateDdl"
>>>> value="false"
>>>> />
>>>> </bean>
>>>> </property>
>>>>
>>>> <property name="jpaPropertyMap">
>>>> <map>
>>>> <entry key="eclipselink.target-server" value="JBOSS"/>
>>>> <entry key="eclipselink.target-database"
>>>> value="Oracle"/>
>>>> <entry
>>>> key="eclipselink.persistence-context.flush-mode" value="AUTO"/>
>>>> <entry key="eclipselink.jdbc.native-sql" value="false"
>>>> />
>>>> <entry key="eclipselink.weaving" value="false" />
>>>> <entry key="eclipselink.logging.logger"
>>>> value="org.eclipse.persistence.logging.DefaultSessionLog" />
>>>> <entry key="eclipselink.logging.level" value="FINEST"
>>>> />
>>>> <entry key="eclipselink.logging.parameters"
>>>> value="true"/>
>>>> <entry key="eclipselink.logging.exceptions"
>>>> value="true"
>>>> />
>>>> <entry key="eclipselink.orm.throw.exceptions"
>>>> value="true"
>>>> />
>>>> <entry key="eclipselink.session.customizer"
>>>> value="com.dst.hps.persistence.dao.eclipselink.SessionCustomizers" />
>>>> </map>
>>>> </property>
>>>> </bean>
>>>>
>>>> <bean id="eclipseLinkDialect"
>>>> class="org.springframework.orm.jpa.vendor.EclipseLinkJpaDialect" />
>>>>
>>>>
>>>> <tx:jta-transaction-manager />
>>>>
>>>>
>>>>> Your first example did not use deleteObject method at all but I see it
>>>>> in
>>>>> exception stack so this was just your simplification of real code, am I
>>>>> right?
>>>>>
>>>>
>>>> Yes - this is just a simplification of the real code. I did get some
>>>> ideas from other folks who are having similar issues and i just
>>>> simplified the code .
>>>>
>>>> Cheers
>>>> Vaidya
>>>>
>>>>
>>>>
>>>> On Wed, Jul 11, 2012 at 10:22 AM, Rodion Gushchin<graymagi@xxxxxxxxx>
>>>> wrote:
>>>>>
>>>>>
>>>>> Is there a possibility that getEntityManager() return different entity
>>>>> manager instance every call or e.g. only inside getObjects or
>>>>> deleteObject
>>>>> or somehow implicitly starts new transaction or nested transaction?
>>>>> Can
>>>>> you
>>>>> trace that? May be you can also show source code for getEntityManager()
>>>>> method.
>>>>> Your first example did not use deleteObject method at all but I see it
>>>>> in
>>>>> exception stack so this was just your simplification of real code, am I
>>>>> right?
>>>>>
>>>>>
>>>>> On Wed, Jul 11, 2012 at 4:58 PM, vaidya nathan<vaidyaatdst@xxxxxxxxx>
>>>>> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> Thx for the reply.. Following is the info. that you requested..
>>>>>>
>>>>>>> 1) What getObjects(UserRole.class, exp) doing? Can you provide source
>>>>>>> code
>>>>>>> for this call?
>>>>>>
>>>>>>
>>>>>>
>>>>>> getObjects(UserRole.class,exp) is as follows
>>>>>> {
>>>>>> ReadAllQuery query = (exp == null ? new ReadAllQuery(clazz) :
>>>>>> new
>>>>>> ReadAllQuery(clazz, exp));
>>>>>> query.setShouldFilterDuplicates(true) ;
>>>>>> Query jpaq = JpaHelper.createQuery(query, getEntityManager()) ;
>>>>>> List<T> result = jpaq.getResultList() ;
>>>>>> return result;
>>>>>> }
>>>>>>
>>>>>>
>>>>>>> 2) Why are you doing getEntityManager().merge(urole)? Why not use
>>>>>>> entityManager variable and why you are merging entity before removing
>>>>>>> it
>>>>>>> do
>>>>>>> you expect it to be detached?
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> We could use the entityManager variable itself .. There is no reason
>>>>>> to do a getEntityManager() again .
>>>>>> We tried to do a merge of the entity because
>>>>>> 1. From various posts that was the way in which we can reattach the
>>>>>> entity
>>>>>> back
>>>>>> 2. Thats what the error asked us to do.
>>>>>>
>>>>>> Also i modified the deleteObject as follows :
>>>>>>
>>>>>> public<T extends PersistableObject> void deleteObject(T
>>>>>> entity)
>>>>>> throws DAOException
>>>>>> {
>>>>>> try
>>>>>> {
>>>>>> if (getEntityManager().contains(entity)) {
>>>>>> System.out.println("Succeeding contains");
>>>>>> getEntityManager().remove(entity);
>>>>>> } else {
>>>>>> entity = (T)
>>>>>> getEntityManager().find(entity.getClass(), entity.getId());
>>>>>> if (getEntityManager().contains(entity))
>>>>>> {
>>>>>> System.out.println("Succeeding contains");
>>>>>> }
>>>>>> getEntityManager().remove(entity);
>>>>>> }
>>>>>>
>>>>>> }
>>>>>> catch (PersistenceException e)
>>>>>> {
>>>>>> e.printStackTrace() ;
>>>>>> throw new DAOException(e.getMessage()) ;
>>>>>> }
>>>>>> }
>>>>>>
>>>>>> it never prints "Succeeding contains" - So we are not able to
>>>>>> remove the entity because the entity is never getting managed/attached
>>>>>> to UOW .
>>>>>>
>>>>>> Cheers
>>>>>> Vaidya
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Jul 11, 2012 at 8:08 AM, Rodion Gushchin<graymagi@xxxxxxxxx>
>>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>> Two questions:
>>>>>>>
>>>>>>> 1) What getObjects(UserRole.class, exp) doing? Can you provide source
>>>>>>> code
>>>>>>> for this call?
>>>>>>> 2) Why are you doing getEntityManager().merge(urole)? Why not use
>>>>>>> entityManager variable and why you are merging entity before removing
>>>>>>> it
>>>>>>> do
>>>>>>> you expect it to be detached?
>>>>>>>
>>>>>>> Rodion
>>>>>>>
>>>>>>> On Wed, Jul 11, 2012 at 2:50 PM, vaidya nathan<vaidyaatdst@xxxxxxxxx>
>>>>>>> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Sorry to repost but anyone having a solution for this problem .. ? I
>>>>>>>> am totally struck ..
>>>>>>>>
>>>>>>>> On Tue, Jul 10, 2012 at 1:05 PM, vaidya
>>>>>>>> nathan<vaidyaatdst@xxxxxxxxx>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Greetings,
>>>>>>>>>
>>>>>>>>> I am having issues with delete on a table which connects two
>>>>>>>>> entities
>>>>>>>>> but otherwise is independant(No cascade,etc). I keep getting
>>>>>>>>> Caused by: java.lang.IllegalArgumentException: Entity must be
>>>>>>>>> managed
>>>>>>>>> to call remove: UserRole@595, try merging the detached and try the
>>>>>>>>> remove again.
>>>>>>>>>
>>>>>>>>> Following is my model.I have a class UserRole which is defined as
>>>>>>>>> follows
>>>>>>>>>
>>>>>>>>> @Entity
>>>>>>>>> @Table(name="USER_ROLE",
>>>>>>>>> uniqueConstraints={@UniqueConstraint(columnNames={"USER_ID",
>>>>>>>>> "ROLE_ID"})})
>>>>>>>>> public class UserRole extends PersistableObject implements
>>>>>>>>> Effectivity<EffectivePeriodWithEnable>
>>>>>>>>> {
>>>>>>>>> @OneToOne(fetch=FetchType.EAGER)
>>>>>>>>> @JoinColumn(name="USER_ID", nullable=false)
>>>>>>>>> private User user ;
>>>>>>>>> @OneToOne(fetch=FetchType.EAGER)
>>>>>>>>> @JoinColumn(name="ROLE_ID", nullable=false)
>>>>>>>>> private Role role ;
>>>>>>>>> @Column(name="DEFAULT_ROLE", nullable=false)
>>>>>>>>> private Boolean defaultRole ;
>>>>>>>>> @Embedded
>>>>>>>>> private EffectivePeriodWithEnable span ;
>>>>>>>>> }
>>>>>>>>> which basically is a relation between User and Role with some
>>>>>>>>> attributes defined in the relation like the defaultRole and a span
>>>>>>>>> when the relation would be active/inactive.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> User is like this
>>>>>>>>> public class User extends PersistableObject
>>>>>>>>> {
>>>>>>>>> @Column(name="LOGIN", nullable=false, unique=true,
>>>>>>>>> length=20)
>>>>>>>>> private String loginName;
>>>>>>>>> @Column(name="FIRST_NM", nullable=false, length=35)
>>>>>>>>> private String firstName;
>>>>>>>>> @Column(name="MID_NM", nullable=true, length=25)
>>>>>>>>> private String middleName;
>>>>>>>>> ...etc...etc(Not relevant to this discussion)
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> @Entity
>>>>>>>>> @Table(name="ROLE")
>>>>>>>>> public class Role extends PersistableObject
>>>>>>>>> {
>>>>>>>>> @Column(name="NAME", nullable=false, unique=true, length=50)
>>>>>>>>> private String name;
>>>>>>>>>
>>>>>>>>> @Column(name="DESCRIPTION", nullable=true, length=255)
>>>>>>>>> private String description;
>>>>>>>>> ....etc...etc(Not relevant to this discussion)
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> I have a method defined in the DAO something like this
>>>>>>>>>
>>>>>>>>> public void setRoles(User user, List<Role> roles,
>>>>>>>>> EffectivePeriodWithEnable p) throws DAOException
>>>>>>>>> {
>>>>>>>>> try
>>>>>>>>> {
>>>>>>>>> ExpressionBuilder eb = new
>>>>>>>>> ExpressionBuilder(UserRole.class)
>>>>>>>>> ;
>>>>>>>>> Expression exp = eb.get("user").equal(user) ;
>>>>>>>>> List<UserRole> uroles = (List<UserRole>)
>>>>>>>>> getObjects(UserRole.class, exp);
>>>>>>>>> EntityManager entityManager = getEntityManager() ;
>>>>>>>>>
>>>>>>>>> if (uroles != null)
>>>>>>>>> {
>>>>>>>>> for (UserRole urole: uroles)
>>>>>>>>> {
>>>>>>>>> // I have tried this with and without merge .
>>>>>>>>> I
>>>>>>>>> dont think that i should do a merge since the getobjects (which
>>>>>>>>> internally uses ReadAllQuery to fetch
>>>>>>>>> // the object is just got here in this
>>>>>>>>> method..
>>>>>>>>>
>>>>>>>>> getEntityManager().remove(getEntityManager().merge(urole));
>>>>>>>>> }
>>>>>>>>> }
>>>>>>>>> }
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> I am running in a jta container and these methods are called within
>>>>>>>>> an
>>>>>>>>> ejb method call . When it runs and tries to remove , following is
>>>>>>>>> what
>>>>>>>>> i get
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Caused by: java.lang.IllegalArgumentException: Entity must be
>>>>>>>>> managed
>>>>>>>>> to call remove: com.abc.hps.vvv.security.bom.helpers.UserRole@595,
>>>>>>>>> try
>>>>>>>>> merging the detached and try the remove again.
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.performRemove(UnitOfWorkImpl.java:3559)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.eclipse.persistence.internal.jpa.EntityManagerImpl.remove(EntityManagerImpl.java:518)
>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>>>>>>> Method)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:365)
>>>>>>>>> at $Proxy640.remove(Unknown Source)
>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>>>>>>> Method)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:240)
>>>>>>>>> at $Proxy640.remove(Unknown Source)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> com.abc.hps.vvv.common.dao.eclipselink.EclipseLinkDAO.deleteObject(EclipseLinkDAO.java:179)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> com.abc.hps.vvv.dao.eclipselink.EclipseLinkSecurityDAO.setRoles(EclipseLinkSecurityDAO.java:212)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> com.abc.hps.vvv.security.impls.vvvSecurityImpl.setRoles(vvvSecurityImpl.java:401)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> com.abc.hps.vvv.security.impls.vvvSecurityImpl.setRoles(vvvSecurityImpl.java:412)
>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>>>>>>> Method)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:69)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)
>>>>>>>>> at sun.reflect.GeneratedMethodAccessor369.invoke(Unknown
>>>>>>>>> Source)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_1937287906.invoke(InvocationContextInterceptor_z_fillMethod_1937287906.java)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_1937287906.invoke(InvocationContextInterceptor_z_setup_1937287906.java)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>> org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:68)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>>>>>>>>> at
>>>>>>>>> org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
>>>>>>>>> ... 96 more
>>>>>>>>> 12:51:28,665 INFO [STDOUT]:152 12:51:28,664 TRACE
>>>>>>>>> [ClassPathXmlApplicationContext]:301 Publishing event in
>>>>>>>>> ApplicationContext 'vvvWebBeanFactory':
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.springframework.security.access.event.PublicInvocationEvent[source=FilterInvocation:
>>>>>>>>> URL: /abcrw/js/abc/assets/set2/delete_16.png]
>>>>>>>>>
>>>>>>>>> We are using eclipselink 2.4.0 and are running in a jboss 5.1.0.GA
>>>>>>>>> container. Please help !!! I just dont understand why it is not
>>>>>>>>> able
>>>>>>>>> to remove .. May be i am missing something
>>>>>>>>>
>>>>>>>>> Cheers
>>>>>>>>> Vaidya
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> eclipselink-users mailing list
>>>>>>>> eclipselink-users@xxxxxxxxxxx
>>>>>>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> eclipselink-users mailing list
>>>>>>> eclipselink-users@xxxxxxxxxxx
>>>>>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>>>>>>
>>>>>> _______________________________________________
>>>>>> eclipselink-users mailing list
>>>>>> eclipselink-users@xxxxxxxxxxx
>>>>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> eclipselink-users mailing list
>>>>> eclipselink-users@xxxxxxxxxxx
>>>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>>>>
>>>> _______________________________________________
>>>> eclipselink-users mailing list
>>>> eclipselink-users@xxxxxxxxxxx
>>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>>
>>>
>>> _______________________________________________
>>> eclipselink-users mailing list
>>> eclipselink-users@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>>
>> _______________________________________________
>> eclipselink-users mailing list
>> eclipselink-users@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/eclipselink-users
>
> _______________________________________________
> eclipselink-users mailing list
> eclipselink-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/eclipselink-users