Du har två problem:
- Uteslut
@Consumes(MediaType.APPLICATION_JSON). Din begäran har ingenting med json att göra. @PathParams bör ersättas med@RequestParams. Värdena läses som begäranparametrar (frågesträng) och inte som sökvägsdelar.
I exemplet med begäran bör du också bli av med den extra / efter User :
localhost:8080/User?userName=Daniel&...
För att använda sökvägsparametrar bör du lägga till en sökvägsanteckning till resursmetodkonfigurationen, något som:
@RequestMapping("/{userName}/{password}/{phone}/{email}/{roles}
och begäran ska se ut ungefär som:
localhost:8080/User/Daniel/test/0634554567/daniel/OWNER
Vilket inte alls är intuitivt
Och en sista sak:List<String> roles är fel. Spring konverterar inte till en lista med strängar, oavsett om du använder sökväg eller frågeparameter. Du måste själv dela upp rollerna i array (antagligen med ,). som en separator) eller tillhandahålla en Converter .