Problemas na geração de grandes arquivos em Excel

1 resposta
M

Olá um bom dia a todos;

Bem Srs. eu ingressei recentemente em uma empresa e to tendo que dar manutenção em um sistema que gera relatórios, sendo que, uma das opções de geração desses relatórios é em Excel, quando geramos relatórios que não trazem grandes quantidades de dados o relatório é gerado normalmente em excel, no entanto quando eu peço uma massa de dados mais robusta da erro, isso acontece quando eu peço a geração de um relatório com mais de 2000 linhas. Então eu gostaria de saber se alguém já passou por essa situação e gostaria de saber tmbm se existe alguma restrição em relação ao tamanho do arquivo a ser gerado. desde já agradeço pela atenção e pela preteza de todos.

obs: Eu estou usando o POI para a auxilio da criação dos relatórios.

é gerado o seguinte erro:

500 Internal Server Error
java.lang.NullPointerException	
at br.gov.fnde.simad.inscricao.consulta.ManterConsultaSituacaoMaterialAction.carregaRelatorioExce(ManterConsultaSituacaoMaterialAction.java:202)	
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:324)	
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)	
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)	
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:492)	
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:282)	
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)	
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)	
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)	
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)	
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)	
at java.lang.Thread.run(Thread.java:534)

1 Resposta

F

Note a NullPointerException no método carregaRelatorioExce da classe ManterConsultaSituacaoMaterialAction.

Este erro não tem nada a ver com a quantidade de dados. Provavelmente um dos registros possuum uma informação nula, onde não deveria ser nulo. Coloque um try/catch no loop q carrega os dados pra tratar a exception.
Depois analise os dados, para descobrir qual linha está com valores inválidos.

Criado 2 de junho de 2008
Ultima resposta 3 de jun. de 2008
Respostas 1
Participantes 2