Spring apresenta erro na IDE Eclipse

2 respostas
R

Olá a todos, gente estou com um problema, aparece no Eclipse a mensagem lá em Markers
Erro ocorreu processando XML 'Unable to load class [org.springframework.transaction.annotation.AnotationTransactionAtributeSource]
Are you running on Java 1.5+?

Bem o meu Java é o 6, o Tomcat é o 7 o Spring é o 3… bem, eu criei as bibliotecas de Usuario e ja revisei todos os arquivos… não sei que erro é este.

Outra coisa que queria entender é sobre a camada Serviço, lendo livros e tutoriais eu pensei que so precisade
da camada Modelo ( que seriam as classe que representam as tabelas ) + as classes DAO e
as classes “Controller” que vai ligar a View com o DAO, so que ai eu leio e vejo tutoriais onde existem classes
com a anotacao @Service

Entao eu alem da classe DAO e da Controller eu tenho que tem mais uma Classe Servico? isto tá me confundindo muito
e até o que eu irei colocar nesta classe Serviço porque pelo que parece tudo ja esta pronto no DAO e em Controller

Bem sou realmente iniciante em Java , tô tentando fazer um projeto e tô parando nestes problemas de "falta de conhecimento"
alguem poderia me dar uma dica?

Robson Lira

2 Respostas

danieldomingues86

Outra coisa que queria entender é sobre a camada Serviço, lendo livros e tutoriais eu pensei que so precisade
da camada Modelo ( que seriam as classe que representam as tabelas ) + as classes DAO e
as classes “Controller” que vai ligar a View com o DAO, so que ai eu leio e vejo tutoriais onde existem classes
com a anotacao @Service

Entao eu alem da classe DAO e da Controller eu tenho que tem mais uma Classe Servico? isto tá me confundindo muito
e até o que eu irei colocar nesta classe Serviço porque pelo que parece tudo ja esta pronto no DAO e em Controller

Bem sou realmente iniciante em Java , tô tentando fazer um projeto e tô parando nestes problemas de "falta de conhecimento"
alguem poderia me dar uma dica?

Olá,

Sobre o primeiro problema não posso ajudar, pois isso nunca ocorreu comigo, mas dê uma olhada na configuraçao do build path, pode ser isso.

Sobre a parte acima de separação de responsabilidades, voce está confundindo MVC que é um Design Pattern utilizado na camada de apresentação, com camadas (layers).
Imagine que voce tem 3 camadas : Camada de Apresentacao (onde está o MVC - Model View Controller), Camada de Negocio (onde está @Service), Camada de Persistencia (onde ficam os DAOs por exemplo).

Segue um link que pode ajudar : http://www.fragmental.com.br/wiki/index.php?title=MVC_e_Camadas#MVC:_Intera.C3.A7.C3.A3o_Entre_Componentes

Abraços
Daniel

R

Daniel, Olá Tudo bem?

Meu caro sobre o Erro eu achei, no Eclipse eu tinha marcado no meu projeto “Spring Project Nature” qdo clicamos com o botão
direito no projeto e marcamos esta opção em Spring Tools , eu removi e o erro desapareceu.

Bem sobre a questão de Camadas ou MVC bem eu concordo com vc sobre eu estar confundindo e não dificil ser algo mais do que isto, mais o que eu não entendo é o seguinte pra mim ( no que eu tenho lido ) o Managead Bean ( Controller ) ele esta ligado a View, e de acordo com o que ele recebe ele acessa o DAO ( classes marcadas com @Repository ) este DAO tem a Injeção do EntityManager pelo Spring e as classes da camada Model ou seja as marcadas com @Entity, ao meu ver isto faz o trabalho.
Onde é que se encaixa uma classe anotada com @Service? e o que tem nela ou melhor o que devo colocar nela?
eu não encontrei referencias ou melhor muitas referencias no pagina do Spring sobre isto.

Bem mais eu prossegui e fiz mais um pacote “Service” e fiz a classe anotada com @Service, mais abaixo
no corpo da classe ao colocar a anotação @Inject na propriedade que representa o DAO, mais o eclipse não conseguiu fazer o import. ocasionando um erro, o eclipse não deixou também eu colocar um import na mão, nem para o spring nem para o
java ( import javax.inject.Inject )

Eu li em um artigo o seguinte

@Autowired e @Inject
Como esperado, você pode utilizar a anotação @Autowired em métodos setter. Se estiver utilizando um JAR para o JSR-330 (Injeção de dependencia) poderá utilizar a anotação @Inject. O Spring detecta se o JAR está presente automaticamente.

o que é este JSR-330 ? será que é alguma classe que eu tenho que ter?

Criado 3 de junho de 2011
Ultima resposta 6 de jun. de 2011
Respostas 2
Participantes 2