У меня есть dstream и я пытаюсь разобрать каждую строку в объект, используя библиотеку play json. Он работает снаружи, но не работает внутри. В нем говорится, что никакие последствия не найдены.
val textStream: ReceiverInputDStream[String] = streamingContext.socketTextStream("localhost",12345)
textStream.map{record=>
Json.parse(record).as[Car] //this doesn't works, it shows as: Json.parse(record).as[Car](...)
}
Это определено в сопутствующем объекте Car:
object Car {
implicit val carFormat = Json.format[Car]
}
Это работает, когда имплики заданы явно внутри, и это выглядит немного странно.
textStream.map{record=>
implicit val carFormat = Json.format[Car] //How do I avoid this
Json.parse(record).as[Car]
}
Как мне избежать определения внутри и заставить его работать, определяя последствия снаружи?
Я также пытался импортировать явный внутри объекта-компаньона, но это не имеет никакого значения.