Erro - Cannot find class

4 respostas
cris2

Olá,

Tenho em meu projeto, um pacote chamado br.com.exemplo.dao, onde tenho minha classe PessoaDAO.java
Ao tentar executá-lo, ocorre o seguinte erro:

2007-08-15 10:06:00,328 ERROR web.context.ContextLoader  -&gt Context initialization failed
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [br.com.exemplo.dao.PessoaDAO] for bean with name 'pessoaDAO' defined in ServletContext resource [/WEB-INF/applicationContext-beans.xml]; nested exception is java.lang.ClassNotFoundException: br.com.exemplo.dao.PessoaDAO
Caused by: 
java.lang.ClassNotFoundException: br.com.exemplo.dao.PessoaDAO
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
	at org.springframework.util.ClassUtils.forName(ClassUtils.java:177)
	at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:317)
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1008)
	at org.springframework.beans.factory.support.AbstractBeanFactory.isBeanClassMatch(AbstractBeanFactory.java:1036)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:165)
	at org.springframework.context.support.AbstractApplicationContext.getBeanNamesForType(AbstractApplicationContext.java:689)
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:395)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:328)
	at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156)
	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4334)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
15/08/2007 10:06:00 org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [br.com.exemplo.dao.PessoaDAO] for bean with name 'pessoaDAO' defined in ServletContext resource [/WEB-INF/applicationContext-beans.xml]; nested exception is java.lang.ClassNotFoundException: br.com.exemplo.dao.PessoaDAO
Caused by: java.lang.ClassNotFoundException: br.com.exemplo.dao.PessoaDAO
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
	at org.springframework.util.ClassUtils.forName(ClassUtils.java:177)
	at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:317)
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1008)
	at org.springframework.beans.factory.support.AbstractBeanFactory.isBeanClassMatch(AbstractBeanFactory.java:1036)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:165)
	at org.springframework.context.support.AbstractApplicationContext.getBeanNamesForType(AbstractApplicationContext.java:689)
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:395)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:328)
	at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156)
	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4334)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
15/08/2007 10:06:00 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart

Se eu renomear o pacote para br.com.exemplo.dao2, consigo executar meu projeto por mais um tempo sem o erro, mais depois o erro ocorre novamente e tenho que renomear o pacote de novo. :cry:

Alguém sabe oque pode estar acontecendo?

Obrigada!
:slight_smile:

4 Respostas

marcelo_mococa

caramba…

você está usando o bean como singleton ou prototype?
se for como singleton ele cria o bean apenas uma vez, ou seja, este erro não deveria começar a acontecer do nada.

veja se a classe está compilada e o .class está dentro do diretório /WEB-INF/classes.

cris2

Olá Marcelo!

Sim eu estou usando o bean como singleton, realmente não sei porque este erro está acontecendo, principalmente porque ele acontece volta e meia, sem nenhum motivo aparente… :frowning:

Minha classe está compilada e meu .class está no diretório /build/classes.

marcelo_mococa

é um projeto WEB?

as classes compiladas devem estar no diretório WEB-INF/classes.

cris2

Sim, ele é um projeto WEB.

Mas as classes compiladas ficam em build/classes. Pelo menos foi lá que o eclipse colocou. :frowning:

Criado 15 de agosto de 2007
Ultima resposta 16 de ago. de 2007
Respostas 4
Participantes 2