[英]Convert Play Framework java Promise to Play Framework Scala Promise
[英]Play! framework with missing type Promise
我正在努力獲得我的第一個Scala + Play! 應用程序工作,我在嘗試訪問我的應用程序時遇到此問題(在端口9000上):
not found: type Promise
在這條線上:
val page: Promise[play.api.libs.ws.Response] = WS.url(googleApiUrl).get()
那是我的進口:
import play.api._
import play.api.mvc._
import play.api.libs.ws._
import play.api.libs.ws.Response
import play.api.http
import play.api.libs.concurrent._
import play.api.libs._
我在這里錯過了什么嗎?
這些是控制台上的日志:
sbt.PlayExceptions$CompilationException: Compilation error[not found: type Promise]
at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15$$anonfun$apply$16.apply(PlayReloader.scala:322) ~[na:na]
at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15$$anonfun$apply$16.apply(PlayReloader.scala:322) ~[na:na]
at scala.Option.map(Option.scala:133) ~[scala-library.jar:na]
at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15.apply(PlayReloader.scala:322) ~[na:na]
at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15.apply(PlayReloader.scala:319) ~[na:na]
at scala.Option.map(Option.scala:133) ~[scala-library.jar:na]
Play2.1使用Scala Future而不是玩Promise 。
查看遷移指南以獲取更多信息,“Play的承諾將成為Scala的未來”。
一個簡單的例子就是這樣的:
import play.api._
import play.api.mvc._
import play.api.libs.ws._
import play.api.libs.concurrent._
import play.api.libs.concurrent.Execution.Implicits._
def myAction() = Action {
Async {
WS.url(googleApiUrl).get.map(response => Ok("what you want here"))
}
}
您可以通過更復雜地使用WS api來檢查此示例 。
問題是缺少導入:
import scala.concurrent._
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.