Você tem dois problemas:
- Omitir
@Consumes(MediaType.APPLICATION_JSON). Sua solicitação não tem nada a ver com json. @PathParams deve ser substituído por@RequestParams. Os valores são lidos como parâmetros de solicitação (sequência de consulta) e não como partes do caminho.
Além disso, no exemplo de solicitação, você deve se livrar do
/ extra após User :localhost:8080/User?userName=Daniel&... Para usar parâmetros de caminho, você deve adicionar uma anotação de caminho à configuração do método de recurso, algo como:
@RequestMapping("/{userName}/{password}/{phone}/{email}/{roles} e a solicitação deve ser algo como:
localhost:8080/User/Daniel/test/0634554567/daniel/OWNER O que não é nada intuitivo
E uma última coisa:
List<String> roles está errado. O Spring não será convertido em uma lista de strings, não importa se você usa o caminho ou o parâmetro de consulta. Você terá que dividir as funções em array (provavelmente usando , como separador) ou forneça um Converter .