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

@RequestParam(required = false) String oredenacao

Olá, realizando alguns testes, coloquei o atributo String ordenacao como required = false, porem ao não envia-lo recebo erro 500 com a seguinte mensagem: "status": 500, "error": "Internal Server Error", "message": "Property must not null or empty!"

Por que recebo esse erro se coloquei como parametro requerido = false?

Grato,

Thiago Gomes

3 respostas

Bom dia Thiago, confere os nomes das variáveis para ver se não está oredenacao ao inves de ordenacao, porque senão o spring não faz o binding

Oi Guilherme Romão, obrigado pela sua resposta.

Então na verdade eu escrevi errado aqui no post mesmo, no código esta correto.

public Page<TopicoDto> lista(@RequestParam(required  false) String nomeCurso, @RequestParam(required = false) int pagina, @RequestParam(required = false) int quantidade, @RequestParam(required = false) String ordenacao)

Quando coloco o ordenacao = false ele da o erro que comentei no post.

solução!

Oi Thiago,

Talvez o problema tenha sido com os parametros do tipo int, pois quando você não os envia na requisição o Spring Boot passa como valor null, mas com tipos primitivos ele não vai conseguir.

Tenta alterar seu método para utilizar Integer:

@GetMapping 
public Page lista(@RequestParam(required = false) String nomeCurso, @RequestParam(required = false) Integer pagina, @RequestParam(required = false) Integer quantidade, @RequestParam(required = false) String ordenacao)

Veja se assim funciona.