Foros del Web » Programación para mayores de 30 ;) » Java »

hibernate - mapeo

Estas en el tema de hibernate - mapeo en el foro de Java en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 28/03/2006, 13:41
 
Fecha de Ingreso: febrero-2006
Mensajes: 57
Antigüedad: 18 años, 3 meses
Puntos: 0
hibernate - mapeo

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
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
  #2 (permalink)  
Antiguo 29/03/2006, 17:23
 
Fecha de Ingreso: febrero-2006
Mensajes: 57
Antigüedad: 18 años, 3 meses
Puntos: 0
sobre hibernate-problema de mapping

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

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

Faltan agregar otros archivos de hibernate?????????
Particularme hibernate-mapping-3.0.dtd hay que ponerlo en algùn lado??????

muchas gracias
Saludos
  #3 (permalink)  
Antiguo 30/03/2006, 02:26
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 7 meses
Puntos: 51
Este.... tu fichero se llama ¿Persona.abm.xml o PersonaBO.hbm.xml?

Si no es eso (error de transcripcion), pega la pila completa de errores. A veces el error raiz es solo una consecuencia y el problema real está mñas abajo.

Saludos
  #4 (permalink)  
Antiguo 30/03/2006, 10:39
 
Fecha de Ingreso: febrero-2006
Mensajes: 57
Antigüedad: 18 años, 3 meses
Puntos: 0
Buenas.....Es PersonaBO.hbm.xml (lo habìa copiado mal). Respecto de la pila, este es el error de màs abajo.

La pila completa de errores es:

type Informe de Excepción
mensaje
descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.
excepción
javax.servlet.ServletException
org.apache.struts.action.RequestProcessor.processE xception(RequestProcessor.java:523)
org.apache.struts.action.RequestProcessor.processA ctionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(Act ionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(Acti onServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet .java:709)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
causa raíz
exceptions.DatastoreException
exceptions.DatastoreException.datastoreError(Datas toreException.java:28)
SearchPersonAction3.execute(SearchPersonAction3.ja va:67)
org.apache.struts.action.RequestProcessor.processA ctionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(Act ionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(Acti onServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet .java:709)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
causa raíz
exceptions.DatastoreException
exceptions.DatastoreException.datastoreError(Datas toreException.java:28)
PersonsManager2.init(PersonsManager2.java:56)
PersonsManager2.<init>(PersonsManager2.java:18)
SearchPersonAction3.execute(SearchPersonAction3.ja va:26)
org.apache.struts.action.RequestProcessor.processA ctionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(Act ionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(Acti onServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet .java:709)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
causa raíz
org.hibernate.MappingException: Could not read mappings from resource: vista/PersonaBO.hbm.xml
org.hibernate.cfg.Configuration.addResource(Config uration.java:484)
org.hibernate.cfg.Configuration.parseMappingElemen t(Configuration.java:1453)
org.hibernate.cfg.Configuration.parseSessionFactor y(Configuration.java:1421)
org.hibernate.cfg.Configuration.doConfigure(Config uration.java:1402)
org.hibernate.cfg.Configuration.doConfigure(Config uration.java:1378)
org.hibernate.cfg.Configuration.configure(Configur ation.java:1298)
org.hibernate.cfg.Configuration.configure(Configur ation.java:1284)
PersonsManager2.init(PersonsManager2.java:53)
PersonsManager2.<init>(PersonsManager2.java:18)
SearchPersonAction3.execute(SearchPersonAction3.ja va:26)
org.apache.struts.action.RequestProcessor.processA ctionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(Act ionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(Acti onServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet .java:709)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)

Gracias y
Saludos
  #5 (permalink)  
Antiguo 30/03/2006, 15:28
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 7 meses
Puntos: 51
Ummm, extraño. Esto es lo que te sale en la pagina al intentar acceder, ¿no? ¿Has mirado a ver si hay mas informacion en el log de errores del Tomcat? Normalmente el Hibernate es mas... verborreico y deberia decirte más cosas.
El problema parece ser algun problema en el fichero, que puede que tenga algun error pequeño de sintaxis o de formato. Veo que tienes la declaracion del DTD comentada... ¿por algun motivo?
  #6 (permalink)  
Antiguo 31/03/2006, 07:59
 
Fecha de Ingreso: febrero-2006
Mensajes: 57
Antigüedad: 18 años, 3 meses
Puntos: 0
Buenas......parece ser que es como decìs vos, GreenEyed (error de sintaxis "pequeño) en algùn fichero). Estaba leyendo otro "hibernate.cfg.xml" al que le faltaban unas barras y que referenciaba a otro paquete, donde no estaba este "bean".
Pero tambièn quizàs haya influido que mi tabla contenìa menos campos que la clase bean (PersonaBO) con la cual mapeaba.
El error desapareciò.
Muchas gracias por la ayuda.
Al margen de esto, GreenEyed, a què te referìs al decir que tengo "comentada la dtd" ¿Cuál?
Saludos


Saludos
  #7 (permalink)  
Antiguo 01/04/2006, 10:40
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 7 meses
Puntos: 51
En el ejemplo que mostraste, el fichero “PersonaBO.hbm.xml” tiene esto al inicio:

Cita:
<?xml version="1.0"?>
<!-- <!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> -->
Lo cual implica que la declaracion del DOCTYPE esa comentada (por el <!-- y el -->) y simplemente me preguntaba por que sería.

Me alegro que encontraras el problema.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:37.