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

Uma curiosidade sobre o s:mvcUrl()

Olá pessoal,

Não sei se alguém já fez essa pergunta aqui no fórum, se já, eu não vi.

Fiquei com uma curiosidade em relação ao s:mvcUrl() que o Paulo utiliza nas aulas para montar urls (seja de links de navegação ou ações de formulário).

Porque, ao utilizá-lo, escrevemos o seguinte:

${s:mvcUrl('PC#grava').build() }

referindo-se a ProdutoController, método grava.

E se por acaso tivermos um PessoaController com um método grava também, ou qualquer controller que tenha PC no nome, o que aconteceria na aplicação?

2 respostas
solução!

Boa noite Cesar, teríamos ai um conflito! mas para usar o método mvcUrl dá fazer uma coisa bacana...

dá pra colocar um name no teu método como parâmetro do @RequestMapping e chamar esse name que deve ser único entre todos os controllers:

@RequestMapping(method=RequestMathod.POST, name="cadastraProduto")

Nenhum outro método pode ter name, então poderá chamar com:

${s:mvcUrl('cadastraProduto').build() }

Abraços

Legal Guilherme, é até mais razoável fazer dessa outra maneira. Obrigado pela resposta :)