Problemas con hibernate

a_yela
08 de Junio del 2006
Hola, llevo toda la semana intentando solucionar un problemilla en mi estructura de hibernate, la cuestion es en una relacion 1:N, (curiosamente la N:M me funciona perfectamente). Esplico un poco:

Tengo un producto que tiene q ser de un tipo, y un tipo puede tener varios productos, como veis no es dificil.

Estos son los mapeos:

******* producto
<class name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"es.sgi.servicios.productos.Producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" table=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">
<id name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"producto_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Producto_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" type=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"int\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" length=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"3\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">
<generator class=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"increment\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/>
</id>

<property name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"vendedor\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Vendedor\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" type=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"string\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" length=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"30\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" unique=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" optimistic-lock=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" lazy=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" generated=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"never\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" />
<property name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"nombre_producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Nombre_producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" type=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"string\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" length=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"30\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" unique=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" optimistic-lock=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" lazy=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" generated=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"never\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" />

<set name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"empresasPorProductos\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" table=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"empresa_producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" inverse=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">
<key column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Producto_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/>
<many-to-many column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Empresa_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" class=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"es.sgi.servicios.empresas.Empresa\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/>
</set>

<many-to-one name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"tipo_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"
column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Tipo_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"
class=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"es.sgi.servicios.productos.TipoProducto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"
not-null=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/>

</class>

****** tipo producto

<class name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"es.sgi.servicios.productos.TipoProducto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" table=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"tipo_producto\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">
<id name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"tipo_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Tipo_id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" type=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"int\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" length=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"2\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">
<generator class=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"increment\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/>
</id>

<property name=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"descripcion\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" column=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"Descripcion\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" type=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"string\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" length=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" unique=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" optimistic-lock=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" lazy=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"false\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" generated=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"never\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" />

</class>


Bien segun lo tengo entiedo que yo al obtener un producto (pto) obtendria el tipo al que pertenece de la siguiente manera pto.getTipo_Id(), esto me devolvera un objeto de la clase tipoProducto. Bien PORQUE NO LO HACE.

A una puntualizacion al insertar un producto nuevo y asignarle un tipo producto inserta perfectamente el ide del tipo producto en la base de datos.

Un saludo y muchas gracias por anticipado.