função verificar cpf existente no banco

Boa tarde galera! Estou com uma duvida estou com um formulário de cadastro em jsf e um controle que faz a validação dos campos, no campo cpf gostaria de comparar o cpf digitado com os que já estão no banco.

meu codigo do controle:

} else if (new UsuarioDao().cpfExistente(usuario.getCpf())){ mensagem = "Erro. O CPF digitado já está cadastrado."; dadosValidos = false; }

meu usuario dao:

public boolean cpfExistente(String cpf) throws Exception{ s = HibernateUtil.getInstance(); s.get(Usuario.class, cpf); return cpfExistente(cpf); }

obs: no campo cpf da tabela usuario do banco eu coloquei unique mas não queria deixar estourar akele erro horivel para o usuario.

cara, basta usar HQL e mandar ele pesquisar e pronto, vc pegar o valor do jsf pelo beans e comparar com o que o HQL encontrar lá.

veja o exemplo a seguir: http://blog.camilolopes.com.br/busca-com-hibernate-annotation-jsf/

s.get(Usuario.class, cpf);

Isso aqui só funcionaria SE o cpf fosse fosse seu atributo de identificação (@Id) de objeto.

usando H-QL/JPA-QL seria algo como

SELECT u FROM Usuario u WHERE u.cpf = ?

[]'s