- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试运行 documentation 中的简单示例没有任何变化:
import spray.json.DefaultJsonProtocol
import spray.httpx.unmarshalling._
import spray.httpx.marshalling._
import spray.http._
import HttpCharsets._
import MediaTypes._
case class Person(name: String, firstName: String, age: Int)
object MyJsonProtocol extends DefaultJsonProtocol {
implicit val PersonFormat = jsonFormat3(Person)
}
import MyJsonProtocol._
import spray.httpx.SprayJsonSupport._
import spray.util._
val bob = Person("Bob", "Parr", 32)
val body = HttpEntity(
contentType = ContentType(`application/json`, `UTF-8`),
string =
"""|{
| "name": "Bob",
| "firstName": "Parr",
| "age": 32
|}""".stripMarginWithNewline("\n")
)
marshal(bob)
body.as[Person]
Exception in thread "main" java.lang.NoSuchMethodError: spray.json.JsonParser$.apply(Ljava/lang/String;)Lspray/json/JsValue;
at spray.httpx.SprayJsonSupport$$anonfun$sprayJsonUnmarshaller$1.applyOrElse(SprayJsonSupport.scala:36)
at spray.httpx.SprayJsonSupport$$anonfun$sprayJsonUnmarshaller$1.applyOrElse(SprayJsonSupport.scala:34)
at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)
at spray.httpx.unmarshalling.Unmarshaller$$anon$1$$anonfun$unmarshal$1.apply(Unmarshaller.scala:29)
at spray.httpx.unmarshalling.SimpleUnmarshaller.protect(SimpleUnmarshaller.scala:40)
at spray.httpx.unmarshalling.Unmarshaller$$anon$1.unmarshal(Unmarshaller.scala:29)
at spray.httpx.unmarshalling.SimpleUnmarshaller.apply(SimpleUnmarshaller.scala:29)
at spray.httpx.unmarshalling.SimpleUnmarshaller.apply(SimpleUnmarshaller.scala:23)
at spray.httpx.unmarshalling.package$PimpedHttpEntity.as(package.scala:39)
at com.example.M1$.delayedEndpoint$com$example$M1$1(M1.scala:34)
at com.example.M1$delayedInit$body.apply(M1.scala:3)
at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.collection.immutable.List.foreach(List.scala:381)
at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
at scala.App$class.main(App.scala:76)
at com.example.M1$.main(M1.scala:3)
at com.example.M1.main(M1.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
scalaVersion := "2.11.7"
libraryDependencies ++= Seq(
"io.spray" %% "spray-can" % "1.3.1",
"io.spray" %% "spray-routing" % "1.3.1",
"io.spray" %% "spray-json" % "1.3.2",
"com.typesafe.akka" %% "akka-actor" % "2.3.11"
)
最佳答案
看起来是spray-http 和spray-json 之间的版本不兼容问题,这些特定版本运行良好,没有任何问题:
libraryDependencies ++= Seq(
"io.spray" %% "spray-can" % "1.3.3",
"io.spray" %% "spray-routing" % "1.3.3",
"io.spray" %% "spray-json" % "1.3.2",
"com.typesafe.akka" %% "akka-actor" % "2.3.11"
)
关于json - 无法使用spray-json解码json HttpEntity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31287841/
使用 Spray-io 构建我的第一个 servlet 非常简单。 但是 header 中引用的资源从未找到。 ...... 必须将这些资源放在哪个目录中,或者如何引导喷雾在那里查找? 简单的问题,但
我想了解 Spray 中的指令是如何工作的。 As per the documentation : The general anatomy of a directive is as follows:
对于 POST 和 PUT 请求,我使用以下语法: put { entity(as[CaseClass]) { entity => returnsOption(entity).map(r
我正在使用 marathon-lb 运行 DC/OS 1.7。 spray.io 1.3.3 向所有 marathon-lb/HAProxy 健康检查调用返回 400:请求具有相对 URI 并且缺少主
我正在使用 marathon-lb 运行 DC/OS 1.7。 spray.io 1.3.3 向所有 marathon-lb/HAProxy 健康检查调用返回 400:请求具有相对 URI 并且缺少主
我在我的喷雾 jar 服务器中使用以下路径(使用喷雾 1.2): path("my"/"path"){ get{ complete{ val buf:Array[Byte] =
我正在尝试重现 this或 this ,但我不断收到一个我无法修复的错误... 首先,这是我的依赖项: compile 'io.spray:spray-can_2.11:1.3.1' compile
我正在用 Spray 编写一个自定义指令,用于管理任何用户请求的速率限制。 我要一个 LimitManager某个地方将处理每个请求的自定义限制和规则。这个唯一需要的信息LimitManager是 u
我的服务的所有 API 调用都是 HTTP POST,参数在多部分正文中传递。目前我的身份验证如下所示 formField("token".as[String]) { token => auth
喷雾真的很容易,但我在理解路由方面遇到了问题。这就像一只狗有时会取骨头,但通常不会。我错过了什么? 有没有办法查看Spray尝试了哪些路线,以及为什么放弃某些路线?这将基本上解决这个问题。 logRe
如何在Spray-json中正确反序列化嵌套对象? import spray.json._ case class Person(name: String) case class
来自spray.io文档页面: color extract value of parameter “color” as String color.? extract optional value of
我使用 spray 和 akka actor 构建了一个 scala 应用程序。 我的问题是请求是同步的,服务器不能同时管理很多请求。 这是正常行为吗?我该怎么做才能避免这种情况? 这是我的启动代码:
我正在尝试从 Spray 提供大型临时文件。 HTTP 请求完成后,我需要删除这些文件。到目前为止,我找不到这样做的方法...... 我使用的代码类似于 this或者这个: res
Spray-json 依赖于范围内隐式 JsonWriter[T] 的存在调用toJson时在 T 的实例上. 假设我有几个具体子类型的特征,每个子类型都有一个 JsonWriter: trait B
我正在尝试从喷雾路由中的完整指令返回一个列表。 complete { List("hello") } 但是,我收到一个错误 - Expression of type List[String] do
我正在使用喷雾路由来构建一个简单的 HTTP 服务器。该服务器调用许多需要一段时间才能响应(秒)的服务。当并发请求数变得很大时,我们想拒绝请求。否则,大量并发请求会使系统陷入困境,对任何人都不利。 有
我是Spray-Json API的新手,并且试图解析Docker REST API的Json响应。 There是使用Spray-Json解析此Google Map Json响应的一个干净示例: {
我正在使用 Spray-json 将自定义对象列表编码(marshal)到 JSON 中。我有以下案例类及其 JsonProtocol。 case class ElementResponse(name
MyService.scala:33: could not find implicit value for parameter eh: spray.routing.ExceptionHandler 我
我是一名优秀的程序员,十分优秀!