Pessoal,
Estou com uma dúvida que está me tirando o sono.
Tenho uma tabela “Licitacao” com os seus atributos e que cria uma
outra tabela:
@ElementCollection(targetClass = String.class)
@JoinTable(name = "Licitacao_Arquivos", uniqueConstraints =
{@UniqueConstraint(columnNames = {"licitacao", "arquivos"})},
joinColumns = @JoinColumn(name = "licitacao"))
@Column(name = "arquivos", length = 2000, nullable = true)
private Set<String> arquivos = new java.util.HashSet<String>();
Quando vou inserir os dados no cadastro, funciona como o esperado. Mas
quando vou fazer a consulta da o seguinte erro:
org.hibernate.hql.ast.QuerySyntaxException: Licitacao_Arquivos is not
mapped [select l from br.teste.Licitacao
public List<Licitacao> buscarPorCodigo(Long id) throws Exception {
List<Licitacao> resultado;
Query q = session.createQuery("select l from Licitacao l,
Licitacao_Arquivos la where l.id = :id" +
" and l.id = la.licitacao");
q.setLong("id", id);
return resultado = q.list();
}
O hibernate.cfg.xml está assim:
<mapping class="br.teste.Licitacao" />
Como faço para mapear o “Licitacao_Arquivos” no Hibernate.cfg.xml
sendo que está dentro da classe “Licitacao”?
Lembrando que consultando pelo SQL Server ele faz a consulta sem
problemas.
Grato.