2013-10-08 103 views
4

我想弄清楚如何使用Jesrey客戶端通過Java程序從客戶端調用/調用服務提供的PATCH方法。有沒有辦法使用Jersey Clinet調用客戶端的REST服務

我已經嘗試了很多方法並在線閱讀很多東西。但是,這似乎還沒有在澤西支持。任何幫助將不勝感激。

我試過的示例代碼之一。

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不支持輸出」。 任何人都可以建議我如何完成上述方式或任何其他方式

回答

0

從快速閱讀澤西的論壇上,似乎有一個錯誤。

您可以使用HTTP客戶端而不是webResource.type(...).method("PATCH")?例如,使用Apache HTTP Commons。

相關問題