[Ajuda] Ireport relatorios

3 respostas
I

bem boa noite, sou iniciant e em java ainda,

estou tendo 1 erro no meu projeto quando tento abrir 1 relatorio nele…

da o erro:

java.lang.NullPointerException

at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89)

at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)

at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:517)

at relatorios.relatCidade.(relatCidade.java:33)

at relatorios.relatCidade.main(relatCidade.java:46)

CONSTRUÍDO COM SUCESSO (tempo total: 4 segundos)

ja olhei os topicos aqui no forun relacionados e naum consigo solucionar esse problema =( :cry:

se alguem puder dar 1 luz seria Interessante
grato!

3 Respostas

revton

IgorDutra, o seu problema é bem simples.

No relatCidade.java no metodo init na linha 33, verifique o valor que está chegando nessa linha, está chegando null ao objeto.

Qualquer coisa poste o código.

I
package relatorios;

import java.util.HashMap;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;

import utilitarios.conexao;

public class relatCidade {


    conexao con = new conexao();


public relatCidade() {
  try 
  {
      con.connecta();
      con.executeSQL("SELECT * from cidade");
      JRResultSetDataSource jrRS = new JRResultSetDataSource(con.resultSet);
      JasperPrint jasperPrint = JasperFillManager.fillReport(
      "relatorios/relcidade.jasper", new HashMap(), jrRS);
      JasperViewer.viewReport(jasperPrint);
  } catch (Exception erro){
             JOptionPane.showMessageDialog(null,"deu erro ="+erro);
   }
}

  public static void main (String args[])
  {
    new relatCidade();
  }
}

bem o codigo e esse, fico no aguardo, realmente ainda naum conseguir fazer da forma certa..

juliocesarss

Vamo la… vou mostrar o jeito que eu faço e funciona perfeitamente

try{
            Connection con = bd.getConnection(); //pego a minhaa conexão
            HashMap parametros = new HashMap();// crio os parametros

            parametros.put("USER", "%"+pesquisar+"%");//adiciono ao paremtro 'USER' o valor da variavel 'pesquisa'

            JasperPrint jp = JasperFillManager.fillReport("./jasper/relatorio_final.jasper", parametros, con);//Crio o JasperPrint que tem como parâmetro o caminho do relatório, o parametro e a conexão

            JasperViewer jrv = new JasperViewer(jp,false);// Crio o JasperViewer  que recebe como parametro o JasperPrint
            jrv.setVisible(true);// Mando exibir o relatório
            
        }catch(Exception e){
            e.printStackTrace();
        }

Não sei como você aprendeu a fazer o relatório… mas eu não faço a pesquisa no código… eu faço dentro do IReport… deixo o relatório funcionando perfeito la.

Dai no código eu só chamo ele.

Se quiser pode baixar essas video aulas… vai te ajudar bastante.

http://achedownloads.com/educacional/jasper-report-ireport-t2ti-curso

Criado 5 de dezembro de 2010
Ultima resposta 6 de dez. de 2010
Respostas 3
Participantes 3