Problema chato demais aqui galera.
Aplicação EJB3, visão JSF, com persistência Hibernate e servidor JBoss, ok?
Simples… tenho uma pagina de consulta. Existe uns filtros nela coma faixa de data e alguns outros. Mas nao tou escolhendo nenhum filtro. Mando tudo vazio(null) pra consulta, pois quero q venha todos os registros. Minha consulta eh uma NamedQuery, blz?
No DAO, eu seto as variaveis, por exemplo:
q1.setParameter("ano", ano); // ano = null
q1.setParameter("datai", dataInicial); // dataInicial = NULL.
q1.setParameter("dataf", dataFinal); // dataFinal = null
Depois de setar tudo como null, tento executo a query:
E recebo o seguinte erro:
17:08:13,968 ERROR [STDERR] Caused by: java.sql.SQLException: ORA-00932: tipos de dados inconsistentes: esperava DATE obteve BINARY
Se na visao, eu definir as datas(ou seja, nao serao mais null) e deixar todo o resto null, o erro eh o seguinte:
17:08:13,968 ERROR [STDERR] Caused by: java.sql.SQLException: ORA-00932: tipos de dados inconsistentes: esperava NUMBER obteve BINARY
E assim sucessivamente. Enquanto tiver campos null, a consulta não eh executada. Procurei em varios foruns uma reposta e até agora nada.
O mais interessante: No OC4J funcionava tuuuuuuudo beleza. Ai decidiram aqui mudar pra JBoss… puff… ja resolvi 231 pepinos(normal de migração)… mas esse ae… ta cabuloso.
Poderia solucionar isso montando a query na maos mesmo… StringBuilder e tal. Mas tou imprecionado e CUIROSO demais pra saber pq nao posso passar um null pra uma NamedQuery no Jboss. Devo estar fazendo algo errado.
Se alguem puder dar uma ajuda… agradeço demais!
Abração galera