Pessoal estou tentando mostrar um relatório do ireport em java web.
Estou utilizando um projeto que estava aki no guj.
Acontece que ele esta gerando um arquivo .jrprint e um aquivo pdf… e na hora de visualiza o relatório em formato PDF ele da o seguinte erro
net.sf.jasperreports.egine.JRException: Error loading object from file:C:/Users/Rick/workspace/teste/src/br/com/teste/relatorios/Funcionarios.pdf
O que eu queria é que ele não gerasse nem um arquivo na minha pasta… gostaria que o arquivo pdf seja exibido no navegador para o usuário decidir se vai salvar, imprimir, etc.
Código a baixo.
import java.sql.*;
import java.util.*;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
public class GerarRelatorio {
/* Realiza conexão com o banco de dados, retornando o objeto Connection */
private static Connection getConnection( ) throws
ClassNotFoundException, SQLException
{
String driver = "org.postgresql.Driver";
String url = "jdbc:postgresql://localhost:5432/teste";
String user = "postgres";
String password = "postgres";
Class.forName(driver);
Connection con = DriverManager.getConnection( url, user, password );
return con;
}
/* Gera Relatorio e visualiza-o */
public void geraRelatorio( ) throws JRException, Exception
{
Connection con = getConnection( );
Statement stm = con.createStatement( );
String query = "SELECT * FROM funcionario WHERE (funcionario.id IN ( SELECT funcionario.id FROM funcionario WHERE nivel_id = 1 )) ORDER BY funcionario.nomecompleto ASC";
ResultSet rs = stm.executeQuery( query );
/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );
/* HashMap de parametros utilizados no relatório. Sempre instanciados */
Map parameters = new HashMap();
// parameters.put("COLUNA", valor);
/* Preenche o relatório com os dados. Gera o arquivo FolhaCorretoresEAssistentes.jrprint */
JasperFillManager.fillReportToFile( "C:/Users/Rick/workspace/teste/src/br/com/teste/relatorios/Funcionarios.jasper", parameters, jrRS );
/* Exporta para o formato PDF */
JasperExportManager.exportReportToPdfFile( "C:/Users/Rick/workspace/teste/src/br/com/teste/relatorios/Funcionarios.jrprint" );
/* Preenche o relatorio e o salva diretamente em arquivo PDF. Sem
a necessidade do .jrprint */
// JasperRunManager.runReportToPdfFile("BibliotecaPessoal.jasper", parameters, jrRS);
/* Visualiza o relatório em formato PDF */
net.sf.jasperreports.view.JasperViewer.viewReport( "C:/Users/Rick/workspace/teste/src/br/com/teste/relatorios/Funcionarios.pdf", false );
}
}