[Ajuda] NoClassDefFoundError em bean do Spring  XML
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Autor Mensagem
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

Pessoal estou com o seguinte erro:

java.lang.NoClassDefFoundError: br/com/xxx/ep/afac/modelo/dao/PontoDAO (wrong name: br/com/petrobras/ep/afac/modelo/dao/PontoDao)

Não entendo pois o nome está correto em todos os lugares... segue os arquivos:

application context:


PontoServiceImpl:


PontoDAO:


Alguem faz ideia ??

This message was edited 3 times. Last update was at 02/02/2011 11:15:41


Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

Posta a pilha do erro completa

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

segue a pilha:




Parece que está procurando por PontoDao e a classe é com maiuscula PontoDAO... Porém já dei um find no projeto e não existe nenhuma referencia assim minuscula

This message was edited 2 times. Last update was at 02/02/2011 11:26:33


Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

Onde você está mapeando o "sistemaDAO"?

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

como assim mapeando?

OBS: é PontoDAO... SistemaDAO também está dando o mesmo erro, porém eu removi do exemplo ali pra simplificar.

This message was edited 1 time. Last update was at 02/02/2011 11:29:46


Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
emmanuelrock
Java Ninja
[Avatar]

Membro desde: 07/05/2009 00:38:41
Mensagens: 291
Localização: Curitiba - PR
Offline

Existe essa classe: br.com.xxx.ep.afac.modelo.dao.SistemaDAO ?

"Quem sabe que é profundo busca a clareza. Quem deseja parecer profundo para a multidão procura ser obscuro porque a multidão toma por profundo aquilo cujo o fundo não vê, ela é medrosa... exita em entrar na água" - Friedrich Nietzsche.
[Email] [MSN]
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

existe, com certeza rs

Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

O Spring não conhece essa classe. Ele não sabe onde ela está. Ele não vai procurar item a item dentro da estrutura que você possui para localizá-lo.
O application context precisa dizer a ele quem é quem e onde está (eventualmente essa configuração pode ser personalizada, mas isto é outra história).

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
emmanuelrock
Java Ninja
[Avatar]

Membro desde: 07/05/2009 00:38:41
Mensagens: 291
Localização: Curitiba - PR
Offline

Pelo que eu entendi no log, o erro acontece quando vai carregar a classe br.com.xxx.ep.afac.modelo.dao.jdbc.PontoJdbcDAO, diz que essa classe não enxerga uma implementação da interface classe br.com.xxx.ep.afac.modelo.dao.PontoDAO. Existe alguma classe que implementa PontoDAO? O erro pode ser esse, tentativa de instanciar uma interface. Posta a classe PontoJdbcDAO.

This message was edited 2 times. Last update was at 02/02/2011 11:43:58


"Quem sabe que é profundo busca a clareza. Quem deseja parecer profundo para a multidão procura ser obscuro porque a multidão toma por profundo aquilo cujo o fundo não vê, ela é medrosa... exita em entrar na água" - Friedrich Nietzsche.
[Email] [MSN]
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

This message was edited 2 times. Last update was at 02/02/2011 11:50:50


Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
emmanuelrock
Java Ninja
[Avatar]

Membro desde: 07/05/2009 00:38:41
Mensagens: 291
Localização: Curitiba - PR
Offline

Faça do seu PontoDAO uma classe.

"Quem sabe que é profundo busca a clareza. Quem deseja parecer profundo para a multidão procura ser obscuro porque a multidão toma por profundo aquilo cujo o fundo não vê, ela é medrosa... exita em entrar na água" - Friedrich Nietzsche.
[Email] [MSN]
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

foi mal, postei sem o public class PontoJdbcDAO implements PontoDAO{


ou seja, é uma interface msm

This message was edited 1 time. Last update was at 02/02/2011 11:53:16


Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
emmanuelrock
Java Ninja
[Avatar]

Membro desde: 07/05/2009 00:38:41
Mensagens: 291
Localização: Curitiba - PR
Offline

Porque você não coloca os métodos de PontoDAO dentro de PontoJdbcDAO?

"Quem sabe que é profundo busca a clareza. Quem deseja parecer profundo para a multidão procura ser obscuro porque a multidão toma por profundo aquilo cujo o fundo não vê, ela é medrosa... exita em entrar na água" - Friedrich Nietzsche.
[Email] [MSN]
ataufo
Java Ninja
[Avatar]

Membro desde: 21/03/2009 12:15:23
Mensagens: 267
Offline

a interface ajuda na manutenção do código, mas eu removi ela fazer oq... então o problema acabou rsrs

mas valeu ae galera

Victor Soares
ataufo@gmail.com
[Email] [MSN] [ICQ]
emmanuelrock
Java Ninja
[Avatar]

Membro desde: 07/05/2009 00:38:41
Mensagens: 291
Localização: Curitiba - PR
Offline

Então, acho que você estava indo na contramão. A idéia é criar uma interface abragente, como:



E depois a classe implementadora como:



Caso precise de métodos específicos crie uma classe DAO específica estendendo GenericDAO.

*Neste caso usando Hibernate. Fonte:http://community.jboss.org/wiki/GenericDataAccessObjects#The_DAO_interfaces

Dica modesta: Comece a usar Spring + Hibernate.

This message was edited 1 time. Last update was at 02/02/2011 14:13:22


"Quem sabe que é profundo busca a clareza. Quem deseja parecer profundo para a multidão procura ser obscuro porque a multidão toma por profundo aquilo cujo o fundo não vê, ela é medrosa... exita em entrar na água" - Friedrich Nietzsche.
[Email] [MSN]
 
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Ir para:   
Powered by JForum 2.1.8 © JForum Team