Erro java.lang.NullPointerException (RESOLVIDO)
Estou fazendo uma consulta em Hibernate, só que quando compilo ela me gera o erro Java.lang.NullPointerException .
Debugando descobri que o erro está no meu WHERE, como estou convertendo minha data e hora, posso estar convertendo errado ? ?
tem algum erro visivel ?!
Nunca fiz consulta em Hql, e também sou nova em Java..
Estou quebrando a cabeça há uma semana. . =/
alguém pode me ajudar ?
Valeu!
String hql = "SELECT f.sigla, f.nome, f.tipo, f.n_apropriacao, f.local, f.centroCusto, f.descricaoCC, h.hora, h.dt_Dia as data, h.destino as registro ";
hql += "FROM Funcionario f, Horario h ";
hql += "WHERE to_date(h.dt_Dia, 'dd/MM/yyyy') BETWEEN :dataInicio AND :dataFinal ";
hql += "AND to_timestamp(h.hora, 'HH24:MI') > to_timestamp('09:00', 'HH24:MI') ";
hql += "AND to_timestamp(h.hora, 'HH24:MI') < to_timestamp('17:00', 'HH24:MI') ";
hql += "AND flag_destino <> 'atestado'";
Gabriela Oliveira
Curtidas 0
Melhor post
Douglas Eric
02/09/2011
ai.... quando você "compila" ele lança exceção???
:/
primeiro de tudo: cade a stack trace?
http://javafree.uol.com.br/topic-882405-FAQ-Stack-Trace.html
esse seu "código", é só uma concatenação de string, você precisa descobrir qual linha de qual método que ele esta lançando a exceção.
GOSTEI 1
Mais Respostas
Douglas Eric
02/09/2011
[quote="sekkuar"]ai.... quando você "compila" ele lança exceção???
:/
primeiro de tudo: cade a stack trace?
http://javafree.uol.com.br/topic-882405-FAQ-Stack-Trace.html
esse seu "código", é só uma concatenação de string, você precisa descobrir qual linha de qual método que ele esta lançando a exceção.
Isso,
segue meu erro
Erro ao gerar o relatorio. java.lang.NullPointerException
java.lang.NullPointerException
acompanhamento.relatorios.RelatorioHorasFuncPeriodo.gerarRelatorio(RelatorioHorasFuncPeriodo.java:42)
public class RelatorioHorasFuncPeriodo {
private Date dataInicio;
private Date dataFinal;
public void gerarRelatorio() {
HashMap parametros = new HashMap();
JRBeanCollectionDataSource beanRelatorios;
JasperPrint impressao;
String caminhoJasper, caminhoRelatorio;
HorasFuncionarioPeriodoDao dao = new HorasFuncionarioPeriodoDao();
try {
caminhoJasper = "D:\\Projetos\\Acompanhamento\\web\\relatorios\\jasper\\relHorasFuncPer.jasper";
caminhoRelatorio = "D:\\Projetos\\Acompanhamento\\web\\relatorios\\relHorasFuncPer.xls";
parametros.put("dataInicio", dataInicio);
parametros.put("dataFinal", dataFinal);
beanRelatorios = new JRBeanCollectionDataSource(dao.gethorasFuncionarioPeriodo(dataInicio, dataFinal));
(42) impressao = JasperFillManager.fillReport(caminhoJasper, parametros, beanRelatorios);
//Gerando Xls
JRXlsExporter xls = new JRXlsExporter();
xls.setParameter(JRExporterParameter.JASPER_PRINT, impressao);
xls.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, caminhoRelatorio);
xls.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, false);
xls.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, true);
xls.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, true);
xls.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, false);
xls.exportReport();
} catch (Exception e) {
System.out.println("Erro ao gerar o relatorio. " + e);
e.printStackTrace();
}
}GOSTEI 0
Douglas Eric
02/09/2011
esqueci ..
segue minha classe DAO
public class HorasFuncionarioPeriodoDao {
public List horasFuncionarioPeriodo(Date dataIni, Date dataFim) {
List<HorasFuncionarioPeriodo> listaFunc = new ArrayList<HorasFuncionarioPeriodo>();
SimpleDateFormat sf = new SimpleDateFormat();
HorasFuncionarioPeriodo hrFuncPer;
Session session = HibernateUtil.getSession();
String hql = "SELECT f.sigla, f.nome, f.tipo, f.n_apropriacao, f.local, f.centroCusto, f.descricaoCC, h.hora, h.dtDia as data, h.destino as registro ";
hql += "FROM funcionario f, Horario h ";
// hql += " WHERE to_date(h.dtDia,'DD/MM/YYYY') BETWEEN :dataIni AND :dataFim ";
// hql += " AND to_timestamp(h.hora, 'HH24:MI') > to_timestamp('09:00', 'HH24:MI') ";
// hql += " AND to_timestamp(h.hora, 'HH24:MI') < to_timestamp('17:00', 'HH24:MI') ";
// hql += " AND flag_destino <> 'atestado' ";
hql += " WHERE h.pessoa = LOWER(f.sigla) ";
hql += " WHERE h.hora IS NOT NULL ";
try {
session.beginTransaction();
Query query = session.createQuery(hql);
query.setDate("dataIni", dataIni);
query.setDate("dataFim", dataFim);
for (Iterator it = query.iterate(); it.hasNext();) {
Object[] registro = (Object[]) it.next();
hrFuncPer = new HorasFuncionarioPeriodo();
hrFuncPer.setSigla(registro[0].toString());
hrFuncPer.setNome(registro[1].toString());
hrFuncPer.setTipo(registro[2].toString());
hrFuncPer.setN_Apropriacao(Integer.parseInt(registro[3].toString()));
hrFuncPer.setLocal(registro[4].toString());
hrFuncPer.setCentroCusto(registro[5].toString());
hrFuncPer.setDescricaoCC(registro[6].toString());
hrFuncPer.setHora(registro[7].toString());
hrFuncPer.setDtDia((Date)registro[8]);
hrFuncPer.setDestino(registro[9].toString());
listaFunc.add(hrFuncPer);
}
session.beginTransaction().commit();
} catch (Exception e) {
e.printStackTrace();
} finally {
session.close();
}
return listaFunc;
}
}
GOSTEI 0
Douglas Eric
02/09/2011
[quote="GOliveiraN"][quote="sekkuar"]ai.... quando você "compila" ele lança exceção???
Isso, segue meu erro
Erro ao gerar o relatorio. java.lang.NullPointerException java.lang.NullPointerException acompanhamento.relatorios.RelatorioHorasFuncPeriodo.gerarRelatorio(RelatorioHorasFuncPeriodo.java:42)
GOSTEI 0
Douglas Eric
02/09/2011
[quote="staroski"][quote="GOliveiraN"][quote="sekkuar"]ai.... quando você "compila" ele lança exceção???
Isso, segue meu erro
Erro ao gerar o relatorio. java.lang.NullPointerException java.lang.NullPointerException acompanhamento.relatorios.RelatorioHorasFuncPeriodo.gerarRelatorio(RelatorioHorasFuncPeriodo.java:42)
Erro ao gerar o relatorio. java.lang.NullPointerException
java.lang.NullPointerException
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:517)
at br.com.projectus.acompanhamento.relatorios.RelatorioHorasFuncPeriodo.gerarRelatorio(RelatorioHorasFuncPeriodo.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
at javax.faces.component.UICommand.broadcast(UICommand.java:383)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
at com.sun.faces.extensions.avatar.lifecycle.PartialTraversalLifecycle.execute(PartialTraversalLifecycle.java:94)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:267)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:285)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:341)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
at java.lang.Thread.run(Thread.java:619)
GOSTEI 0
Douglas Eric
02/09/2011
Eu consegui tirar o erro do NullPointer ..
estava relacionado a versão do relatório ..
ObrigadoO!
GOSTEI 0