한 가지는 바로 Akka 미래 내부 예외에서 "회복"하는 것입니다
return async(Akka.asPromise(ask(myActor, "hello", uploadImageTimeout).recover(
new Recover<Object>() {
@Override
public Object recover(Throwable t) throws Throwable {
if(t instanceof AskTimeoutException) {
Logger.error("Got exception: ", t);
return internalServerError("Timeout");
}
else {
Logger.error("Got exception: ", t);
return internalServerError("Got Exception: " + t.getMessage());
}
}
})
).map(new Function<Object, Result>() {
@Override
public Result apply(Object response) {
if(response instanceof Result) {
// Result objects are returned by the recover handler above
return (Result)response;
}
else {
return ok(doSomethingWithResponse(response));
}
}
}));
광산을 발견했다. 복구하려면 PartialFunction 객체가 필요하며 어떤 예제도 찾지 못했습니다. – gavioto