Ola Pessoal como posso corrigir este erro:
net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: RelatorioCarro.jrprint
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:77)
at net.sf.jasperreports.engine.JasperExportManager.exportReportToPdfFile(JasperExportManager.java:73)
at Relatorios.RelatorioCarro.geraRelatorio(RelatorioCarro.java:65)
at Relatorios.RelatorioCarro.<init>(RelatorioCarro.java:29)
at Relatorios.RelatorioCarro.main(RelatorioCarro.java:97)
Caused by: java.io.FileNotFoundException: RelatorioCarro.jrprint
... 5 more
BUILD SUCCESSFUL (total time: 5 seconds)
package Relatorios;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import java.io.File;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.view.JasperViewer;
public class RelatorioCarro {
/* Realza contornaniexão com o banco de dados, redo o objeto Connection */
Connection conexao = null;
public RelatorioCarro(){
geraRelatorio();
}
public void geraRelatorio(){
Connection conexao = null;
//nome do seu relatorio gerado no ireport
try {
Class.forName("com.mysql.jdbc.Driver");
// estabelecer a conexão
// estabelecer a conexão
try {
conexao = (Connection)DriverManager.getConnection(
"jdbc:mysql://localhost:3306/Locadoraveiculos", "root",
"197346");
try {
// criar um objeto de Statement para comandos sql
String sql = "select * from carro";
PreparedStatement comando = conexao.clientPrepareStatement(sql);
JRResultSetDataSource jrRS = new JRResultSetDataSource(comando.executeQuery());
Map parametros = new HashMap();
/*
JasperPrint print = JasperFillManager.fillReport("Relatorios/RelatorioCarro.jasper", parametros,jrRS);
JasperViewer.viewReport(print,false);
*/
JasperFillManager.fillReportToFile("Relatorios/RelatorioCarro.jasper",parametros,jrRS);
JasperExportManager.exportReportToPdfFile("Relatorios/RelatorioCarro.jrprint");
JasperViewer.viewReport("Relatorios/RelatorioCarro.pdf",false);
comando.close();
}catch(JRException e){
e.printStackTrace();
JOptionPane.showMessageDialog(null,"JRException"+e.getMessage());
}catch(SQLException e) {
System.out.println("erro no sql");
e.printStackTrace();
}
} catch (SQLException e) {
System.out.println("Erro no estabelecimento da conexão");
e.printStackTrace();
}
finally {
conexao.close();
}
} catch (ClassNotFoundException ex) {
Logger.getLogger(RelatorioCarro.class.getName()).log(Level.SEVERE, null, ex);
}catch(SQLException e){
e.printStackTrace();
}
}
public static void main(String args[]){
new RelatorioCarro();
}
}
Quando tento exibir diretamente pela impressora funciona perfeitamente, mas quando tento exportar para PDF ocorre o erro citado acima.
Caso alguem possa me ajudar ficarei grato!!!