Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Erro com a anotação @Autowired

Olá, ao inserir a anotação @Autowired no TopicosController está gerando esse erro:

Description:
Field topicoRepository in br.com.alura.forum.controller.TopicosController required a bean of type 'br.com.forum.repository.TopicoRepository' that could not be found.
The injection point has the following annotations:
    - @org.springframework.beans.factory.annotation.Autowired(required=true)
Action:
Consider defining a bean of type 'br.com.forum.repository.TopicoRepository' in your configuration.

Tentei pesquisar algo na internet como uma possível solução, mas não obtive sucesso.

OBS: Estou utilizando o banco PostgreSQL.

Obrigado !

3 respostas

Oi,

Ta reclamando da sua interface TopicoRepository.

Dá uma conferida no pacote do repository, pois to achando que ele não é um pacote filho do pacote onde está a classe main do projeto.

Olá, consegui resolver, achei um vídeo na internet com uma explicação sobre o funcionamento da arquitetura do Spring, então para resolver esse problema, na minha classe main eu adicionei a seguinte anotação: @EnableJpaRepositories(basePackages = "br.com.forum.repository"). Essa configuração é considerada uma boa prática de programação ?

solução!

Também pode ser utilizado desse jeito, sem problemas :)

O ruim dessa abordagem é se você mudar o pacote dos repositories, vai ter que lembrar de alterar essa String.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software