1
resposta

Problema de URL ao Listar produtos

Quando eu digito http://localhost:8080/casadocodigo/produtos/lista ele me retorna um 404, agora quando digito apenas http://localhost:808/casadocodigo/produtos ele me retorna a lista de produtos. Fiz tudo como indica o video e os exercícios.

package br.com.casadocodigo.loja.controllers;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import br.com.casadocodigo.loja.daos.ProdutoDAO;
import br.com.casadocodigo.loja.models.Produto;
import br.com.casadocodigo.loja.models.TipoPreco;

@Controller
@RequestMapping("/produtos")
public class ProdutosController {

    @Autowired
    private ProdutoDAO dao;

    @RequestMapping("/form")
    public ModelAndView form() {

        ModelAndView modelAndView = new ModelAndView("produtos/form");
        modelAndView.addObject("tipos", TipoPreco.values());

        return modelAndView;

    }

    @RequestMapping(method=RequestMethod.POST)
    public String grava(Produto produto) {

        dao.gravar(produto);

        return "produtos/ok";
    }

    @RequestMapping(method=RequestMethod.GET)
    public ModelAndView listar() {
        ModelAndView modelAndView = new ModelAndView("produtos/lista");
        List<Produto> produtos = dao.listar();
        modelAndView.addObject("produtos", produtos);

        return modelAndView;
    }
}
1 resposta

Se você colocar @RequestMapping("/lista") ao invés de "@RequestMapping(method=RequestMethod.GET)" vai funcionar