Playframework 如何创造承诺<;结果>;play2.0框架-Java

Playframework 如何创造承诺<;结果>;play2.0框架-Java,playframework,playframework-2.0,Playframework,Playframework 2.0,如何在Play2.0框架-Java中创建一个Promise 我看到了这个链接。它没有包含那么多细节。你知道任何教程比参考我。请。如中所述,使用Akka。未来: Promise<Result> promiseOfResult = Akka.future( new Callable<Result>() { public Result call() { return ok("This is a promise result !");

如何在Play2.0框架-Java中创建一个
Promise

我看到了这个链接。它没有包含那么多细节。你知道任何教程比参考我。请。

如中所述,使用
Akka。未来

Promise<Result> promiseOfResult = Akka.future(
    new Callable<Result>() {
      public Result call() {
        return ok("This is a promise result !");
      }
    }
  );
promiseOfResult=Akka.future(
新的可调用(){
公共结果调用(){
返回ok(“这是一个承诺结果!”);
}
}
);
James Roper(一位游戏框架开发人员)有一个很好的例子,说明如何在Java游戏中使用Promise:
这是在游戏2.2中创造承诺的新方法

Promise<Boolean> myPromise = Promise.promise(new Function0<Boolean>() {
    public Boolean apply() throws Throwable {
        // TODO - Add Implementation here.
        return Boolean.TRUE;
    }

});
Promise myPromise=Promise.Promise(新函数0(){
public Boolean apply()抛出可丢弃的{
//TODO-在此处添加实现。
返回Boolean.TRUE;
}
});
public F.Promise asyncFoo(){
F.允诺诺=F.允诺.允诺(()->longRunningCalculation());
return promise.map((整数i)->ok(“计算结果为:+i));
}

我从来没能让这种代码正常工作过,async()是在哪里定义的?我刚刚尝试在play 2.2中使用它,我注意到方法Akka.future已被弃用。每次我眨眼时,play中的某些内容都会被弃用。这几乎对我有效,我发现我需要使用F.Function0,而不是Function0。
public F.Promise<Result> asyncFoo() {

          F.Promise<Integer> promise = F.Promise.promise(() -> longRunningCalculation());

          return promise.map((Integer i) -> ok("The calculation result is: " + i));

}