Re: beginner hibernate
"Aníbal Jalil" <[email protected]>
| Newsgroups | gmane.comp.java.javaspain |
|---|---|
| Message-ID | <[email protected]> |
muchas gracias Ignacio, por el dato, poco a poco voy , cualquier cosa ahi escribo de nuevo.. El día 16/04/08, Ignacio Elorriaga Perez <[email protected]> escribió: > > Cuando mapeas Beans en hibernate en tu hibernate.cfg.xml no debes repetir > las clases que son Beans o tablas de tu BBDD.Entiendo que tu proyecto(que > no es web), esta situado en la ruta: > > C: \JAVACODE\ZOOCWARE\ZOOCWARE > > A partir de ahi tienes una carpeta donde estan las classes (CLASSES) y > dentro de ella el resto de paquetes. > Pero tu en el archivo de configuracion de hibernate simplemente le estas > indicando el nombre de la clase(¿Como sabe hibernate en que paquete / ruta > esta esa clase?), ademas de que lo duplicas nunca dupliques las entradas de > lo Beans a mapear en el archivo de configuracion(te puede jugar malas > pasadas o generar errores) > Tienes: > > <mapping resource='Nido.hbm.xml'></mapping> > > y por que no? : > <mapping resource='com/ctg/zoocware/Nido.hbm.xml'/> (o como se llame el > paquete que lo contiene) > > Y ya puestos acostumbrate a los paquetes que sean en minusculas,a no ser > que sean union de varias palabras en plan "beansActualizados" > > > El 16/04/2008, a las 21:58, Aníbal Jalil escribió: > > Hola grupo, estoy principiando con hibernate, y tal vez me puedan ayudar, > estoy corriendo este comando y me sale que me falta una clase no mapeada, he > metido el archivo xml en todas partes a ver que problema es, pero nada, > finalmente lo deje donde se supone que va... aqui esta mi hibernate.cfg.xml > necesitaria borrar hibernate.properties? la documentacion de hibernate > dice que el cfg.xml sobreescribe la conf del .properties asi qe no creo > > la verdad es que ni idea donde esta el error pues igualmente ya compile la > clase y se encuentra en su paquete: > > un detalle: al repetir la linea en el hibernate.cfg.xml donde hago > <mapping resource... del xml que supuestamente falta, lo agarra y mapea, > pero luego sale otro error de duplicidad.. > > pd. cualquier critica, sugerencia, jalada de oreja, adicionales, > bienvenidas, gracias a todos.. > > > C:\JAVACODE\ZOOCWARE\ZOOCWARE\CLASSES\COM\CTG\ZOOCWARE > ├───base > │ Alimento.class > │ Lote.class > │ MovimientoLote.class > │ Nido.class > │ Pieles.class > │ > ├───beans > │ Alimento.class > │ Lote.class > │ NumerosAleatorios.class > │ Persistente.class > │ TipoAlimento.class > │ TipoLote.class > │ > ├───dao > │ AbstractDaoZooc.class > │ AlimentoDao.class > │ DataAccessLayerExceptionZooc.class > │ HibernateFactoryZooc.class > │ > ├───gui > │ Alimentacion$1.class > │ Alimentacion.class > │ CrecimientoLevante$1.class > │ CrecimientoLevante.class > │ GeneracionLotes$1.class > │ GeneracionLotes.class > │ Incubacion$1.class > │ Incubacion.class > │ MainZoocware$1.class > │ MainZoocware$2.class > │ MainZoocware$ItemsListenerHandler.class > │ MainZoocware.class > │ Sacrificio$1.class > │ Sacrificio.class > │ > └───hibernate > EjemploCrearAlimento.class > > -------------------------------------------------------------- > <?xml version='1.0' encoding='utf-8' ?> > <!DOCTYPE hibernate-configuration PUBLIC > "-//Hibernate/Hibernate Configuration DTD 3.0//EN" > "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd > "> > > <hibernate-configuration> > <session-factory> > <!-- database connection settings --> > <property > name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property> > <property > name="hibernate.connection.url">jdbc:hsqldb:hsql://localhost/zoocware</property> > <property name="hibernate.connection.username">sa</property> > <property name="hibernate.connection.password"></property> > > <!-- JDBC connection pool --> > <property name="hibernate.connection.pool_size">1</property> > > <!-- dialect --> > <property > name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property> > > <!-- envie echo de todos los SQL ejecutados a stdout --> > <property name="hibernate.show_sql">true</property> > > <mapping resource='Alimento.hbm.xml'></mapping> > <mapping resource='TipoAlimento.hbm.xml'></mapping> > <mapping resource='Lote.hbm.xml'></mapping> > <mapping resource='TipoLote.hbm.xml'></mapping> > <!-- > <mapping resource='EspecieReptil.hbm.xml'></mapping> > <mapping resource='Monitor.hbm.xml'></mapping> > <mapping resource='Movimiento.hbm.xml'></mapping> > <mapping resource='MovimientoLote.hbm.xml'></mapping> > <mapping resource='Nido.hbm.xml'></mapping> > <mapping resource='NivelIncubacion.hbm.xml'></mapping> > <mapping resource='PesoLote.hbm.xml'></mapping> > <mapping resource='Pieles.hbm.xml'></mapping> > <mapping resource='RangoTamano.hbm.xml'></mapping> > <mapping resource='SaldoLote.hbm.xml'></mapping> > <mapping resource='TamanoLote.hbm.xml'></mapping> > --> > </session-factory> > </hibernate-configuration> > ------------------------------------------------------------- > > C:\javacode\zoocware\zoocware\classes>java -classpath > ../lib/hibernate3.jar;../lib/hsqldb.jar;../lib/commons-collections-2.1.1.jar;../lib/commons-logging-1 > .0.4.jar;../lib/dom4j-1.6.1.jar;. > com.ctg.zoocware.hibernate.EjemploCrearAlimento > 16/04/2008 12:28:04 PM org.hibernate.cfg.Environment <clinit> > INFO: Hibernate 3.2.2 > 16/04/2008 12:28:04 PM org.hibernate.cfg.Environment <clinit> > INFO: hibernate.properties not found > 16/04/2008 12:28:04 PM org.hibernate.cfg.Environment buildBytecodeProvider > INFO: Bytecode provider name : cglib > 16/04/2008 12:28:04 PM org.hibernate.cfg.Environment <clinit> > INFO: using JDK 1.4 java.sql.Timestamp handling > 16/04/2008 12:28:05 PM org.hibernate.cfg.Configuration configure > INFO: configuring from resource: /hibernate.cfg.xml > 16/04/2008 12:28:05 PM org.hibernate.cfg.Configuration > getConfigurationInputStream > INFO: Configuration resource: /hibernate.cfg.xml > 16/04/2008 12:28:05 PM org.hibernate.cfg.Configuration addResource > INFO: Reading mappings from resource : Alimento.hbm.xml > 16/04/2008 12:28:05 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.ctg.zoocware.base.Alimento -> RACION_ALIMENTO > 16/04/2008 12:28:06 PM org.hibernate.cfg.Configuration addResource > INFO: Reading mappings from resource : TipoAlimento.hbm.xml > 16/04/2008 12:28:06 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.ctg.zoocware.beans.TipoAlimento -> TIPO_ALIMENTO > 16/04/2008 12:28:06 PM org.hibernate.cfg.Configuration addResource > INFO: Reading mappings from resource : TipoLote.hbm.xml > 16/04/2008 12:28:06 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.ctg.zoocware.beans.TipoLote -> TIPO_LOTE > 16/04/2008 12:28:06 PM org.hibernate.cfg.Configuration addResource > INFO: Reading mappings from resource : Lote.hbm.xml > 16/04/2008 12:28:06 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.ctg.zoocware.beans.Lote -> LOTE > 16/04/2008 12:28:06 PM org.hibernate.cfg.Configuration doConfigure > INFO: Configured SessionFactory: null > Exception in thread "main" > com.ctg.zoocware.dao.DataAccessLayerExceptionZooc: > org.hibernate.MappingException: An association from the table LOTE refers to > an unmapped class: TipoLote > at > com.ctg.zoocware.dao.HibernateFactoryZooc.buildIfNeeded(HibernateFactoryZooc.java:81) > at > com.ctg.zoocware.dao.AbstractDaoZooc.<init>(AbstractDaoZooc.java:27) > at com.ctg.zoocware.dao.AlimentoDao.<init>(AlimentoDao.java:19) > at > com.ctg.zoocware.hibernate.EjemploCrearAlimento.main(EjemploCrearAlimento.java:20) > Caused by: org.hibernate.MappingException: An association from the table > LOTE refers to an unmapped class: TipoLote > at > org.hibernate.cfg.Configuration.secondPassCompileForeignKeys(Configuration.java:1252) > at > org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1170) > at > org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1286) > at > com.ctg.zoocware.dao.HibernateFactoryZooc.configureSessionFactory(HibernateFactoryZooc.java:93) > at > com.ctg.zoocware.dao.HibernateFactoryZooc.buildIfNeeded(HibernateFactoryZooc.java:79) > ... 3 more > > C:\javacode\zoocware\zoocware\classes> > > > >