В следующем примере возвращается пустое тело ответа (ожидается existingUser
).
Есть идеи, почему это так?
Код состояния правильный.
@PutMapping("/{userId}")
public Mono<ResponseEntity<User>> updateUser(@PathVariable(value = "userId") String userId,
@Valid @RequestBody User user) {
return userRepo.findById(userId)
.flatMap(existingUser -> {
existingUser.setFirstName(user.getFirstName());
existingUser.setLastName(user.getLastName());
existingUser.setEmail(user.getEmail());
existingUser.setActive(user.isActive());
return userRepo.save(user);
})
.map(updatedUser -> new ResponseEntity<>(updatedUser, HttpStatus.NO_CONTENT))
.defaultIfEmpty(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}
Изображение режима отладки: