我是REST新手,正在开发一个客户端,将数据发布到外部托管服务.我使用org.reslet.resource.ClientResource来创建一个客户端
Representation rep = new JsonRepresentation(json);
rep.setMediaType(MediaType.APPLICATION_JSON);
rep.setCharacterSet(CharacterSet.UTF_8);
ClientResource clientResource = getClientResource();
Representation reply = clientResource.post(rep);
return readResponseStream(reply, clientResource);
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误
Exception in thread "main" Length Required (411) - Length Required
at org.restlet.resource.ClientResource.handle(ClientResource.java:858)
at org.restlet.resource.ClientResource.post(ClientResource.java:1197)
at org.mine.client.impl.RestClient.post(RestClient.java:59)
Run Code Online (Sandbox Code Playgroud)
相同的代码适用于get请求
Representation reply = clientResource.get();
Run Code Online (Sandbox Code Playgroud)
我正在使用reslet api 2.0.8.这似乎是post org.restlet中的问题:针对webservice发布JSON内容会返回HTTP错误411(需要的长度)
我在类路径中有以下jar
org.apache.commons.codec.jar org.apache.commons.logging.jar org.apache.httpclient.jar org.apache.httpcore.jar org.json.jar org.restlet.ext.json.jar org.restlet.jar
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.