java-CXF-http-conf:conduit超时被忽略

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

<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>

该Web服务的地址是

http://127.0.0.1:9090/MyWS

问题是,当我将超时设置为较小的值(例如1000)时,它仍然被忽略.我在某处缺少配置吗?

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

还请注意,我已设置< http-conf:conduit name =“ *.http-conduit”>并且这可以正常工作,即超时是受尊重的.

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

解决方法:

通过使用管道的正则表达式将其分类:

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

希望您会发现此答案有用.

上一篇:java – 使用Apache CXF的WS-Security UsernameToken


下一篇:nginx配置文件(反向代理+集群+动静分离)