Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

s:mvcUrl para Controllers com mesmo Prefixo

Boa noite, Eu tenho um Controller chamado CategoriaController e outro CaixaController, por exemplo. E no padrão que quero seguir todos tem .formulario() .listar() como métodos.

Quando tento utilizar com o nome completo da classe e não consigo, exemplo: ${s:mvcUrl('CategoriaController#formulario').build()}.

Tem como utilizar o caminho completo de alguma maneira? Ou devo sempre mudar o nome do método ou da Classe para que não sejam com iniciais únicas?

1 resposta
solução!

Fala aí Roberto, blz?

Você precisa alterar o nome do mapeamento para a URI que você quer acessar. Para isso basta você adicionar o atributo name na anotação @RequestMapping para o método que você quer usar no s:mvcUrl.

Por exemplo:

@RequestMapping(value="/categoria/form",name="categoria_form")
public String formulario(){
...
}

Na sua página você irá colocar ${s:mvcUrl('categoria_form').build()}

Se você quiser saber mais sobre a classe MvcUriComponentsBuilder que é utilizada na tag mvcUrl, vou deixar o link da documentação dela.

http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/annotation/MvcUriComponentsBuilder.html#relativeTo-org.springframework.web.util.UriComponentsBuilder-

Esse link já está na sessão do método fromMappingName, que é justamente o método que é usado na tag s:mvcUrl.

Espero ter ajudado.