Fiz 1 relatorio no IReport, pegou blz, consigo conexao c banco e visualizo os dados. Dai qnd vo migrar p/ visualizar os dados atraves duma classe Java, n consigo, dar um erro q me deixou perdido, pois o codigo (creio eu) q esteja correto (peguei do tutorial do Guj). O codigo eh este:
[code]package catalogo_ireport;
/* pacotes necessários /
import net.sf.jasperreports.engine.;
import net.sf.jasperreports.view.JasperViewer;
import java.sql.;
import java.util.;
public class RelatorioBibliotecaPessoal {
/* Realza contornaniexão com o banco de dados, redo o objeto Connection /
private static Connection getConnection( ) throws ClassNotFoundException, SQLException {
String driver = “org.gjt.mm.mysql.Driver”;
String url = “jdbc:mysql://localhost/codata_catalogo”;
String user = “root”;
String password = “sa”;
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 s.id, c.nome ‘cliente’, l.nome ‘linguagem’, s.nome ‘sistema’, s.estado, " +
"s.descricao FROM sistema s, cliente c, linguagem l " +
“where s.fk_cliente=c.id and s.fk_linguagem=l.id;”;
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 BibliotecaPessoal.jrprint /
JasperFillManager.fillReportToFile( “CodataCatalogo.jasper”, parameters, jrRS );
/ Exporta para o formato PDF /
JasperExportManager.exportReportToPdfFile( “CodataCatalogo.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 */
JasperViewer.viewReport( “CodataCatalogo.pdf”, false );
}
public static void main(String[] args) throws JRException, Exception {
new RelatorioBibliotecaPessoal().geraRelatorio();
}
}[/code]
O erro eh este:
[code]Exception in thread “main” java.io.FileNotFoundException: CodataCatalogo.jasper
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:75)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:443)
at catalogo_ireport.RelatorioBibliotecaPessoal.geraRelatorio(RelatorioBibliotecaPessoal.java:34)
at catalogo_ireport.RelatorioBibliotecaPessoal.main(RelatorioBibliotecaPessoal.java:44)
NESTED BY :
net.sf.jasperreports.engine.JRException: CodataCatalogo.jasper
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:75)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:443)
at catalogo_ireport.RelatorioBibliotecaPessoal.geraRelatorio(RelatorioBibliotecaPessoal.java:34)
at catalogo_ireport.RelatorioBibliotecaPessoal.main(RelatorioBibliotecaPessoal.java:44)
Caused by: java.io.FileNotFoundException: CodataCatalogo.jasper
… 4 more
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)[/code]
Eu to colocando o .jasper (CodataCatalogo.jasper) na pasta dos .class, eh isto msm? Vlw…