Hibernate nao filtra registros

2 respostas
B

Pessoal,

Tenho uma classe Usuario que possui um atributo da classe Empresa. Utilizo Criteria para passar o objeto Usuario com os atributos setados e consequentemente me retornar os resultados do BD. Quando seto parametros como nome, email, login, os dados sao retornados corretamente do BD. Porem, quando seto o atributo empresa no objeto usuario, o select nao eh criado corretamente, ou seja, o where fica assim:

where 1=1, ou seja, nao utiliza os dados do objeto empresa para criar o where do select…

Seria alguma opcao que devo setar no metodo onde eu utilizo o Criteria ???

Obrigado…

2 Respostas

A

Fala bobisiqueira, blz cara

seguinte como estes objetos estao mapeados no Usuario.hbm.xml, pois vc tera que ter uma relacao no xml para que os objtos possam conversar. posta o codigo ae

vlws

B

Classe usuario:

@Entity
@Table(name = "Usuarios")
public class Usuario implements Serializable {

	@Id
	@Column(name = "id_usuario", nullable = false)
	@GeneratedValue(strategy = GenerationType.AUTO)
	private Integer id_usuario;

	@Column(name = "login", nullable = true)
	private String login;

	@Column(name = "senha", nullable = true)
	private String senha;

	@ManyToOne(fetch=FetchType.EAGER)
	@JoinColumn(name = "id_Empresa")
	private Empresa empresa;

}

O metodo da classe DAO que faz a busca:

    public List<T> findByTeste(final T example)  {
        Criteria criteria = getSession().createCriteria(example.getClass());
        criteria.add(Example.create(example));
        final List<T> result = criteria.list();
        return result;
    }

Mais uma vez, obrigado !!!

Criado 18 de novembro de 2007
Ultima resposta 19 de nov. de 2007
Respostas 2
Participantes 2