Exception em getSingleResult() (JPA)

boa tarde,

estou com uma duvida…
com o seguinte metodo:

public Unidade haveOne(String un) { EntityManagerFactory emf = javax.persistence.Persistence.createEntityManagerFactory("budgetPU"); EntityManager em = emf.createEntityManager(); em.getTransaction().begin(); Unidade u = new Unidade(); try { u = (Unidade) em.createNamedQuery("Unidade.findByUnidade").setParameter("unidade", un).getSingleResult(); em.getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); em.getTransaction().rollback(); } finally { em.close(); } return u; }

quando ele nao encontra um resultado ele dispara um exception:
javax.persistence.NoResultException: getSingleResult() did not retrieve any entities.

ele esta enviando null quando nao encontra… e é isso que eu quero… mas esta disparando esse exception…

tem alguma forma dele entender que pode enviar resultados nulos tmb sem disparar exception ?

obrigado

tente o getResultList()… e trate a Lista
o getSingleResult() é usado para pegar referencias de entidades existentes…

hummmmm saquei !!! entendi !
show de bola… ele vai me retornal uma lista vazia…
ai eu ja sei que nao achou nada…
pow brigadao!!!

ps.: se deu bem hein… pegou as 3 heuaheuhaeuae

abraço