Bom dia, eu estou com um código em java que chama um relatório .jasper, mas na minha máquina que eu desenvolvi o relatório abre normalmente porém em outras máquinas o relatório não abre, ele encontra o caminho mas não abre, eu já verifiquei as versões do java que na minha máquina estão a 7 e 8 deixei o pc do cliente igual ao meu, o jar esta com as mesmas bibliotecas do meu pc porém não abre o relatório, alguém poderia me dar uma ajudinha?
Log? Exceção? Alguma mensagem que ajude a identificar o erro?
Connection conn = new Conexao().getConexao();
String caminho = System.getProperty("user.dir") + "\\Rela.jasper";
JOptionPane.showMessageDialog(null, caminho);
try {
JasperPrint jasperPrint = null;
// HashMap<String, Object> map = new HashMap<String, Object>();
HashMap<String, Object> map = new LinkedHashMap<String, Object>();
map.put("data1", data11);
map.put("data2", data22);
JasperPrint print = JasperFillManager.fillReport(caminho, map, conn);
JasperViewer jv = new JasperViewer(print, false); // false Needed not to close parent frame
jv.setVisible(true);
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, "Erro ao gerar relatório");
Conexao conex = new Conexao();
this.setCursor(Cursor.DEFAULT_CURSOR);
conex.desconecta();
throw new RuntimeException(erro);
}
Ele cai no catch em outros computadores mas no meu roda direitinho.
Cai no catch, mas, como você simplesmente matou o objeto de Exception (erro, no caso), você nunca vai saber o que acontece, né?
Tente fazer, ao menos, um
JOPtionPane.showMessageDialog(null, erro.getMessage());
Assim você descobre o que aconteceu.
1 curtida
Meu jasper tem uma imagem que estava especificado em meu computador em um endereço, no computador do cliente não havia este caminho por este motivo não estava encontrando, obrigado!