Sempre que entro em detalhe, escolho o tipo de preço e clico em comprar, chego ao 404. Aparentemente n chega nem a reconhecer o CarrinhoController.
detalhe.jsp:
<form action='<c:url value="/carrinho/add"/>' method="post" class="container">
<ul id="variants" class="clearfix">
<input type="hidden" value="${produto.id }" name="produtoId" />
<c:forEach items="${produto.precos }" var="preco">
<li class="buy-option">
<input type="radio" name="tipo" class="variant-radio" id="tipo" value="${preco.tipo }" checked="checked" />
<label class="variant-label">
${preco.tipo }
</label>
<small class="compare-at-price">R$ 39,90</small>
<p class="variant-price">${preco.valor }</p>
</li>
</c:forEach>
</ul>
<button type="submit" class="submit-image icon-basket-alt" alt="Compre Agora" title="Compre Agora ${produto.titulo }!"></button>
</form>
CarrinhoComprasController:
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 org.springframework.web.servlet.ModelAndView;
import br.com.casadocodigo.loja.dao.ProdutoDAO;
import br.com.casadocodigo.loja.models.CarrinhoCompras;
import br.com.casadocodigo.loja.models.CarrinhoItem;
import br.com.casadocodigo.loja.models.Produto;
import br.com.casadocodigo.loja.models.TipoPreco;
@Controller
@RequestMapping("/carrinho")
public class CarrinhoComprasController {
@Autowired
private ProdutoDAO produtoDAO;
@Autowired
private CarrinhoCompras carrinho;
@RequestMapping("/add")
public ModelAndView add(Integer produtoId, TipoPreco tipo) {
System.out.println("Entrou aqui no carrinho/add");
ModelAndView modelAndView = new ModelAndView("redirect:/produtos");
CarrinhoItem carrinhoItem = criaItem(produtoId, tipo);
carrinho.add(carrinhoItem);
return modelAndView;
}
private CarrinhoItem criaItem(Integer produtoId, TipoPreco tipo) {
Produto produto = produtoDAO.find(produtoId);
CarrinhoItem carrinhoItem = new CarrinhoItem(produto, tipo);
return carrinhoItem;
}
}
AppWebConfig:
@EnableWebMvc
@ComponentScan(basePackageClasses= {HomeController.class, ProdutoDAO.class, FileSaver.class, CarrinhoCompras.class})
public class AppWebConfiguration extends WebMvcConfigurerAdapter{
Gostaria de ajuda como prosseguir.