本文介绍了spray-json错误:找不到参数um的隐式值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个案例类
case class Person(val name: String)
object JsonImplicits extends DefaultJsonProtocol {
implicit val impPerson = jsonFormat1(Person)
}
我正在尝试spray-json来解析发布请求:
I'm trying spray-json in order to parse post request:
post {
entity(as[Person]) { person =>
complete(person)
}
}
但是我得到了当我尝试编译此代码时:
However I get when I try to compile this:
我不明白发生了什么,如何解决该问题?
I don't understand what's happening, how can I fix this to be working?
谢谢
推荐答案
Spray的'entity [E]'指令要求在其范围内为E类型隐式封送处理程序。
JsonImplicits
对象创建json封送处理程序
Spray's 'entity[E]' directive requires implicit marshaller in its scope for the type E.JsonImplicits
object creates json marshaller and unmarshaller for the type E.
您需要确保 implicit val impPerson
在范围内,在换句话说,将 import JsonImplicits ._ $code>放在路由定义上方。
You need to make sure that implicit val impPerson
is in the scope, in other words put import JsonImplicits._
above the route definition.
这篇关于spray-json错误:找不到参数um的隐式值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!