hibernate - problema de mapping

estebanja
31 de Marzo del 2006
Hola què tal, trato de correr una aplicaciòn (hecha con struts) en tomcat y sale el siguiente error:

Aparece la pila de errores y el error raiz dice:
"org.hibernate.MappingException: Could not read mappings from resource: PersonaBO.hbm.xml"

Los contenidos de los archivos pertinentes son:

“PersonaBO.hbm.xml”

<?xml version="1.0"?>
<!-- <!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> -->

<hibernate-mapping>
<class name="PersonaBO" table="persons">
<id name="id" column="id" type="java.lang.Integer" unsaved-value="null">
<generator class="native"/>
</id>
<property name="nombre" column="nombre" type="java.lang.String"/>
<property name="apellido" column="apellido" type="java.lang.String"/>
<property name="edad" column="edad" type="java.lang.Integer"/>
<property name="estadoCivil" column="estadoCivil" type="java.lang.String"/>
</class>
</hibernate-mapping>


"PersonaBO.java"
Es un bean que tiene nombre, apellido, edad y estado civil de una persona


---------------------------------------

“hibernate.cfg.xml”

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driv er</property>
<property name="connection.url">jdbc:mysql://localhost/personas</property>
<property name="connection.username">admin</property>
<property name="connection.password"></property>
<property name="dialect">net.sf.hibernate.dialect.MySQLDiale ct</property>
<property name="use_outer_join">true</property>
<property name="transaction.factory_class">net.sf.hibernate. transaction.JDBCTransactionFactory</property>
<property name="show_sql">true</property>

<!-- Mapping files -->
<mapping resource="PersonaBO.hbm.xml"/>
</session-factory>

</hibernate-configuration>
----------------------------------------
- Ambos archivos estàn en web-inf/classes

- y tengo persons.frm y db.opt
en web-inf (en otro momento lo puse en web-inf). Estos son los archivos generados por mysql.
La tabla se llama persons

No sè que hacer.
Bueno, desde ya muchas gracias
Saludos




lola_mera
31 de Marzo del 2006
Hola, creo que esos ficheros de configuración deberías tenerlos en web-inf/src, yo utilizaba tb hibernate y mis ficheros de mapeo (hbm.xml) los tenia en el src, dentro de la carpeta vista (src/vista) donde tenias todos los bean y el hibernate.cfg.xml lo tenia en src, de forma que cuando hacia el mapeo le decia la ruta
<mapping resource="vista/PersonaBO.hbm.xml"/>

espero que te haya sido de ayuda!
Suerte!

estebanja
31 de Marzo del 2006
Buenas....

En WEB-INF ahora una carpeta "vista" donde puse PersonaBO.xml

Tendrè bien instalado el hibernate? A ver, les cuento què es lo que tengo ahora:

en WEB-INF/LIB tengo:
cglib2.jar
commons-logging.jar
hibernate3.jar
jta.jar
commons-collections.jar
dom4j.jar
jdbc2_0-stdext.jar
log4j.jar

odmg.jar no la tengo

en WEB-INF/classes tengo
hibernate.cfg.xml
log4j.properties

en WEB-INF/classes/vista tengo
PersonaBO.class
Persona.abm.xml

1) Faltan agregar otros archivos de hibernate?????????
2) Particularme hibernate-mapping-3.0.dtd hay que ponerlo en algùn lado??????
3) hace falta crear una carpeta src?????

desde ya muchas gracias
Saludos