Ich bin auf Play 2.2.x und habe die folgende Code-snippet:Play WS Exception: java.lang.IllegalArgumentException: name enthält eines der folgenden verbotenen Zeichen: =,;: t r n v f: Agent,
def call(server: String, api: String) = {
import play.api.libs.ws._
import scala.concurrent.Await
import scala.concurrent.duration._
val request = WS.url(server + api)
Await.result(request.get(), 1 minute)
}
ich diese Störung erhalte:
java.lang.IllegalArgumentException: name contains one of the following prohibited characters: =,;: \t\r\n\v\f: Agent,
at org.jboss.netty.handler.codec.http.HttpCodecUtil.validateHeaderName(HttpCodecUtil.java:38)
at org.jboss.netty.handler.codec.http.HttpHeaders.validateHeaderName(HttpHeaders.java:834)
at org.jboss.netty.handler.codec.http.HttpHeaders.addHeader(HttpHeaders.java:838)
at org.jboss.netty.handler.codec.http.DefaultHttpMessage.addHeader(DefaultHttpMessage.java:44)
at org.jboss.netty.handler.codec.http.HttpMessageDecoder.readHeaders(HttpMessageDecoder.java:496)
at org.jboss.netty.handler.codec.http.HttpMessageDecoder.decode(HttpMessageDecoder.java:193)
at org.jboss.netty.handler.codec.http.HttpClientCodec$Decoder.decode(HttpClientCodec.java:143)
at org.jboss.netty.handler.codec.http.HttpClientCodec$Decoder.decode(HttpClientCodec.java:127)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:500)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:435)
at org.jboss.netty.handler.codec.http.HttpClientCodec.handleUpstream(HttpClientCodec.java:92)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Was mache ich falsch? Die server + api
hat keinerlei Sonderzeichen.
auch nicht sicher, warum dies so ausführlich ist in Scala zu tun - warum die API erfordern mir 3 Dinge zu importieren einen einfachen GET
Anruf zu machen ...
EDIT: Bestätigte dies geschieht, wenn Server https://example.com
ist aber nicht, wenn es http ist: http://example.com