【发布时间】:2015-02-18 12:19:17
【问题描述】:
尝试将我的项目从 play 2.2.7 迁移到 2.3.8。
项目代码如下:
def setCoordinatesOfAddresses(cardId: Long, caller: Option[Tuple2[Float,Float]] = None, event: Option[Tuple2[Float,Float]] = None) {
Logger.debug("callling SC.setCoordinatesOfAddresses")
DB.withConnection { implicit c =>
try {
val query = SQL("Execute Sc.setCoordinatesOfAddresses {cardId}, {deviceLatitude}, {deviceLongitude}, NULL, NULL, {eventsLatitude}, {eventsLongitude}")
query.on(
"cardId" -> cardId,
"deviceLatitude" -> caller.map(_._1).getOrElse(null),
"deviceLongitude" -> caller.map(_._2).getOrElse(null),
"eventsLatitude" -> event.map(_._1).getOrElse(null),
"eventsLongitude" -> event.map(_._2).getOrElse(null) ).execute()
} catch {
case e: Throwable => Logger.error("error", e)
}
}
Logger.debug("SC.setCoordinatesOfAddresses called")
}
编译器给了我这个错误:
Error:(384, 28) Play 2 Compiler:
../app/controllers/Cards.scala:384: No implicit view available from Any => anorm.ParameterValue.
"deviceLatitude" -> caller.map(_._1).getOrElse(null),
^
我应该怎么做才能解决这个问题? 正如我从文档中了解到的,我需要定义参数类型。但我不明白在下面的代码中在哪里以及如何做到这一点。
【问题讨论】:
-
你试过这些答案吗?
-
我遇到了这个问题,原因是我使用的是 java 1.7 而不是最新 (2.4) 版本使用的 1.8。
标签: scala playframework playframework-2.2 playframework-2.3 anorm