Galera, já pesquisei no fórum, mas não encontrei nada que pudesse me ajudar.
Tenho uma classe de entidade que possui um relacionamento unidirecional OneToMany da seguinte forma:
@OneToMany(cascade = CascadeType.ALL)
private List<PorteValores> porteValoresList = null;
O outro lado do relacionamento está assim:
@ManyToOne(optional = false)
@JoinColumn(name = "nr_porte", referencedColumnName = "nr_porte", insertable = false, updatable = false)
private Porte porte;
Bem, no banco de dados eu tenho um registro que, não possui lista de valores, e quando carrego a lista por meio do método getPorteValoresList() o netbeans me retorna o seguinte erro:
>Exception occurred in target VM:
Internal Exception: org.postgresql.util.PSQLException: ERROR: relation "porte_porte_valores" does not exist
Posição: 54
Error Code: 0
Call: SELECT t1.vl_porte, t1.dt_vigencia, t1.nr_porte FROM porte_porte_valores t0, dbsghu.dbsghu.porte_valores t1 WHERE ((t0.Porte_nr_porte = ?) AND ((t1.nr_porte = t0.nr_porte) AND (t1.dt_vigencia = t0.dt_vigencia)))
bind => [1 parameter bound]
Query: ReadAllQuery(name="porteValoresList" referenceClass=PorteValores sql="SELECT t1.vl_porte, t1.dt_vigencia, t1.nr_porte FROM porte_porte_valores t0, dbsghu.dbsghu.porte_valores t1 WHERE ((t0.Porte_nr_porte = ?) AND ((t1.nr_porte = t0.nr_porte) AND (t1.dt_vigencia = t0.dt_vigencia)))")
org.eclipse.persistence.exceptions.DatabaseException:
Internal Exception: org.postgresql.util.PSQLException: ERROR: relation "porte_porte_valores" does not exist
Posição: 54
Error Code: 0
Call: SELECT t1.vl_porte, t1.dt_vigencia, t1.nr_porte FROM porte_porte_valores t0, dbsghu.dbsghu.porte_valores t1 WHERE ((t0.Porte_nr_porte = ?) AND ((t1.nr_porte = t0.nr_porte) AND (t1.dt_vigencia = t0.dt_vigencia)))
bind => [1 parameter bound]
Query: ReadAllQuery(name="porteValoresList" referenceClass=PorteValores sql="SELECT t1.vl_porte, t1.dt_vigencia, t1.nr_porte FROM porte_porte_valores t0, dbsghu.dbsghu.porte_valores t1 WHERE ((t0.Porte_nr_porte = ?) AND ((t1.nr_porte = t0.nr_porte) AND (t1.dt_vigencia = t0.dt_vigencia)))")
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:340)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:679)
…
Sendo que se a lista está vazia deveria retornar null ou apenas a lista vazia o que não ocorre, como posso resolver isso?
Desde já agradeço a todos.
Tenta dar uma olhada na sua sintaxe, tá falando que porte_porte_valores não existe, não sei seu código do banco, mas creio que esteja dando erro pq n encontrou essa tabela