Skip to main content

[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


Back to the top