簡體   English   中英

在Wildfly 8中為JAX-WS客戶端禁用分塊傳輸編碼

[英]Disable chunked transfer-encoding for JAX-WS Client in Wildfly 8

我正在Wildfly 8上使用JAX-WS編寫SOAP客戶端。

向我的服務器發送小消息時,客戶端可以正常工作。 當消息太大時,將添加標題“ Transfer-Encoding:chunked” ,服務器將停止接受消息。

由於我無法控制服務器部分,因此我正在尋找一種方法來告訴Wildfly停止對大型郵件進行分塊。

我在這里找到了針對WebSphere的解決方案: 在WebSphere Application Server 8.5中禁用JAX-WS Client的分塊傳輸編碼

我已經配置了處理程序。 我已驗證此處理程序在每個傳出請求中均被調用。 看起來像這樣:

public boolean handleMessage(SOAPMessageContext smc) {
  ctx.put(*HTTPConstants.CHUNKED*, "false");
  return true;
}

由於我使用的是Wildfly,而不是WebSphere,因此我的類路徑上沒有HTTPConstants.CHUNKED。 有誰知道我可以用來告訴Wildlfy停止對郵件進行分塊嗎? 使用處理程序甚至可能嗎?

據我所知, 客戶端無權使用或不使用HTTP分塊。 客戶端應該接受兩者,並且最終決定是在服務器端做出的。

重要的是要了解分塊不是一種格式,而是一種傳輸編碼 讓服務器選擇傳輸大數據的最佳方式聽起來很自然(壓縮是一種可能的選擇,分塊是另一種選擇)...

請參閱HTTP 1.1-客戶端請求的傳輸是否可以不被“分塊”?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM