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

Duda con fk compuesta en JPA

Estas en el tema de Duda con fk compuesta en JPA en el foro de Java en Foros del Web. Tengo dos tablas: -Grupos: Con las siguientes columnas: Nombre_Servicio Responsable Descripcion FechaBaja Donde Nombre_Servicio y Responsable forman la pk -Ing_Pruebas: Nombre Grupo Responsable FechaBaja Donde ...
  #1 (permalink)  
Antiguo 23/04/2009, 08:45
 
Fecha de Ingreso: noviembre-2007
Mensajes: 121
Antigüedad: 16 años, 5 meses
Puntos: 0
Duda con fk compuesta en JPA

Tengo dos tablas:

-Grupos: Con las siguientes columnas:

Nombre_Servicio
Responsable
Descripcion
FechaBaja

Donde Nombre_Servicio y Responsable forman la pk


-Ing_Pruebas:

Nombre
Grupo
Responsable
FechaBaja
Donde Nombre y grupo forman la pk y grupo y responsables forman una fk de la tabla Grupos


Ahora mediante la ingenieria inversa obtuve los pojos. Una clase Grupos.java, otra IngPruebas.java, y las clases idCorrespondientes (gruposid.java y ingpruebasid.java)

El problema que tengo es que al insertar un registro en la tabla ing_pruebas no me mapea la columna responsable, parte del mapeo es el siguiente:

En la clase ingPruebas.java

...

@EmbeddedId
@AttributeOverrides( {
@AttributeOverride(name = "nombre", column = @Column(name = "NOMBRE", nullable = false, length = 100)),
@AttributeOverride(name = "grupo", column = @Column(name = "GRUPO", nullable = false, length = 100)) })
public IngPruebasId getId() {
return this.id;
}
.....


@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns( {
@JoinColumn(name = "GRUPO", referencedColumnName = "NOMBRE_SERVICIO", insertable = false ,nullable = false, updatable = false),
@JoinColumn(name = "RESPONSABLE", referencedColumnName = "RESPONSABLE", insertable = false, nullable = false,updatable = false) })
public Grupos getGrupos() {
return this.grupos;
}

El campo responsable esta como una joincolumn con insertable=false, el probelma es que si quito eso me da probelmas porque tengo que quitarlo en las dos columnas join, y si lo quito en las dos me dice que el campo grupo esta mapeado dos veces.

¿podría indicarme alguien como se hace el mapeo para que en el insert tb tome la columna responsable?
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:15.