Игнорирование JSON структуры в ServerResponse.BodyBuilder.body()
Столкнулся с непониманием почему игнорируется Jackson при создании ответа в WebFlux ServerResponse.
Код Handler:
@Component
public class CommonHandler {
public Mono<ServerResponse> testRouter(ServerRequest request) {
return ServerResponse
.ok()
.body(Mono.just("abc"), RouterResponse.class);
}
public Mono<ServerResponse> testRouter2(ServerRequest request) {
return ServerResponse
.ok()
.body(BodyInserters.fromValue(new RouterResponse("abc")));
}
}
RouterResponse
@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonTypeName("response")
@JsonTypeInfo(include = JsonTypeInfo.As.WRAPPER_OBJECT, use = JsonTypeInfo.Id.NAME)
public class RouterResponse {
public String message;
}
При вызове testRouter результат: "abc"
А при вызове testRouter2 формируется нужная мне структура:
{
"response": {
"message": "abc"
}
}
Может, кто, пожалуйста, подсказать почему разная реализация составления ответа?