具有switchIfEmpty的Mono <Optional <Object >>

问题描述

在以下实现中,期望的是,如果switchIfEmpty为空,但将运行到Mono<Optional<Item>>,但不会按预期运行。

public Mono<ServerResponse> getItemById(ServerRequest request) {
        JwtClaim claim = retrieveClaimFromRequest(request);
        String itemId = request.pathVariable("itemId");
        Mono<ServerResponse> notFound = ServerResponse.notFound().build();
        Mono<Optional<Item>> item = Mono.just(itemRepository.findById(Long.parseLong(itemId)));
        return item
                .flatMap(retItem -> ServerResponse.ok().contentType(APPLICATION_JSON).bodyValue(retItem))
                .switchIfEmpty(notFound);
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)