es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Error de Spring @RequestParameter no es una cadena.

Tengo un error interno del servidor con la anotación @RequestParam, y a continuación se muestra el error:

2021-11-19 19:09:46.012 ERROR 68100 --- [nio-8080-exec-3] app.gym.v1.Resource.UserControl          : El parámetro de solicitud requerido 'isNonLocked' para el tipo de parámetro String no está presente
2021-11-19 19:09:46.014  WARN 68100 --- [nio-8080-exec-3] .m.m.a.ExceptionHandlerExceptionResolver : Resuelto [org.springframework.web.bind.MissingServletRequestParameterException: El parámetro de solicitud requerido 'isNonLocked' para el tipo de parámetro String no está presente]

Este es el código del recurso que proporciona la respuesta de API para ese parámetro:

java
@PutMapping("/update")
public ResponseEntity<User> update(@RequestParam("currentUsername") String currentUsername,
@RequestParam("username") String username,
@RequestParam("email") String email,
@RequestParam("role") String role,
@RequestParam("isActive") String isActive,
@RequestParam("isNonLocked") String isNonLocked) throws UserNotFoundException, UsernameExistException, EmailExistException, IOException {
User updatedUser = userService.updateUser(currentUsername, username,email, role, Boolean.parseBoolean(isNonLocked), Boolean.parseBoolean(isActive));
return new ResponseEntity<>(updatedUser, OK);
}

El problema se encuentra en el parámetro isNonLocked, el cual se esperaba que fuera una cadena, pero estaba siendo analizado correctamente de booleano a cadena. Por lo tanto, no sé cuál es el problema.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema está en la anotación @RequestParam para el parámetro isNonLocked. Espera un tipo String, pero lo estás analizando de un tipo boolean. Debe asegurarte de que el parámetro se esté pasando como un tipo String en la solicitud.

Comments are closed.