2010-08-19 49 views
1

如何在使用JAX-WS時啓用HTTP連接重用?當我們使用AXIS2時,我們在客戶存根的選項中設置了org.apache.axis2.transport.http.HTTPConstants.REUSE_HTTP_CLIENT屬性。 JAX-WS的等價物是什麼?JAX-WS中的HTTP連接重用

(我已經驗證了我們正在創建每個Web服務調用一個新的TCP連接。看來我們創建一個新的TCP連接之前,立即推倒以前的連接。)

回答

2

據地鐵JAX-WS Guide您只需將Java環境變量http.keepAlive設置爲true即可。

3

因爲我也遇到過這個問題,所以我深入挖掘了它。看起來目前的(JDK 6)版本並沒有正確使用http.keepAlive屬性,即使指南(請參閱我的最後一篇文章)這樣說,因此不會重複使用HTTP(TCP)連接對同一客戶端進行多次調用。然後,我發現this bug report,證實了我的懷疑。根據錯誤報告,您必須將您的JAX-WS RI(aka Metro)實施更新爲> = 2.1.2。

如果您更新到最新版本(在編寫本文時爲2.2.1),您可能必須使用認可的標準覆蓋機制使JRE以正確(新)版本的庫運行。這是因爲JAX-WS RI 2.2基於JAX-WS 2.2 API,但只有2.1與當前的JDK/JRE版本一起交付。

乾杯丹尼爾