[RESOLVIDO] Erro ao gerar PDF JasperReport

Boa noite pessoal.

Estou com um problema chato que não consequi resolver sozinho, então venho pedir ajuda de vcs.

O problema é que estou tentando criar um relatório com o iReport+JasperReport e não estou conseguindo.

A primeira tentativa ocorreu o erro “Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory” Então pesquisei e adicione o commons-logging.jar nas minhas bibliotecas e o erro foi resolvido, porém apareceu outro erro!

Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/collections” Então baixei o commons-collections e o erro foi resolvido, porém…, apareceu outro erro =P

Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester” Baixei o dito cujo, adicionei nas bibliotecas do projeto e o problema saiu, porém…

Agora o erro que não consigo resolver:

Exception in thread “main” java.lang.NoClassDefFoundError: com/lowagie/text/DocumentException

Ja li em vários lugares para baixar o iText que resolveria, mas baixei o iText-5.0.6, coloquei nas bibliotecas do projeto e nada desse erro sair. Tentei versões anteriores do iText também e nada.

Alguem tem alguma idéia?

Estou usando:
Windows7
NetBeans 6.9.1
iReport-4.0.2

[code]package utilitarios;

/**
*

  • @author Mawcor
    /
    /
    pacotes necessários /
    import net.sf.jasperreports.engine.
    ;
    import net.sf.jasperreports.view.JasperViewer;
    import java.sql.;
    import java.util.
    ;

public class relatorio {
conexao con_agendamento;

/* Gera Relatorio e visualiza-o */
public void geraRelatorio( ) throws JRException, Exception {
con_agendamento = new conexao();
con_agendamento.conecta();

con_agendamento.executaSQL(“select * from agendamentos”);

/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource( con_agendamento.resultset );

/* 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( “src/cmc.jasper”, parameters, jrRS );

/* Exporta para o formato PDF */
JasperExportManager.exportReportToPdfFile( "src/cmc.jrprint" );

/* Preenche o relatorio e o salva diretamente em arquivo PDF. Sem
a necessidade do .jrprint */
//JasperRunManager.runReportToPdfFile(“src/cmc.jasper”, parameters, jrRS);

/* Visualiza o relatório em formato PDF */
JasperViewer.viewReport( “cmc.pdf”, false );
}

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

}
[/code]

Da erro na linha 37 “JasperExportManager.exportReportToPdfFile( “src/cmc.jrprint” );”

Valeu!

da vez que tive esse erro era imcompatibilidade de versoes do i-text

A versão do seu Jasper é igual á do Ireport?

Recompila teu jasper.

Eu acho que o esse erro é porque você só está passando o local onde esta o arquivo.jrprint faltou o parameters e o jrRS
Eu tenho esse codigo que compila corretamente em minha máquina, acho que ele explica.



HashMap map = new HashMap();			
			
//ApplicationManager.getRealPath()
String arquivoJasper = "/home/openk/workspace-javaiReports/Teste/WebContent/PrimeiroRelatorio.jasper";
JasperPrint relatorio = JasperFillManager.fillReport(arquivoJasper, map, conn);

String jasperPrint = JasperFillManager.fillReportToFile(arquivoJasper, map, conn);
JasperExportManager.exportReportToPdfFile(jasperPrint);

Consegui fazer funcionar pessoal.

Eu vi que no iReport o pdf era gerado sem problemas, entao tive a idéia de ir na pasta de instalação do iReport e copiar o iText que ele usava (iText-2.1.7.jar). Muito antigo em relação a versão atual no site do iText, porém agora está funcionando a geração do PDF certinho.

Obrigado pelas respostas!