次のコードでコンパイルするとエラーが発生します。Webサービスを呼び出そうとしています。
def authenticate(username: String, password: String): String = {
val request: Future[Response] =
WS.url(XXConstants.URL_GetTicket)
.withTimeout(5000)
.post( Map("username" -> Seq(username), "password" -> Seq(password) ) )
request map { response =>
Ok(response.xml.text)
} recover {
case t: TimeoutException =>
RequestTimeout(t.getMessage)
case e =>
ServiceUnavailable(e.getMessage)
}
}
次のコンパイラエラーが表示されます。
type mismatch; found : scala.concurrent.Future[play.api.mvc.SimpleResult[String]] required: String