使用Jersey 2.4作为REST servlet获得Jetty 8.1:
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>org.foo.rest;org.bar.rest</param-value>
</init-param>
Run Code Online (Sandbox Code Playgroud)
GET响应工作正常,但是当我尝试POST时,从Jetty看到这个奇怪的错误:
WARN oejserver.AbstractHttpConnection - 标头已满:java.lang.RuntimeException:Header> 6144
客户端只看到没有详细信息的HTTP 500响应:
信息:1*LoggingFilter - 在主线程
1 上收到的请求> PUThttp://localhost:8080/rest/doPOST
1>接受:application/json
1> Content-Type:application/json
{"name":"Kris Kringle","trkNbr":"585802240942","rptDt ":空," reqType ":"细节"}2013年11月19日12:59:49 org.glassfish.jersey.filter.LoggingFilter log
INFO:2*LoggingFilter - 线程主
2 上收到的响应<500
2 <Content-Length:0
2 <Server:Jetty(8.1.13 .v20130916)线程"main"中的异常javax.ws.rs.InternalServerErrorException: org.glassfish.jersey.client.JerseyInvocation.convertToException(JerseyInvocation.java:929)中的
HTTP 500服务器错误
请求是这样的{在目标之后}:
TestPOJO responseMsg = target.path("/rest/doPOST")
.request(MediaType.APPLICATION_JSON)
.put(Entity.json(reqPOJO), TestPOJO.class);
Run Code Online (Sandbox Code Playgroud)
在Jetty的日志中没有细节,它似乎没有进入Jersey servlet.