Ajuda Erro no JRResultSetDataSource do Ireport [Resolvido]

Galera preciso de ajuda?
Meu relatorio esta abrindo normalmente o ireport mas quando vou chamar ele na aplicação da erro na linha abaixo

JRResultSetDataSource jrRS = new JRResultSetDataSource(con.rs);

[code]package relatorios;

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

public class relatCidade {
Conexao conRela = new Conexao();

public relatCidade() {
try
{
conRela.conectar();
conRela.comandoBuscar(“SELECT * from pedidos”);
JRResultSetDataSource jrRS = new JRResultSetDataSource(conRela.rs);
JasperPrint jasperPrint = JasperFillManager.fillReport(
“relatorios/relCidades.jasper”, new HashMap(), jrRS);
JasperViewer.viewReport(jasperPrint);
} catch (Exception erro){
JOptionPane.showMessageDialog(null,“deu erro =”+erro);
}
}

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

[/code]

O erro que ocorre e este!

[color=red]
Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at net.sf.jasperreports.engine.util.JRLoader.(JRLoader.java:67)
at net.sf.jasperreports.engine.JRPropertiesUtil.loadProperties(JRPropertiesUtil.java:99)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.initProperties(DefaultJasperReportsContext.java:94)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.(DefaultJasperReportsContext.java:71)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.(DefaultJasperReportsContext.java:59)
at net.sf.jasperreports.engine.JRResultSetDataSource.(JRResultSetDataSource.java:94)
at relatorios.Relat_clientes2.(Relat_clientes2.java:25)
at relatorios.Relat_clientes2.main(Relat_clientes2.java:43)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
… 8 more
Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 1 segundo)
[/color]

o que pode ser ?

Esta faltando o jar commons-logging ou esta em conflito.
Se possui esse jar verifique a versão.

Abraços.

Fica com DEUS.

[quote=Fexx]Esta faltando o jar commons-logging ou esta em conflito.
Se possui esse jar verifique a versão.

Abraços.

Fica com DEUS.[/quote]

Fex deu Certo Amigo? Adcionei umas jar ao projeto e funcionou!

Mas agora esta ocorrendo esse erro quando executo a classe se nao me engano parece que nao esta localizado o arquivo e isso?
Mas se for eu ja tentei com o caminho relativo e o completo

relativo
[color=blue]relatorios\relClientes.jrxml[/color]

e o completo
[color=blue]E:\Projetos\Java SE\Beans\comida\src\relatorios\relClientes.jrxml[/color]

mas ambos apresenta o seguinte erro
[color=red]net.sf.jasperreports.engine.JRException: Error loading object from file : E:\Projetos\Java SE\Beans\comida\src\relatorios\relClientes.jrxml[/color]

o que pode ser meus amigos

Ai vao os jar necessarios pra quem um dia vier ter o mesmo problema!

[code]/*- Commons-BeanUtils-1.7

  • commons-coleções 2.1
  • commons-logging-api-1.0.2
  • dom4j-1.6.1
  • DynamicJasper-3.0.0
  • 3.0.0–testes DynamicJasper
  • iText-2.1.0
  • JasperReports -3.1.2
  • jaxen-1.1.1
  • jdtCompilerAdapter
  • xalan*/[/code]

Invés da barra ser \ tente ela ao contrario assim: / ou seja seu diretório ficará:
E:/Projetos/Java SE/Beans/comida/src/relatorios/relClientes.jrxml

Testa aí

Abraços.

Fica com DEUS.

[quote=Fexx]Invés da barra ser \ tente ela ao contrario assim: / ou seja seu diretório ficará:
E:/Projetos/Java SE/Beans/comida/src/relatorios/relClientes.jrxml

Testa aí

Abraços.

Fica com DEUS.[/quote]

Não Funcionou Fexx ja tinha testado isso antes olha como q ficou o cod, achei q era permissão do windows mas ja coloquei acesso total mas mesmo assim n funfou?

[code]package relatorios;

import java.sql.SQLException;
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.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import util.Conexao;

/*
Bibliotecas necessarias para importar

    • Commons-BeanUtils-1.7
  • commons-coleções 2.1
  • commons-logging-api-1.0.2
  • dom4j-1.6.1
  • DynamicJasper-3.0.0
  • 3.0.0–testes DynamicJasper
  • iText-2.1.0
  • JasperReports -3.1.2
  • jaxen-1.1.1
  • jdtCompilerAdapter
  • xalan
    */

public class relatCidade {
Conexao conRela = new Conexao();

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

public relatCidade() 
{
    try 
    {
        conRela.conectar();
        conRela.comandoBuscar("SELECT * from pedidos");
        JRResultSetDataSource jrRS = new JRResultSetDataSource(conRela.rs);
        //JasperPrint jasperPrint = JasperFillManager.fillReport("relatorios\\relCidades.jasper", new HashMap(), jrRS);
        JasperPrint jasperPrint = JasperFillManager.fillReport("E:/Projetos/Java SE/Beans/comida/src/relatorios/relClientes.jrxml", new HashMap(), jrRS);
        JasperViewer.viewReport(jasperPrint,false);
    } 

    catch (Exception erro)
    {
        JOptionPane.showMessageDialog(null,"deu erro="+erro);
        
    }
}

}

[/code]

Você esqueceu de compilar o .jrxml.
Já que vc esta passando um tipo de arquivo .jrxml, o mesmo deve ser compilado.
Faça assim:

 // compilação do JRXML
 JasperReport report = JasperCompileManager.compileReport("E:/Projetos/Java SE/Beans/comida/src/relatorios/relClientes.jrxml");  
 JRResultSetDataSource jrRS = new JRResultSetDataSource(conRela.rs);  
// passando o jrxml compilado para o fillReport
 JasperPrint jasperPrint = JasperFillManager.fillReport(report, null, jrRS);  
// exibindo o relatório
 JasperViewer.viewReport(jasperPrint,false);  

É só implementar o resto dos código, o objetivo foi mostrar a compilação do .jrxml antes de exibir.

Testa aí.

Abraços.

Fica com DEUS.

[quote=Fexx]Você esqueceu de compilar o .jrxml.
Já que vc esta passando um tipo de arquivo .jrxml, o mesmo deve ser compilado.
Faça assim:

 // compilação do JRXML
 JasperReport report = JasperCompileManager.compileReport("E:/Projetos/Java SE/Beans/comida/src/relatorios/relClientes.jrxml");  
 JRResultSetDataSource jrRS = new JRResultSetDataSource(conRela.rs);  
// passando o jrxml compilado para o fillReport
 JasperPrint jasperPrint = JasperFillManager.fillReport(report, null, jrRS);  
// exibindo o relatório
 JasperViewer.viewReport(jasperPrint,false);  

É só implementar o resto dos código, o objetivo foi mostrar a compilação do .jrxml antes de exibir.

Testa aí.

Abraços.

Fica com DEUS.
[/quote]

Fexx Deu outro erro agora mas antes de tudo queria agradecer a boa vontade e que Deus o abençoe!!
A classe ficou assim:

[code]package Forms;

import java.util.HashMap;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.view.JasperViewer;
import util.Conexao;

public class relatPedidos {
Conexao conRela = new Conexao();

public relatPedidos() {
try
{
conRela.conectar();

  conRela.comandoBuscar("SELECT * from pedidos"); 
  // compilação do JRXML  
  JasperReport report = JasperCompileManager.compileReport("E:/Projetos/Java SE/Beans/comida/src/relatorios/relPedidos.jrxml");    
    JRResultSetDataSource jrRS = new JRResultSetDataSource(conRela.rs);    
    // passando o jrxml compilado para o fillReport  
    JasperPrint jasperPrint = JasperFillManager.fillReport(report, null, jrRS);    
    // exibindo o relatório  
    JasperViewer.viewReport(jasperPrint,false); 

}
catch (Exception erro){
//JOptionPane.showMessageDialog(null,“deu erro =”+erro);
conRela.MostrarMsg2(erro.toString());
}
}

public static void main (String args[])
{
new relatPedidos();
}
} [/code]

Agora ocorre este erro estou achando que e algum pau de versão dos jar importados. Pois tive que ficar catando um em cada lugar Você poderia me dizer quais jar devo importar e quais as versoes vc usa. Você conhece um download com um pacote te dos os jar necessarios para fazer essa class funcionar
[color=red]
run:
Abr 26, 2013 3:55:08 PM net.sf.jasperreports.engine.component.ComponentsEnvironment findBundles
WARNING: Found two components for namespace http://jasperreports.sourceforge.net/jasperreports/components
Abr 26, 2013 3:55:08 PM net.sf.jasperreports.engine.component.ComponentsEnvironment findBundles
WARNING: Found two components for namespace http://jasperreports.sourceforge.net/jasperreports/components
Abr 26, 2013 3:55:08 PM net.sf.jasperreports.engine.component.ComponentsEnvironment findBundles
WARNING: Found two components for namespace http://jasperreports.sourceforge.net/jasperreports/components
Exception in thread “main” java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:730)
at net.sf.jasperreports.engine.JasperCompileManager.compile(JasperCompileManager.java:240)
at net.sf.jasperreports.engine.JasperCompileManager.compile(JasperCompileManager.java:173)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:448)
at Forms.relatPedidos.(relatPedidos.java:35)
at Forms.relatPedidos.main(relatPedidos.java:55)
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.control.CompilationFailedException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
… 10 more
Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 2 segundos)

[/color]

Os jar do jaspereport vc pode baixar em: http://community.jaspersoft.com/project/jasperreports-library

Nesse artigo da k19 eles explica quais os jar’s necessários para rodar o relatório.
Também explica de forma simples e clara de como criar relatórios com JasperReport e IReport, vale a pena conferir .
http://www.k19.com.br/artigos/relatorios-em-java-jasperreports-e-irepor/

Tenta ai, em ultimo caso, eu crio um porjetinho e te mando, ai vc estuda em cima dele.

Abraços.

Fica com DEUS.

[quote=Fexx]Os jar do jaspereport vc pode baixar em: http://community.jaspersoft.com/project/jasperreports-library

Nesse artigo da k19 eles explica quais os jar’s necessários para rodar o relatório.
Também explica de forma simples e clara de como criar relatórios com JasperReport e IReport, vale a pena conferir .
http://www.k19.com.br/artigos/relatorios-em-java-jasperreports-e-irepor/

Tenta ai, em ultimo caso, eu crio um porjetinho e te mando, ai vc estuda em cima dele.

Abraços.

Fica com DEUS.[/quote]

Fexx Deu certo cara valew pela ajuda ainda e bom saber que no mundo e na comunidade java ainda existe muitas pessoas dispostas as ajudar ao outro em troca de nada! so na boa vontade mesmo! :slight_smile:

Era incompatibilidade com os jar mesmo! o link q tu me passou e o trecho de cod pra compilar o jrxml resolveu os problemas mais uma fez obrigado!!! :lol:

So Mais uma Pergunta como que eu fecho o forum como concluido???

[quote=paulofsz][quote=Fexx]Os jar do jaspereport vc pode baixar em: http://community.jaspersoft.com/project/jasperreports-library

Nesse artigo da k19 eles explica quais os jar’s necessários para rodar o relatório.
Também explica de forma simples e clara de como criar relatórios com JasperReport e IReport, vale a pena conferir .
http://www.k19.com.br/artigos/relatorios-em-java-jasperreports-e-irepor/

Tenta ai, em ultimo caso, eu crio um porjetinho e te mando, ai vc estuda em cima dele.

Abraços.

Fica com DEUS.[/quote]

Fexx Deu certo cara valew pela ajuda ainda e bom saber que no mundo e na comunidade java ainda existe muitas pessoas dispostas as ajudar ao outro em troca de nada! so na boa vontade mesmo! :slight_smile:

Era incompatibilidade com os jar mesmo! o link q tu me passou e o trecho de cod pra compilar o jrxml resolveu os problemas mais uma fez obrigado!!! :lol: [/quote]

Que isso cara, precisando é só falar :smiley:

Se não me falha a memória lá em seu primeiro post, vai ter um botão escrito: editar.
Clique nesse, ai é só editar seu post incluído a palavra: [RESOLVIDO]

Abraços.

Fica com DEUS.