2010-08-19 73 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版本一起交付。

干杯丹尼尔