Olá pessoal sou novo com relatórios já li alguns tópicos aqui no guj mas ainda não consegui chamar o relatório.
o relatório já esta pronto e com o parâmetro criado.
o que eu quero é apenas passar um parâmetro o id de uma tupla no meu banco…
um amigo do guj me passou este código mas esta dando erro se puder me ajudar pois já estou alguns dias parado rs.
de uma olhada no meu codigo.
o código do botão…
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
RelatorioMBean rel = new RelatorioMBean();
rel.geraRelatorio("/relatorio/RelAso.jasper", lblCodigoAso.getText());
minha classe que processa…
import conexao.Conexao;
import java.io.File;
import java.net.URL;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.*;
public class RelatorioMBean {
private Connection conexao ;
public RelatorioMBean() throws JRException, SQLException {
this.conexao = Conexao.getConexao();
}
public void geraRelatorio(String pathReport, String pk) throws JRException {
//supondo que o teu ficheiro teste.jasper esteja dentro da tiua aplicação
HashMap map = new HashMap();
map.put("codigoaso", Integer.parseInt(pk));
URL relatorioURL = RelatorioMBean.class.getResource(pathReport);
JasperReport jr = (JasperReport) JRLoader.loadObject(relatorioURL);
JasperPrint jp = JasperFillManager.fillReport(jr, map, conexao);
JasperViewer jv = new JasperViewer(jp, false);
jv.setVisible(true);
}
o erro…
EException in thread “AWT-EventQueue-0” java.lang.NullPointerException
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:145)
at relatorio.RelatorioMBean.geraRelatorio(RelatorioMBean.java:39)
.