次のコードを使用してHTTP PUT
リクエストでエンティティを転送しようとしています。Apache OlingoでPUTリクエストを作成するには?
public ClientEntity createEntity(URI absoluteUri,
ClientEntity ce) {
ODataEntityCreateRequest<ClientEntity> request = client
.getCUDRequestFactory().getEntityCreateRequest(absoluteUri, ce);
request.setAccept("application/json;odata.metadata=minimal");
ODataEntityCreateResponse<ClientEntity> response = request.execute();
return response.getBody();
}
機能getEntityCreateRequest
は、しかし、唯一POST
要求を作成し、(私の知る限り)を用いHttpMethod
のない変更を可能にしません。この要求は唯一HttpMethod
PATCH
またはREPLACE
することができますので、
残念ながら、ODataEntityUpdateRequest
は、また、オプションではありません。
ドキュメント内で私は関数setMethod(HttpMethod method)
を見つけましたが、このメソッドはクライアント実装ではなくサーバーでのみ使用できます(https://olingo.apache.org/javadoc/odata4/org/apache/olingo/server/api/ODataRequest.html)。
さらに、私はsetUseXHTTPMethod(boolean value)
を発見しました。これはPUT, MERGE, PATCH, DELETE
からPOST
を介してトンネルします。クライアントの設定を確認して、isUseXHTTPMethod
がfalse
であることを確認しました。 (機能参照:https://olingo.apache.org/javadoc/odata4/org/apache/olingo/client/api/Configuration.html)
したがって、Apache OlingoでPUT
リクエストを行う方法を知りたいですか?
ありがとうございます。 UpdateType.REPLACEと
もう一度、ありがとうございます。これは問題を解決します。 :) –