我有一个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">
,这可以正常工作,即超时得到遵守。
有没有办法确定在运行时使用哪个管道?
答案 0 :(得分:2)
使用管道的正则表达式版本对此进行排序:
<http-conf:conduit name="http://127.0.0.1:9090/.*">
希望你会发现这个答案很有用。