Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/12/2014, 14:09
kochas_40
 
Fecha de Ingreso: octubre-2014
Mensajes: 29
Antigüedad: 9 años, 6 meses
Puntos: 1
Respuesta: Hibernate no me hace el mapeo con objetos

Archivos Generados al Hacer el Mapeo desde la MAC, hacia la misma Base de datos, pero cargada en el Mysql de la PC:

Archivo de configuracion(hibernate.cfg.xml):
Código:
<?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>
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://[IP_DE_LA_PC]:3306/pruebaagencia?zeroDateTimeBehavior=convertToNull</property>
    <property name="hibernate.connection.username">pruebas</property>
    <property name="hibernate.connection.password">pass</property>
    <mapping resource="com/prueba/Agencia.hbm.xml"/>
    <mapping resource="com/prueba/Automovil.hbm.xml"/>
  </session-factory>
</hibernate-configuration>
Archivo de ingenieria inversa (hibernate.reveng.xml):
Código:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd">
<hibernate-reverse-engineering>
  <schema-selection match-catalog="pruebaagencia"/>
  <table-filter match-name="agencia"/>
  <table-filter match-name="automovil"/>
</hibernate-reverse-engineering>
POJOs
Agencia.java
Código:
package com.prueba;
// Generated 10-dic-2014 13:31:22 by Hibernate Tools 3.2.1.GA


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

/**
 * Agencia generated by hbm2java
 */
public class Agencia  implements java.io.Serializable {
     private Integer idAgencia;
     private String nombre;
     private String direccion;
     private Set automovils = new HashSet(0);

    public Agencia() {
    }

    public Agencia(String nombre, String direccion, Set automovils) {
       this.nombre = nombre;
       this.direccion = direccion;
       this.automovils = automovils;
    }
   
    public Integer getIdAgencia() {
        return this.idAgencia;
    }
    
    public void setIdAgencia(Integer idAgencia) {
        this.idAgencia = idAgencia;
    }
    public String getNombre() {
        return this.nombre;
    }
    
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    public String getDireccion() {
        return this.direccion;
    }
    
    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }
    public Set getAutomovils() {
        return this.automovils;
    }
    
    public void setAutomovils(Set automovils) {
        this.automovils = automovils;
    }
}
Agencia.hbm.xml
Código:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 17-dic-2014 13:31:22 by Hibernate Tools 3.2.1.GA -->
<hibernate-mapping>
    <class name="com.prueba.Agencia" table="agencia" catalog="pruebaagencia">
        <id name="idAgencia" type="java.lang.Integer">
            <column name="idAgencia" />
            <generator class="identity" />
        </id>
        <property name="nombre" type="string">
            <column name="Nombre" length="45" />
        </property>
        <property name="direccion" type="string">
            <column name="Direccion" length="45" />
        </property>
        <set name="automovils" inverse="true">
            <key>
                <column name="idAgencia" not-null="true" />
            </key>
            <one-to-many class="com.prueba.Automovil" />
        </set>
    </class>
</hibernate-mapping>
Atomovil.java
Código:
package com.prueba;
// Generated 10-dic-2014 13:31:22 by Hibernate Tools 3.2.1.GA

/**
 * Automovil generated by hbm2java
 */
public class Automovil  implements java.io.Serializable {

     private Integer idAutomovil;
     private Agencia agencia;
     private String noSerie;
     private String color;
     private String marca;

    public Automovil() {
    }

	
    public Automovil(Agencia agencia) {
        this.agencia = agencia;
    }
    public Automovil(Agencia agencia, String noSerie, String color, String marca) {
       this.agencia = agencia;
       this.noSerie = noSerie;
       this.color = color;
       this.marca = marca;
    }
   
    public Integer getIdAutomovil() {
        return this.idAutomovil;
    }
    
    public void setIdAutomovil(Integer idAutomovil) {
        this.idAutomovil = idAutomovil;
    }
    public Agencia getAgencia() {
        return this.agencia;
    }
    
    public void setAgencia(Agencia agencia) {
        this.agencia = agencia;
    }
    public String getNoSerie() {
        return this.noSerie;
    }
    
    public void setNoSerie(String noSerie) {
        this.noSerie = noSerie;
    }
    public String getColor() {
        return this.color;
    }
    
    public void setColor(String color) {
        this.color = color;
    }
    public String getMarca() {
        return this.marca;
    }
    
    public void setMarca(String marca) {
        this.marca = marca;
    }
}
Automovil.hbm.xml
Código:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 17-dic-2014 13:31:22 by Hibernate Tools 3.2.1.GA -->
<hibernate-mapping>
    <class name="com.prueba.Automovil" table="automovil" catalog="pruebaagencia">
        <id name="idAutomovil" type="java.lang.Integer">
            <column name="idAutomovil" />
            <generator class="identity" />
        </id>
        <many-to-one name="agencia" class="com.prueba.Agencia" fetch="select">
            <column name="idAgencia" not-null="true" />
        </many-to-one>
        <property name="noSerie" type="string">
            <column name="noSerie" length="45" />
        </property>
        <property name="color" type="string">
            <column name="color" length="45" />
        </property>
        <property name="marca" type="string">
            <column name="marca" length="45" />
        </property>
    </class>
</hibernate-mapping>
De esta forma, los atributos quedan de la siguiente manera:

Agencia.java
Código:
private Integer idAgencia;
private String nombre;
private String direccion;
private Set automovils = new HashSet(0);
Automovil.java

Código:
private Integer idAutomovil;
private Agencia agencia;
private String noSerie;
private String color;
private String marca;
De esta forma es la que lo quiero mapear, solo que desde la misma mac, sin necesidad de cargar la base de datos en mysql de la PC.

Que es lo que necesito hacer?

Como comente en mi primer post, creo que tiene que ver con mysql, ya que es la unica variante entre los 2 mapeos, pero no se que cambiar.

A que se debe que al mapear en MAC con su propio mysql me entrega los POJOs de una forma, y al mapear desde la misma MAC, pero hacia Mysql en la PC (con Windows 7 y la misma base de datos que en la MAC), el resultado es diferente?

De antemano muchas gracias, y espero haber sido mas especifico, aun asi, cualquier duda la contestare.

Muchas gracias

Saludos