I try to pass a param in this method here
@RequestMapping(method = RequestMethod.GET, value = "/distrito/{idEntidade}", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Collection<Distritos>> buscarTodosDistritos(@PathVariable Long usuarioEntidade) throws ServletException {
Collection<Distritos> distritosBuscados = distritosService.buscarFiltro(usuarioEntidade);//parametro, que é o id_entidade, para passar na query de busca distritos
return new ResponseEntity<>(distritosBuscados, HttpStatus.OK);
}
and i got this error
Missing URI template variable 'usuarioEntidade' for method parameter of type Long
I'm calling this request on my front end right here
idEntidade = Number(localStorage.getItem("idEntidade"));
$http({
method : 'GET',
url : '/user/distrito/' +idEntidade
}).then(function(response) {
$scope.distritos = response.data;
}, function(response) {
console.log(response.data);
console.log(response.status);
});
};
then got an error..
Missing URI template variable 'usuarioEntidade' for method parameter of type Long
Your problem is that the name of the path variable in your rest request does not match the name of the variable passed to your java method.
You have two options:
@RequestMapping(method = RequestMethod.GET, value = "/distrito/{idEntidade}", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Collection<Distritos>> buscarTodosDistritos(@PathVariable("idEntidade") Long usuarioEntidade)
Or:
@RequestMapping(method = RequestMethod.GET, value = "/distrito/{usuarioEntidade}", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Collection<Distritos>> buscarTodosDistritos(@PathVariable Long usuarioEntidade)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With