简化代码示例:http://pastebin.com/9ZQxSXi9
您好
我想尝试使用restlet 2.0库和gpodder webservice,但不知怎的,我到达了一个我无法看到树木的地方。 示例中的服务需要HTTP身份验证并将一些JSON内容发布到URL。 没有什么比这更复杂但是不知怎的,即使调试视图声称请求对象包含必要的内容,RESTful webservice的响应也让我相信请求的HTTP头部缺少内容。
关于什么原因的任何想法?提前谢谢。
答案 0 :(得分:1)
问题是我没有看到WriterRepresentation的实现(JsonRepresentation,JacksonRepresentation,XStreamRepresentation)在传递对象时设置表示的大小。因此,如果您创建新的JacksonRepresentation(地图),则不会计算大小。
您必须手动计算地图内容的长度并调用Representation.setSize()。 或者,正如我所做的那样,使用
new JsonRepresentation(“json string ...”);
这个构造函数能够计算大小,当然,这是字符串长度,所以设置了正确的内容长度标题,一切顺利。