Blz?
Galera eu to fazendo um trabalho aqui pra facul. To usando JSF. Nesse trabalho eu monto um relatorio com iReport. Gero o .jasper e chamo com a função abaixo
public void relatorioGeral(ActionEvent actionEvent)
{
Pool pool = new Pool();
Connection con = pool.getConnection();
HashMap<String, Date> parametros;
parametros = new HashMap<String, Date>();
parametros.put("DATA_INICIO", dtPesquisa1);
parametros.put("DATA_FIM", dtPesquisa2);
String propri = propriedadeDt.equals("dtBoa") ? "relChDtBoa" : "relChDtRef";
try
{
JasperPrint jp = JasperFillManager.fillReport("C:/rels/" + propri + ".jasper", parametros, con);
JasperExportManager.exportReportToPdfFile(jp, "C:/rels/relCh.pdf");
// java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
//desktop.open(new File("C:/rels/relCh.pdf"));
}
catch(Exception e)
{
FacesContextUtil.setMensagemErro("Problemas para montar relatório de cheques! ERRO: " + e.getMessage());
}
}
até que esta funcionando, mas eu queria conseguir fazer com o caminho relativo e nao do jeito q esta. Até para poder fazer um link para ele e tals…
ja perdi uma madrugada com isso e nao deu certo heheh…
Se alguem der uma luz eu agradeço!
T+
[quote=afonsoaaf]Blz?
Galera eu to fazendo um trabalho aqui pra facul. To usando JSF. Nesse trabalho eu monto um relatorio com iReport. Gero o .jasper e chamo com a função abaixo
public void relatorioGeral(ActionEvent actionEvent)
{
Pool pool = new Pool();
Connection con = pool.getConnection();
HashMap<String, Date> parametros;
parametros = new HashMap<String, Date>();
parametros.put("DATA_INICIO", dtPesquisa1);
parametros.put("DATA_FIM", dtPesquisa2);
String propri = propriedadeDt.equals("dtBoa") ? "relChDtBoa" : "relChDtRef";
try
{
JasperPrint jp = JasperFillManager.fillReport("C:/rels/" + propri + ".jasper", parametros, con);
JasperExportManager.exportReportToPdfFile(jp, "C:/rels/relCh.pdf");
// java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
//desktop.open(new File("C:/rels/relCh.pdf"));
}
catch(Exception e)
{
FacesContextUtil.setMensagemErro("Problemas para montar relatório de cheques! ERRO: " + e.getMessage());
}
}
até que esta funcionando, mas eu queria conseguir fazer com o caminho relativo e nao do jeito q esta. Até para poder fazer um link para ele e tals…
ja perdi uma madrugada com isso e nao deu certo heheh…
Se alguem der uma luz eu agradeço!
T+[/quote]
Oi
O segredo é você usar o método getResourceAsStream
Dê uma olhada nos tópicos
http://www.guj.com.br/posts/list/66810.java
http://www.guj.com.br/posts/list/66392.java
Olá.
Algo assim??
InputStream caminho = this.getClass().getClassLoader().getResourceAsStream(“as/com/sisclinica/relatorio/Pacientes.jasper”);
Te mais…
por que não simplificar?
getClass().getResourceAsStream("pacoteDoArquivo")
Valeu galera mas o obj InputStream ainda vem nulo com o caminho relativo… vou ter q deixar como esta por enquanto
Estou com o mesmo problema do colega acima. Ao tentar buscar o arquivo com o caminho relativo, meu ImputStream retorna null.
Já tentei de varias formas citadas aqui nesse topico e em outros daqui do forum.
É uma aplicação desktop.
Agradeço qualquer ajuda.
Abraços!