Voici ma description du problème.Hibernate Problème (javax.persistence.PersistenceException: org.hibernate.PersistentObjectException)
J'ai 2 objets "A" et "B". "A" a une relation OneToOne (cascadeType = cascadeType.All) avec un autre objet "C". Même "B" a OneToOne (cascadeType = cascadeType.All) relation avec "C".
Maintenant, je dois persister l'objet "A". Et après avoir persisté l'objet "A", je dois persister l'objet "B". Je peux persister avec succès l'objet "A", mais quand je persiste " B » je reçois l'exception
javax.persistence.PersistenceException: org.hibernate.PersistentObjectException
la raison est déjà l'objet « C » est persista lorsque « A » est persisted.And quand « B » est persistait il essaie aussi de persister « C » à nouveau .Thats pourquoi persistenceException.
J'ai essayé de fusionner l'objet C avant de persister l'objet "B". Même alors, je reçois la même exception.
S'il vous plaît me fournir un travail autour.
Aussi laissez-moi savoir si quelqu'un a besoin de plus amples informations.
Voici la pile complète Trace
Caused by: javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: detached entity passed to persist: com.project.shared.entity.User at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1235) at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1168) at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1174) at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:674) at com.sun.enterprise.container.common.impl.EntityManagerWrapper.persist(EntityManagerWrapper.java:258) at com.project.server.bean.ExpertFacade.create(ExpertFacade.java:64) 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.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1052) at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1124) at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:5243) at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:615) at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:797) at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:567) at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doAround(SystemInterceptorProxy.java:157) at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:139) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:858) at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:797) at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:367) at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:5215) at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:5203) at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:190) ... 69 more
Merci
Pouvez-vous fournir toute stacktrace, s'il vous plaît? – kraftan
Oui, j'ai édité ma question et collé la trace de la pile. – Barry