我试图弄清楚如何使用Jesrey Client通过Java程序从客户端调用/调用服务提供的PATCH方法。
我尝试了很多方法并在线阅读了许多东西。但是,球衣尚不支持此功能。任何帮助将不胜感激。
我尝试过的示例代码之一。
ClientConfig clientConfig = new DefaultClientConfig();
clientConfig.getProperties().put(URLConnectionClientHandler.PROPERTY_HTTP_URL_CONNECTION_SET_METHOD_WORKAROUND, true);
clientConfig.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING, true);
clientConfig.getClasses().add(ProtobufMessageBodyReaderWriter.class);
CLIENT = Client.create(clientConfig);
CLIENT.resource(BASE_URL);
webResource = CLIENT.resource(BASE_URL);
T response = null;
ClientResponse cResponse = null;
cResponse = webResource.type(MediaType.APPLICATION_JSON).method("PATCH",ClientResponse.class, requestObject);
这给出了“java.net.ProtocolException:HTTP方法PATCH不支持输出”。
任何人都可以建议我如何通过上述方式或其他方式完成此操作
最佳答案
在泽西岛论坛上快速阅读后,似乎发现了一个错误。
您可以使用HTTP客户端代替webResource.type(...).method("PATCH")
吗?例如,使用Apache HTTP Commons。