[hibernate-issues] [Hibernate-JIRA] Created: (HHH-3382) net.sf.hibernate.WrongClassException: Object with id: 1 was not of the specified subclass:

cristian vargas (JIRA) noreply at atlassian.com
Wed Jul 9 17:32:12 EDT 2008


net.sf.hibernate.WrongClassException: Object with id: 1 was not of the specified subclass: 
-------------------------------------------------------------------------------------------

                 Key: HHH-3382
                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3382
             Project: Hibernate3
          Issue Type: Bug
         Environment: hibernate 2.1.7 , mysql
            Reporter: cristian vargas
         Attachments: diagram.JPG

i got this error in my project , please can anybody help me? i have an inheritance mapping , you can see the class diagrama  in the attachment. i want to map the sell class, there are two references , one to the  client class and the other one to the employment class.
this is the mapping that i built

<!DOCTYPE hibernate-mapping PUBLIC
   "-//Hibernate/Hibernate Mapping DTD//EN"
   "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
  <class name="Inventory.Sell" table="Sell">
     <id name="Id_Sell" type="integer">
            <column name="Id_Sell" />
            <generator class="identity" />
    </id>   
    <property name="FechaPedido" type="date">
            <column name="FechaPedido"  />
    </property>
    <many-to-one name="Id_Cliente" class="Inventory.Client" >
            <column name="Id_Cliente" not-null="false" />
    </many-to-one>   
    
    <many-to-one name="Id_Employment" class="Inventory.Employment"  >
            <column name="Id_Employment" not-null="false" />
    </many-to-one>   
  </class>
</hibernate-mapping>


and this is the mapping for the inheritance

<!DOCTYPE hibernate-mapping PUBLIC
   "-//Hibernate/Hibernate Mapping DTD//EN"
   "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
    <class name="Inventory.Person" table="person" >
        <id name="Id_Persona" type="integer">
            <column name="Id_Persona" />
            <generator class="identity" />
        </id>
        <property name="CI" type="string">
            <column name="CI" length="20" />
        </property>
         <property name="nombre" type="string">
            <column name="Nombre" length="100" />
        </property>
        <property name="trabajoDir" type="string">
         		<column name="DireccionTrabajo" length="100" />
       	</property>
         <property name="DireccionDomicilio" type="string">
            <column name="DireccionDomicilio" length="100" />
        </property>
       <property name="Celular" type="string">
            <column name="Celular" length="100" />
        </property>
      
        
             
        <set name="emailAddresses" table="email">
		      <key column="Id_Email"/>
		      <element type="string" column="Email"/>
		    </set>
    
        <set name="telefono" table="telefono">
		      <key column="Id_Telefono"/>
		      <element type="string" column="Telefono"/>
		    </set>
    
        <set name="fax" table="fax">
		      <key column="Id_Fax"/>
		      <element type="string" column="Fax"/>
		    </set>
      
  
  <joined-subclass name="Inventory.Employment" table="employment">
          <key column="Id_Empleado"/>
           
          <property name="Sueldo" type="string">
            <column name="Sueldo" length="100" />
         </property>
          
          <property name="Moneda" type="string">
            <column name="Moneda" length="100" />
         </property>
         <property name="FechaContrato" type="date">
            <column name="FechaContrato"  />
         </property>
         
      </joined-subclass>  
  
  <joined-subclass name="Inventory.Client" table="client">
          <key column="Id_Cliente"/>
          
          
           </joined-subclass>  
     
 </class>
</hibernate-mapping>



this is the error that i get:
net.sf.hibernate.WrongClassException: Object with id: 1 was not of the specified subclass: ......................................

at net.sf.hibernate.loader.Loader.instanceAlreadyLoaded(Loader.java:531)	at net.sf.hibernate.loader.Loader.getRow(Loader.java:498)	at net.sf.hibernate.loader.Loader.getRowFromResultSet(Loader.java:213)	at net.sf.hibernate.loader.Loader.doQuery(Loader.java:281)	at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)	at net.sf.hibernate.loader.Loader.loadCollection(Loader.java:990)	at net.sf.hibernate.loader.Loader.loadCollection(Loader.java:965)	at net.sf.hibernate.loader.OneToManyLoader.initialize(OneToManyLoader.java:93)	at net.sf.hibernate.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:288)	at net.sf.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:3303)	at net.sf.hibernate.collection.PersistentCollection.forceInitialization(PersistentCollection.java:336)	at net.sf.hibernate.impl.SessionImpl.initializeNonLazyCollections(SessionImpl.java:3156)	at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:138)	at net.sf.hibernate.loader.Loader.doList(Loader.java:1033)	at net.sf.hibernate.loader.Loader.list(Loader.java:1024)	at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:854)	at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1553)	at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1530)	at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1522)	at hibernate.conexion.consulta(conexion.java:177)	at _Control__Acceso._jspService(_Control__Acceso.java:80)	[/Control_Acceso.jsp]	at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)	at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)	at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)	at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)	at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)	at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)	at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)	at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)	at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)	at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)	at java.lang.Thread.run(Thread.java:595)



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       




More information about the hibernate-issues mailing list