Estou recebendo um erro ao inicializar o Tomcat:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'produtosController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private br.com.casadocodigo.loja.daos.ProdutoDAO br.com.casadocodigo.loja.controllers.ProdutosController.produtoDAO; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [br.com.casadocodigo.loja.daos.ProdutoDAO] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
As classes que escrevi são:
package br.com.casadocodigo.loja.daos;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.springframework.stereotype.Repository;
import br.com.casadocodigo.loja.models.Produto;
@Repository
public class ProdutoDAO {
    @PersistenceContext
    private EntityManager manager;
    public void gravar(Produto produto){
        manager.persist(produto);
    }
}
package br.com.casadocodigo.loja.controllers;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;
import br.com.casadocodigo.loja.daos.ProdutoDAO; import br.com.casadocodigo.loja.models.Produto;
@Controller public class ProdutosController {
@Autowired private ProdutoDAO produtoDAO;
@RequestMapping("/produtos/form") public String form(){ return "produtos/form"; }
@RequestMapping("/produtos") public String grava(Produto produto){
System.out.println(produto.getTitulo()); System.out.println(produto.getSinopse()); System.out.println(produto.getPaginas());
this.produtoDAO.gravar(produto);
return "produtos/ok";
}
}
package br.com.casadocodigo.loja.models;
public class Produto {
    private String titulo;
    private String sinopse;
    private int paginas;
    public String getTitulo() {
        return titulo;
    }
    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }
    public String getSinopse() {
        return sinopse;
    }
    public void setSinopse(String sinopse) {
        this.sinopse = sinopse;
    }
    public int getPaginas() {
        return paginas;
    }
    public void setPaginas(int paginas) {
        this.paginas = paginas;
    }
}
Qual será o problema?
Obrigado