Olá boa noite.
Estou tentando fazer uma pesquisa com jpa, a mesma só funciona quando localiza um registro na base, quando a query não localiza nada deveria voltar nula mais gera um erro. alguém sabe o porque?
segue abaixo o código que estou utilizando.
EntityManager em = null;
LogFolhaDePonto logPonto = null;
em = new JPAUtil().getEntityManager();
Query qry = em.createQuery("select o from LogFolhaDePonto o where o.funcionario.codigo=" + codigoFuncionario + " and o.data='"+ Util.DateConvertBase(Data) + "'");
logPonto = (LogFolhaDePonto)qry.getSingleResult();
return logPonto;
Porque esse é o comportamento normal desse método.
Aqui explica um pouco mais sobre isso: JPA: Mini Livro - Primeiros passos e conceitos detalhados.
Voce pode circundar esse seu codigo com try-catch, e tratar o nullpointerexception, e dentro do catch voce poe return null;
faz um try catch
capturando a exception NoresultException
e trata ela.
[quote=rof20004]Voce pode circundar esse seu codigo com try-catch, e tratar o nullpointerexception, e dentro do catch voce poe return null;[/quote]Desculpe mas… NullPointer onde?
Desculpe, pega Exception mesmo, e retorne nulo no catch. Ele falou gera um erro, pensei que fosse nullpointer, foi o sono ‘-’.