pessoal tem uma query q me retorna um objeto, so q se tiver um parametro errado ele da “javax.persistence.NoResultException” eu queria que ele me retornasse nullo ! eu tenho que usar um try para isso mesmo ? ou como faco para na hora do meu Query.getSingleResult() ele retornar nullo sem dar erro ?
Caused by: javax.persistence.NoResultException: No entity found for query
at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:275)
Query.getResultList() não retorna null, ele retorna uma lista vazia em caso não hajam resultados p/ a query. Agora o Query.getSingleResult() lançar uma exceção quando nenhum resultado é encontrado está correto. O Java não possui meios eficientes de se implementar NullObject então notificar da ausência de resultados por meio de uma exceção me parece melhor q retornar null. Afinal de qualquer forma vc vai precisar escrever um código só p/ testar se a query retornou algum resultado, então q seja um código dedicado a esse tipo de checagem como um bloco try/catch.