Dúvida Relacionamento Criteria

1 resposta
R

Estou com problema ao pesquisar por informações de um relacionamento utilizando Criteria.

public class Venda {

@ManyToOne
@JoinColumn(name="cliente")
private Cliente cliente;

}

public class Cliente {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(columnDefinition="SMALLINT(4) UNSIGNED ZEROFILL")
private int codigo;

private Boolean status;

}

Criteria para buscar todas as vendas de um determinado cliente, porém só busca esse valor se o cliente está ativo:

Criteria c = this.session.createCriteria(Venda.class);
c.add(Restrictions.eq("cliente.codigo", codigo))
.add(Restrictions.eq("cliente.status", Status.ATIVO));

//Status.ATIVO = true

Se eu pesquiso apenas pelo código funciona. Se eu pesquiso também pelo status diz que o campo não existe. Eu preciso fazer algum Join diferente?

1 Resposta

D

Esta faltando a anotação @column no campo status, dizendo a quel campo se refere na tabela.

Criado 13 de outubro de 2010
Ultima resposta 13 de out. de 2010
Respostas 1
Participantes 2