在我的视图功能中,我可能会根据发布/获取数据是否有效返回int Object::hashCode
或Result
:
CompletionStage<Result>
问题是我不能让视图函数返回两种类型,因此返回异步版本并以某种方式包装if (data.hasErrors()) {
return badRequest(myview.render(data));
} else {
return CompletableFuture.supplyAsync(() -> calculate(data)
.thenApply(result -> ok("Got result: " + result.toString()));
}
(或badRequest
中的任何其他常见响应)似乎是合乎逻辑的在play.mvc.Results
。
我可以做类似的事情:
CompletableFuture
但我希望有一个更优雅的解决方案 什么?
我正在使用播放版本2.5.4。