Erro - VRaptor + JRDataSource - Resolvido

5 respostas
dandanfonte
Tenho uma classe que implementa um JRDataSource que utilizo para popular o relatório, um dao que gera um array de bytes e um controller para download do relatório. Mas ao tentar executar o projeto o seguinte erro ocorre.
GRAVE: Exception starting filter vraptor

java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at br.com.caelum.vraptor.ioc.spring.ComponentScanner.postProcessBeanDefinition(ComponentScanner.java:79)
	at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:210)
	at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.scan(ClassPathBeanDefinitionScanner.java:183)
	at br.com.caelum.vraptor.ioc.spring.ComponentScanner.scan(ComponentScanner.java:99)
	at br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.loadBeanDefinitions(VRaptorApplicationContext.java:98)
	at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
	at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:458)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:388)
	at br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.start(SpringBasedContainer.java:68)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.start(SpringProvider.java:82)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:110)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:103)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRDataSource
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
	... 36 more

5 Respostas

Aleksandro
<blockquote>Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRDataSource

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)  </blockquote>

Você verificou se os jars do jasper estão na sua classpath , pois erro diz que não encontrou os jars necessários ? outra coisa que acontece são conflitos de versão …você não diz qual servidor esta utilizando,mas se for tomcat na pasta lib dependendo da versão já existe os jars do jasper … e isto pode ser algum conflito entre a sua versão e a do server …

dandanfonte

Estou usando ireport 4.5.0 e vraptor 3.1.2, meu tomcat é a ultima versão e não possui nenhum jar do ireport na pasta lib dele.O classpath está configurado corretamente e e os jars estão na pasta lib do web-inf.

O erro que ocorre agora mudou.

GRAVE: Exception starting filter vraptor java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRExporter at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at br.com.caelum.vraptor.ioc.spring.ComponentScanner.postProcessBeanDefinition(ComponentScanner.java:79) at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:210) at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.scan(ClassPathBeanDefinitionScanner.java:183) at br.com.caelum.vraptor.ioc.spring.ComponentScanner.scan(ComponentScanner.java:99) at br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.loadBeanDefinitions(VRaptorApplicationContext.java:98) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:458) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:388) at br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.start(SpringBasedContainer.java:68) at br.com.caelum.vraptor.ioc.spring.SpringProvider.start(SpringProvider.java:82) at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:110) at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:103) at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRExporter at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546) ... 28 more

dandanfonte

Obrigado pela ajuda.
Bastava eu mudar uma linha na minha aplicação

Estava assim

Bastou eu deixa-la assim

R

Boa tarde galera!

Dandanfonte, você comentou que o erro havia mudado. Você lembra o que você fez para corrigir o primeiro erro?

GRAVE: Exception starting filter vraptor

java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource

Obrigado.

Abraços

------------------------------------------------------

dandanfonte:
Tenho uma classe que implementa um JRDataSource que utilizo para popular o relatório, um dao que gera um array de bytes e um controller para download do relatório. Mas ao tentar executar o projeto o seguinte erro ocorre.
GRAVE: Exception starting filter vraptor

java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at br.com.caelum.vraptor.ioc.spring.ComponentScanner.postProcessBeanDefinition(ComponentScanner.java:79)
	at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:210)
	at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.scan(ClassPathBeanDefinitionScanner.java:183)
	at br.com.caelum.vraptor.ioc.spring.ComponentScanner.scan(ComponentScanner.java:99)
	at br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.loadBeanDefinitions(VRaptorApplicationContext.java:98)
	at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
	at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:458)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:388)
	at br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.start(SpringBasedContainer.java:68)
	at br.com.caelum.vraptor.ioc.spring.SpringProvider.start(SpringProvider.java:82)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:110)
	at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:103)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRDataSource
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
	... 36 more
dandanfonte

pessoal consegui arrumar o erro, bastou eu pegar uma lib antiga do jasper a 3.1.4, vai entender né.
Obrigado pela ajuda.

Criado 27 de fevereiro de 2012
Ultima resposta 11 de mai. de 2012
Respostas 5
Participantes 3