JasperReports - Á beira do desespero

Lista,

Por favor, alguém tem um exemplo de classe que executa um arquivo .jasper? Eu tentei esse código de um tutorial que encontrei aqui no guj porem dá erro, sendo que o arquivo .jasper está no mesmo diretório que o .class

Exception in thread “main” java.io.FileNotFoundException: RelatorioBibliotecaPessoal.jasper
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:75)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:443)
at br.com.fit.teste.RelatorioBibliotecaPessoal.geraRelatorio(RelatorioBibliotecaPessoal.java:42)
at br.com.fit.teste.RelatorioBibliotecaPessoal.main(RelatorioBibliotecaPessoal.java:49)

NESTED BY :
net.sf.jasperreports.engine.JRException: RelatorioBibliotecaPessoal.jasper
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:75)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:443)
at br.com.fit.teste.RelatorioBibliotecaPessoal.geraRelatorio(RelatorioBibliotecaPessoal.java:42)
at br.com.fit.teste.RelatorioBibliotecaPessoal.main(RelatorioBibliotecaPessoal.java:49)
Caused by: java.io.FileNotFoundException: RelatorioBibliotecaPessoal.jasper
… 4 more

[code]package br.com.fit.teste;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.Map;

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 RelatorioBibliotecaPessoal {

private static Connection getConnection() throws ClassNotFoundException,
		SQLException {
	String driver = "com.mysql.jdbc.Driver";
	String url = "jdbc:mysql://localhost:3306/bgma?zeroDateTimeBehavior=convertToNull";
	String user = "root";
	String password = "";
	
	Class.forName(driver);
	Connection con = DriverManager.getConnection(url, user, password);
	return con;
}

public void geraRelatorio() throws JRException, Exception {
	
	Connection con = getConnection();
	Statement stm = con.createStatement();
	String query = "select * from associado";
	ResultSet rs = stm.executeQuery(query);
	JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
	Map parameters = new HashMap();
	// parameters.put("abc" , "def");	
	

	JasperFillManager.fillReportToFile("RelatorioBibliotecaPessoal.jasper",	parameters, jrRS);
	JasperExportManager.exportReportToPdfFile("RelatorioBibliotecaPessoal.jrPrint");

	JasperViewer.viewReport("BibliotecaPessoal.pdf", false);
}

public static void main(String[] args) throws JRException, Exception {
	new RelatorioBibliotecaPessoal().geraRelatorio();
}

}
[/code]

Eu tbm sofri com um problema parecido, daí um amigo deu a dica de copiar alguns arquivos .jar (jasperreports-1.2.0.jar, iReport.jar, itext-1.3.1.jar, entre outros) localizados no diretório lib do iReport para dentro do diretório lib\ext de sua pasta JRE ou JDK. Então funcionou legal…aliás, às vezes ele não funciona mais até hoje não sei pq.

O arquivo

RelatorioBibliotecaPessoal.jasper

Esta na raiz do seu classpath?
Se nao estiver, coloque por exemplo no teu src/ e teste.