Stack Overflow en español Asked by Dani Cantely on December 28, 2021
Al ejecutar la consulta calculoTotalPlazasLicitadasPorProvincia obtengo el ‘org.hibernate.QueryException: could not resolve property: VmProvincia of: es.assda.ged.persistence.model.TGenPlazasLicitadas‘
No entiendo porqué me dice que no puede resolver la propiedad cuando creo que esta mapeada correctamente.
En BD esta hecha la FK de TGenPlazasLicitadas a VmProvincia con la salvedad de que puede ser nula.
Con @JoinColumn(name = "IDPROVIN", nullable = true) ocurre igual
Mapeo de TGenPlazasLicitadas:
...
private VmProvincia VmProvincia;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "IDPROVIN")
public VmProvincia getVmProvincia() {
return VmProvincia;
}
public void setVmProvincia(VmProvincia vmProvincia) {
VmProvincia = vmProvincia;
}
...
Consulta HQL:
...
StringBuilder hql = new StringBuilder();
hql.append(" SELECT DISTINCT plalic.idplalic ");
hql.append(" FROM TGenPlazLiciOfer AS plalicofer ");
hql.append(" INNER JOIN plalicofer.TGenPlazasLicitadas AS plalic ");
hql.append(" INNER JOIN plalicofer.TGenPlazasConv AS pconv ");
hql.append(" INNER JOIN pconv.TGenConvenios AS conv ");
hql.append(" INNER JOIN plalic.TGenLicitaciones AS licitaciones ");
hql.append(" INNER JOIN plalic.VmProvincia AS provincia ");
hql.append(" WHERE plalicofer.fechbaja IS NULL ");
hql.append(" AND plalic.fechbaja IS NULL ");
hql.append(" AND pconv.fechbaja IS NULL ");
hql.append(" AND conv.fechbaja IS NULL ");
hql.append(" AND licitaciones.fechbaja IS NULL ");
hql.append(" AND provincia.fechbaja IS NULL ");
hql.append(" AND provincia.idprovin = :idprovin ");
hql.append(" AND licitaciones.caracter in (:caracter) ");
...
En Java Hibernate, el nombre de la propiedad debería ser:
private VmProvincia vmProvincia;
Con la primera letra en minúscula, ya que el objeto empieza en mayúscula.
También modifica el set y cambia el actual por este:
public void setVmProvincia(VmProvincia vmProvincia) {
this.vmProvincia = vmProvincia;
}
Aquí le dices que la propiedad de la entidad, this.propiedad, obtenga el valor del pasado por parametro.
Por otro lado, veo que las anotaciones las tienes puestas a nivel del get, lo ideal sería tenerlas a nivel de la propiedad.
Answered by Ninoecf on December 28, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP