Como gerar relatórios com JasperReports (Ajuda Urgente)

Dicas e truques sobre Oracle Reports Builder - modo gráfico ou modo caractere, ascii, arquivo .PRT, etc
Responder
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Boa tarde Srs, venho mais uma vez pedir a ajuda de vocês de como gerar um relatório no JasperReports, basicão mesmo, por que eu não estou conseguindo gerar o mesmo, procurei alguns tutoriais mas todos retornam o mesmo erro: -> "java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory". Pela pouca experiência minha de JAVA eu acho que falta alguma importação ai, eu diria que é do apache tomcat. Acho que é isso Senhores, se puderem me ajudar, eu agradeceria, qualquer coisa posso postar o código aqui também (estou no trabalho no momento). Obrigado!
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Ninguém? ? Obrigado!
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Srs, segue abaixo o erro que está acontecendo. Obrigado!

Selecionar tudo

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
	at net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory.<clinit>(ComponentsExtensionsRegistryFactory.java:110)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:266)
	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.util.ClassUtils.instantiateClass(ClassUtils.java:53)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.instantiateRegistry(DefaultExtensionsRegistry.java:237)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:214)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:162)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getRegistries(DefaultExtensionsRegistry.java:133)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:105)
	at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
	at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:179)
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:81)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745)
	at classes.Relatorio.gerar(Relatorio.java:24)
	at interfaces.RelatorioIncidentes.jButton1ActionPerformed(RelatorioIncidentes.java:482)
	at interfaces.RelatorioIncidentes.access$1900(RelatorioIncidentes.java:19)
	at interfaces.RelatorioIncidentes$12.actionPerformed(RelatorioIncidentes.java:254)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener$Actions.actionPerformed(BasicButtonListener.java:303)
	at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1664)
	at javax.swing.JComponent.processKeyBinding(JComponent.java:2879)
	at javax.swing.JComponent.processKeyBindings(JComponent.java:2926)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2842)
	at java.awt.Component.processEvent(Component.java:6282)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:762)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1027)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:899)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:727)
	at java.awt.Component.dispatchEventImpl(Component.java:4731)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
	at java.awt.EventQueue.access$200(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:688)
	at java.awt.EventQueue$3.run(EventQueue.java:686)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:702)
	at java.awt.EventQueue$4.run(EventQueue.java:700)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.digester.Rule
	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)
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Up.
afonso.augusto
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 21
Registrado em: Qui, 06 Jun 2013 2:06 pm

Você poderia disponibilizar a classe que executa o relatório e o ponto onde dá o erro?
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Muito obrigado pela resposta. Vamos lá então estarei postando em um arquivo rar a classe do form que chama o relatório, o form de chamada, a classe do relatório e o relatório em si, propriamente dito, no form java que chama o relatório procure por relatorio.gerar(); ai lá só tem 1 método por enquanto, também estarei postando a imagem de todas as bibliotecas importadas no projeto. Obrigado!
Anexos
Bibliotecas importadas
Bibliotecas importadas
bibliotecas.png (6.86 KiB) Exibido 14511 vezes
Classes Relatórios.rar
Classes dos relatórios
(8.36 KiB) Baixado 780 vezes
afonso.augusto
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 21
Registrado em: Qui, 06 Jun 2013 2:06 pm

Bom dia Leandro..
Dei uma olhada... Não vi erros no código....

O erro que você informou:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
Dei uma pesquisada no erro que induz que está faltando uma lib.
Neste link fala para adicionar a lib.
http://www.guj.com.br/java/149381-resol ... va-desktop

Pensei que poderia ser a versão da sua lib disgester, mas a versão dela tem o caminho e a classe informada.

Qual IDE você está utilizando?
Como você adicionou as lib's?
Tenta remover e adicionar os .jars separadamente.

A classe que falta também se encontra em outras lib's:
http://www.findjar.com/class/org/apache ... /Rule.html

Obrigado
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Bom dia, opa vou fazer os testes assim que eu chegar em casa, porém eu conectei lá para poder tirar alguns prints do projeto e anexar ao tópico, a IDE que eu estou utilizando é o NetBeans 7.3, com o IReport 5.5.0 (que foi onde eu criei o relatório, externo do NetBeans) e o JasperReports 5.5.0 (que foi é o lib dentro do NetBeans). Outra dúvida é as versões que eu estou utilizando está correta? E Se não estiver quais versões deverei baixar naquele link que você passou. Obrigado!
Anexos
Bibliotecas
Bibliotecas
leandro_bonato
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 22
Registrado em: Seg, 14 Out 2013 9:24 pm

Bom muito obrigado pela resposta, mas eu consegui finalmente, eu tive que fazer na "marra" o negocio, adicionei todos os jars, e fui excluindo cada e faltava apenas o jar do "Servlet-api-2.4.jar", segue o printScreen de como ficou as bibliotecas, no mais obrigado a todos que leram e tentaram me ajudar. :D
Anexos
Pacotes para JasperReports
Pacotes para JasperReports
Pacotes para o relatório.png (13.75 KiB) Exibido 14498 vezes
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes