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

Erro 404 - [http-nio-8080-exec-5] WARN org.springframework.web.servlet.PageNotFound

Consegui acessar a página de editar produto, porém ao tentar salvar a alteração do produto ocorre um erro de mapping:

[http-nio-8080-exec-5] WARN org.springframework.web.servlet.PageNotFound - No mapping for POST /projeto-jpa-2/cadastraProduto

Meu Controller:

@Transactional
    @RequestMapping(method=RequestMethod.POST, name="cadastraProduto")
    public String cadastraProduto(@ModelAttribute @Valid Produto produto, BindingResult result, RedirectAttributes atts) {[...]}

Meu Post no form.jsp:

<form action="/projeto-jpa-2/cadastraProduto" method="post">
5 respostas

no seu form.jsp, tente usar:

<form action="${spring:mvcUrl('cadastraProduto').build()}" method="post">

Antes desta alteração eu conseguia carregar a view para editar, dava erro 500 ao salvar alterações

Ao inserir esta Action com spring:mvcUrl, lança um Erro - 404 ao clicar em editar algum produto, nem carregou a jsp:

Root Cause

javax.el.ELException: Problems calling function [spring:mvcUrl]
    org.apache.el.parser.AstFunction.getValue(AstFunction.java:211)
    org.apache.el.parser.AstValue.getValue(AstValue.java:137)
    org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:190)
SEVERE: Servlet.service() for servlet [jsp] threw exception
java.lang.IllegalArgumentException: Mapping not found: cadastraProduto
    at org.springframework.web.servlet.mvc.method.annotation.MvcUriComponentsBuilder.fromMappingName(MvcUriComponentsBuilder.java:463)

Estou com o mesmo problema do amigo...

A jsp nem está carregando e está dando o erro javax.el.ELException: Problems calling function [spring:mvcUrl]

Tentei substituir:

<form action="${spring:mvcUrl('cadastraProduto').build()}" method="post">

por:

<form class="form-group" method="post" action="<c:url value="/produto/cadastrar"/>

Deixando o RequestMapping do método "salvar" como:

@RequestMapping(method=RequestMethod.POST, name="cadastraProduto", value="/cadastrar")

Mesmo assim o problema ainda ocorre.

solução!

Tentei de tudo, dropei meu database e nada, acabei pegando os arquivos do professor (incluíndo o POM), testando e copiando classes

@Alexandre Vinicius, se quiser dar uma olhada nas modificações, segue o link do meu commit

@Jhony Villani

Fiz o que vc sugeriu e funcionou!

Muita coisa desconexa nesse projeto.

Muito obrigado pela ajuda.