-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: Error when migrating to Hibernate-Version: 3.2.0.ga
PostPosted: Fri Nov 24, 2006 6:00 am 
Newbie

Joined: Wed Oct 25, 2006 8:28 am
Posts: 11
Hello,
We are developing a web application using Hibernate and recently upgraded from

Hibernate-Version: 3.2.0.CR2
Hibernate EntityManager Version: 3.2.0.CR1


to

Hibernate-Version: 3.2.0.ga
Hibernate EntityManager Version: 3.2.0.CR2


The database Server is MySQL 5.0



Since then all deletes are failing !!


The remove method in our GenericDAO is as follows:

Code:

public void remove(T persistentInstance) {
      log.debug("removing "+ this.getPersistentClassName() +" instance");
      try {      
         entityManager.remove(persistentInstance);         
         entityManager.flush();
         log.debug("remove successful");
      } catch (RuntimeException re) {
         log.error("remove failed", re);
         throw re;
      }
   }



All our DB specific transactions are found in SLSB which are called by SFSB when required.



The Stack trace goes as follows:
Code:

javax.faces.el.EvaluationException: Exception while invoking expression #{shareIndexEditor.deleteInstance}
   at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:153)
   at org.jboss.seam.actionparam.ActionParamBindingHelper.invokeTheExpression(ActionParamBindingHelper.java:59)
   at org.jboss.seam.actionparam.ActionParamMethodBinding.invoke(ActionParamMethodBinding.java:71)
   at org.jboss.seam.core.Expressions$2.invoke(Expressions.java:95)
   at org.jboss.seam.core.Pages.callAction(Pages.java:366)
   at org.jboss.seam.jsf.AbstractSeamPhaseListener.callPageActions(AbstractSeamPhaseListener.java:252)
   at org.jboss.seam.jsf.AbstractSeamPhaseListener.beforeRender(AbstractSeamPhaseListener.java:201)
   at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:51)
   at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersBefore(PhaseListenerManager.java:70)
   at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:373)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:32)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:46)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:67)
   at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:223)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
   at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
   at java.lang.Thread.run(Thread.java:595)
Caused by: javax.ejb.EJBTransactionRolledbackException: java.lang.IllegalArgumentException: Removing a detached instance accountingAudit.businessObjects.Shareindex#3
   at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:93)
   at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
   at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:201)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
   at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:131)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:211)
   at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:79)
   at $Proxy229.remove(Unknown Source)
   at accountingAudit.dataAccessObjects.ShareIndexLocal$$FastClassByCGLIB$$52da62c8.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:45)
   at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:69)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
   at org.jboss.seam.interceptors.ExceptionInterceptor.handleExceptions(ExceptionInterceptor.java:28)
   at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
   at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
   at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:102)
   at org.jboss.seam.intercept.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:78)
   at org.jboss.seam.intercept.ClientSideInterceptor.intercept(ClientSideInterceptor.java:47)
   at org.jboss.seam.intercept.Proxy$$EnhancerByCGLIB$$799e992b.remove(<generated>)
   at accountingAudit.actions.ShareIndexEditorBean.deleteInstance(ShareIndexEditorBean.java:90)
   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:585)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
   at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
   at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
   at org.jboss.seam.interceptors.BijectionInterceptor.bijectTargetComponent(BijectionInterceptor.java:51)
   at sun.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.interceptors.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:79)
   at sun.reflect.GeneratedMethodAccessor129.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.interceptors.OutcomeInterceptor.interceptOutcome(OutcomeInterceptor.java:23)
   at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:51)
   at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
   at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
   at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:102)
   at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:49)
   at sun.reflect.GeneratedMethodAccessor126.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
   at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
   at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:197)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
   at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:131)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:203)
   at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
   at $Proxy151.deleteInstance(Unknown Source)
   at accountingAudit.actions.ShareIndexEditor$$FastClassByCGLIB$$a94ac319.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:45)
   at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:69)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
   at org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:39)
   at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.interceptors.ExceptionInterceptor.handleExceptions(ExceptionInterceptor.java:28)
   at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.interceptors.SynchronizationInterceptor.serialize(SynchronizationInterceptor.java:30)
   at sun.reflect.GeneratedMethodAccessor124.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
   at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
   at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
   at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
   at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:102)
   at org.jboss.seam.intercept.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:78)
   at org.jboss.seam.intercept.ClientSideInterceptor.intercept(ClientSideInterceptor.java:47)
   at org.jboss.seam.intercept.Proxy$$EnhancerByCGLIB$$c31a8b46.deleteInstance(<generated>)
   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:585)
   at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:129)
   ... 43 more
Caused by: java.lang.IllegalArgumentException: Removing a detached instance accountingAudit.businessObjects.Shareindex#3
   at org.hibernate.ejb.event.EJB3DeleteEventListener.performDetachedEntityDeletionCheck(EJB3DeleteEventListener.java:47)
   at org.hibernate.event.def.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:75)
   at org.hibernate.event.def.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:49)
   at org.hibernate.impl.SessionImpl.fireDelete(SessionImpl.java:766)
   at org.hibernate.impl.SessionImpl.delete(SessionImpl.java:744)
   at org.hibernate.ejb.AbstractEntityManagerImpl.remove(AbstractEntityManagerImpl.java:245)
   at org.jboss.ejb3.entity.TransactionScopedEntityManager.remove(TransactionScopedEntityManager.java:187)
   at accountingAudit.dataAccessObjects.GenericDAO.remove(GenericDAO.java:64)
   at accountingAudit.dataAccessObjects.ShareIndexHome.remove(ShareIndexHome.java:1)
   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:585)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
   at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
   at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
   at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)



Can anyone help us on this ?

Regards,
Jankee Yogesh
http://www.m-itc.net


Top
 Profile  
 
 Post subject:
PostPosted: Fri Nov 24, 2006 7:43 am 
Newbie

Joined: Wed Nov 22, 2006 10:07 am
Posts: 6
Well, it seems it has to do with:
Quote:
Removing a detached instance accountingAudit.businessObjects.Shareindex#3

Could you give some more information about the objects you are trying to delete? Does the same happens even using EM 3.2.0GA?
It seems that a specific check has been introduced between the two version you are using to spot when one's trying to remove a detached instance.
Hope this helps,
regards,
Riccardo


Top
 Profile  
 
 Post subject: Error when migrating to Hibernate-Version: 3.2.0.ga
PostPosted: Fri Nov 24, 2006 2:59 pm 
Newbie

Joined: Wed Oct 25, 2006 8:28 am
Posts: 11
Hello riccardo,
Thnx for helping. In fact all my objects are generated by using Hibernate tools in eclipse. An example of the object i am trying to delete is as follows:
Code:
package accountingAudit.businessObjects;
// Generated 08-Nov-2006 09:13:29 by Hibernate Tools 3.2.0.beta6a

import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;

/**
* Shareindex generated by hbm2java
*/
@Entity
@Table(name = "shareindex", catalog = "accountingaudit", uniqueConstraints = {})
public class Shareindex implements java.io.Serializable, ISelectItemData {

   // Fields   

   private byte shareIndexId;

   private String shareIndexName;

   private Set<Companymarkets> companymarketses = new HashSet<Companymarkets>(
         0);

   // Constructors

   /** default constructor */
   public Shareindex() {
   }

   /** minimal constructor */
   public Shareindex(byte shareIndexId) {
      this.shareIndexId = shareIndexId;
   }

   /** full constructor */
   public Shareindex(byte shareIndexId, String shareIndexName,
         Set<Companymarkets> companymarketses) {
      this.shareIndexId = shareIndexId;
      this.shareIndexName = shareIndexName;
      this.companymarketses = companymarketses;
   }

   // Property accessors
   @Id
   @Column(name = "ShareIndexId", unique = true, nullable = false, insertable = true, updatable = true)
   public byte getShareIndexId() {
      return this.shareIndexId;
   }

   public void setShareIndexId(byte shareIndexId) {
      this.shareIndexId = shareIndexId;
   }

   @Column(name = "ShareIndexName", unique = false, nullable = true, insertable = true, updatable = true)
   public String getShareIndexName() {
      return this.shareIndexName;
   }

   public void setShareIndexName(String shareIndexName) {
      this.shareIndexName = shareIndexName;
   }

   @OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY, mappedBy = "shareindex")
   public Set<Companymarkets> getCompanymarketses() {
      return this.companymarketses;
   }

   public void setCompanymarketses(Set<Companymarkets> companymarketses) {
      this.companymarketses = companymarketses;
   }

   
   
   @Override
   public String toString() {   
      return getShareIndexName();
   }
   
   @Transient
   public String getStringId()
   {
      return Byte.toString( this.getShareIndexId() );
   }

   @Transient
   public String getLabel() {      
      return this.getShareIndexName();
   }
   
   @Override
   public boolean equals(Object obj) {
      
      if ( obj == null )
      {
      
         return false;
      }
      
      Shareindex shareIndex = (Shareindex) obj;
      return this.getShareIndexId() == shareIndex.getShareIndexId();
      
   }
   
}




I will try to test it with EM 3.2.0.GA when i get back in office of monday. Until then, I would appreciate any help on how to solve this with the version of EM i am using. I cannot figure out why this was working previously and not now !!

From wat i understood if i do
Code:
entityManager.merge(persitentInstance)


the object should no longer be detached !! Is that correct. but even this does not seem to be working ??

Regards,
Jankee Yogesh
http://www.m-itc.net


Top
 Profile  
 
 Post subject:
PostPosted: Mon Nov 27, 2006 10:05 am 
Newbie

Joined: Wed Nov 22, 2006 10:07 am
Posts: 6
I think you should look for the error in the parent of Shareindex.
Maybe you are doing something like that:
1) load myObject via EM
2) call myObject.setShareindex(new Shareindex(....));
3) delete myObject

If in myObject the Shareindex field is marked as having a cascade on persist hibernate finds itself trying to delete a ShareIndex which is not on the db.
IMHO it is possible that this kind of behaviour (which if I understand well is perfectly correct) has been "forgotten" in the previous version you were using, because it was not a 'production grade' one.
If I'm correct this shouldn't work in the 3.2.0 GA, too.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.