CXF - http-conf:管道超时被忽略

时间:2014-06-26 12:17:02

标签: java spring http cxf

我有一个CXF客户端,通过Spring配置如下:

<jaxws:client name="myWsService"
              serviceClass="${myws.serviceInterface}"
              address="${myws.wsdlDocumentUrl}"
              username="${myws.username}" password="${myws.password}">
</jaxws:client>

<!-- Configure timeout -->
<http-conf:conduit name="{http://127.0.0.1:9090/}MyWSSOAP.http-conduit">
    <http-conf:client ConnectionTimeout="${myws.timeout}" ReceiveTimeout="${myws.timeout}"/>
</http-conf:conduit>

网络服务的地址是

http://127.0.0.1:9090/MyWS

问题在于,当我将超时设置为较小的值(例如1000)时,它仍然被忽略。我在某处错过了一些配置吗?

编辑:我使用的是CXF 2.4.1版。我已尝试更新到最新版本2.6.15,但仍忽略http-conf:conduit的超时值。

另请注意,我已设置<http-conf:conduit name="*.http-conduit">,这可以正常工作,即超时得到遵守。

有没有办法确定在运行时使用哪个管道?

1 个答案:

答案 0 :(得分:2)

使用管道的正则表达式版本对此进行排序:

<http-conf:conduit name="http://127.0.0.1:9090/.*">

希望你会发现这个答案很有用。