2012-12-18 2 views
4

첫 번째 스칼라 + 재생을 얻으려고합니다! 응용 프로그램 작업, 그리고 (포트 9000) 내 응용 프로그램에 액세스하려고 할 때이 문제가 발생할 수 :Play! 누락 된 형식의 프레임 워크 약속

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._ 

이 라인에

not found: type Promise 

내가 여기서 뭔가를 놓치고 있니?

들은 콘솔에 로그됩니다

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] 
+0

Play2 버전이란 무엇입니까? 최신/출시 예정인 API가 많이 변경되었습니다. –

+0

@JulienLafont 문제 2.1 버전 RC를 사용하고있었습니다. – wlk

답변

3

문제는 누락 된 가져 오기이었다

import scala.concurrent._ 
7

Play2.1 스칼라 미래 대신 플레이 약속를 사용합니다.

자세한 내용은 "Play의 약속이 스칼라의 미래가 될 것"장을 확인하십시오.

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를보다 complexe 사용하여이 exemple을 확인할 수 있습니다

간단한 exemple는 그런 일을 제공합니다.

+0

감사합니다.이 튜토리얼을 따라했지만 실제 문제는 하나의 가져 오기를 놓친 것입니다. import scala.concurrent._ – wlk

관련 문제