JasperReport

Ola All

Alguem teria um exemplo de como chamar o preview de um arquivo gerado no iReport (XML) utilizando o JasperReport.

Grato

Renato V. Neto

try
{
System.setProperty(“org.xml.sax.driver”, “org.apache.xerces.parsers.SAXParser”);
JasperDesign jasperDesign = JasperManager.loadXmlDesign(“Arquivo.xml”);
JasperReport jasperReport = JasperManager.compileReport(jasperDesign);
Map parameters = new HashMap();

		DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
		Connection conn = DriverManager.getConnection("jdbc:oracle:Bd","user","senha");

		JasperPrint jasperPrint = JasperManager.fillReport(jasperReport, parameters, conn);

		JasperViewer.viewReport(jasperPrint,false);
	}
	catch(Exception exc)
	{
		System.out.println(exc.getMessage());
	}

detro da pasta do jasper tem uma pasta demo com varios exemplos.

Muito Obrigado pela ajuda.

So tenho mais um pergunta, quando rodo a aplicação ele reporta que o não foi possivel encontrar o arquivo especificado.

Devo colocar em algum diretorio especifico?

Grato

Renato v. Neto

Coloca o caminho completo do arquivo.
Ou poe no mesmo direto do .java que voce criou para gerar o relatorio.

[]´s

O arquivo XML está na pasta do .jar e mesmo assim ele diz que nao acha o arquivo.

Dei uma olhada nos exemplos do jasper mas, não consegui fazer rodar.

Sou iniciante e não consegui pensar em mais nada.

Grato

Renato V. Neto

Manda o código de como vc está chamando, para nós podermos dar uma olhada

        try 
        {   
            String BancoDeDados = "jdbc:odbc:CollegeMySQL";
            System.setProperty("org.xml.sax.driver", "org.apache.xerces.parsers.SAXParser"); 
            String Relatorio = "\renato\college\teste.xml";
            JasperDesign jasperDesign = JasperManager.loadXmlDesign(Relatorio); 
            JasperReport jasperReport = JasperManager.compileReport(jasperDesign); 
            Map parameters = new HashMap(); 
            DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver());
            Connection conn = DriverManager.getConnection(BancoDeDados);
            // 
            JasperPrint jasperPrint = JasperManager.fillReport(jasperReport, parameters, conn); 
            //
            JasperViewer.viewReport(jasperPrint,true); 
        } 
        catch(Exception exc) 
        { 
            System.out.println(exc.getMessage()); 
        } 
    } 

Tive que colocar o caminho do arquivo XML mesmo ele estando no diretorio do .java.

Agora ele acha o XML, conecta no banco de dados mas da a seguinte mensagem.


Error closingResultSet or Statment for report data source : teste.xml

Já olhei os exemplos e não sei mais o que fazer.

Outra coisa se eu tiver que ficar colocando o caminho se tiver que rodar no linux vai dar enrosco, tem alguma maneira dele achar isto sozinho.

Muito Obrigado pela ajuda até agora,

Renato V. Neto

aqui eu não coloco o caminho quando ele está na mesma pasta do .class e funciona certo…

agora esse erro "Error closingResultSet or Statment for report data source : teste.xml " nunca aconteceu comigo

Compilei seu código e funcionou tudo certo só que usei um banco oracle, o problema está no relatório ou na sua conexão com o banco…

Realmente era a conexao, mudei para JDBC e funcionou.

Muito orbigado.

Renato V. Neto