publicvoiddoCartaCliente(Fieldlote,Fieldprodutor,Fieldfazenda){Connectionconn=null;try{System.out.println("Gerando relatório...");//cria a conexão com o banco de dadosconn=Conexao.getConnection();System.out.println(fazenda.getNome());System.out.println(lote.getId());System.out.println(produtor.getId());//Passando parâmetros para o HashMapMapparameterMap=newHashMap<String,Object>();parameterMap.put("fazenda",fazenda.getNome());parameterMap.put("idlote",lote.getId());parameterMap.put("idprodutor",produtor.getId());Stringarquivo="C:/Arquivos de Programas/Unifertil/reports/cartaCliente.jasper";JasperPrintjp=JasperFillManager.fillReport(arquivo,parameterMap,conn);Filefile=newFile(System.getenv("APPDATA")+"/"+FOLDERNAME);if(!(file.exists())||!(file.isDirectory())){file.mkdir();}JasperExportManager.exportReportToHtmlFile(jp,System.getenv("APPDATA")+"/"+FOLDERNAME+"/"+"cartaCliente_"+fazenda.getNome()+".pdf");Filepdf=newFile(System.getenv("APPDATA")+"/"+FOLDERNAME+"/"+"cartaCliente_"+fazenda.getNome()+".pdf");Desktop.getDesktop().open(pdf);}catch(Exceptionex){newFrameErro("Erro na geração de Etiquetas",ex);ex.printStackTrace();}}
Dei uma olhada nos tópicos que me indicou e não deu certo!
Quando eu tiro o jar do log4j nenhum erro é retornado, o pdf é gerado mas sem nenhuma informação.
E com o jar o erro apresentado é o que já postei também. Não há mais nenhuma linha de erro!
P
pedruhenrik
opa magina, heheh
q coisa ñ tem mais nada no e.printstracktrace(); ??? rsrs
se vc tentar abrir o relatório direto pelo ireport da certo?
ahh, o arquivo .pdf q ele salva, o que acontece se vc tentar abrir direto pelo leitor de .pdf???
apenas a nível de teste fiz uma atualização no seu código, se tiver como testar e vê se o relatório aparece…heheh
importnet.sf.jasperreports.engine.JasperExportManager;importnet.sf.jasperreports.view.JasperViewer;publicvoiddoCartaCliente(Fieldlote,Fieldprodutor,Fieldfazenda){Connectionconn=null;try{System.out.println("Gerando relatório...");//cria a conexão com o banco de dadosconn=Conexao.getConnection();System.out.println(fazenda.getNome());System.out.println(lote.getId());System.out.println(produtor.getId());//Passando parâmetros para o HashMapMapparameterMap=newHashMap<String,Object>();parameterMap.put("fazenda",fazenda.getNome());parameterMap.put("idlote",lote.getId());parameterMap.put("idprodutor",produtor.getId());Stringarquivo="C:/Arquivos de Programas/Unifertil/reports/cartaCliente.jasper";JasperPrintjp=JasperFillManager.fillReport(arquivo,parameterMap,conn);Filefile=newFile(System.getenv("APPDATA")+"/"+FOLDERNAME);if(!(file.exists())||!(file.isDirectory())){file.mkdir();}JasperExportManager.exportReportToHtmlFile(jp,System.getenv("APPDATA")+"/"+FOLDERNAME+"/"+"cartaCliente_"+fazenda.getNome()+".pdf");Filepdf=newFile(System.getenv("APPDATA")+"/"+FOLDERNAME+"/"+"cartaCliente_"+fazenda.getNome()+".pdf");//apenas a nivel de teste pedruJasperExportManager.exportReportToPdfFile(jp,"c:/pdf.pdf");JasperViewerview=newJasperViewer(jp,false);view.setExtendedState(JasperViewer.MAXIMIZED_BOTH);view.setDefaultCloseOperation(JasperViewer.DISPOSE_ON_CLOSE);view.setVisible(true);//acaba o teste pedru}catch(Exceptionex){newFrameErro("Erro na geração de Etiquetas",ex);ex.printStackTrace();}}
espero ter ajudado e boa sorte! ^^
A
APaulinha
.
A
APaulinha
Não tem mais nada…
Sim!!!
No diretório onde é gerado o pdf é criado esses arquivos em uma nova pasta com o mesmo nome do arquivo pdf:
A
APaulinha
Seu código deu certo!!!
Muito Obrigada!!!
P
pedruhenrik
eita…rsrs
vc conseguiu testar com aquela alteração que eu fiz?
tenta gerar o arquivo só q sem espaços no nome, só a nível de superstição haha.
A
APaulinha
Sim!!! Só mudei o diretorio de onde estava salvando o relatório.
Porém a mensagem de erro ainda aparece. Só que o relatório abre.
P
pedruhenrik
então,
na verdade isso:
não é um erro, é só um warning pq talvez deve ter algo q ñ esta configurado no log4j.xml
e se fosse um erro tb o frame abaixo seria executado né? algo q acho q ñ esta sendo executado.