【发布时间】:2012-09-04 08:23:48
【问题描述】:
在 Apache CXF HTTPClientPolicy.setConnectionTimeout() 和 HTTPClientPolicy.setReceiveTimeout() 方法中,参数是秒还是毫秒?这似乎微不足道,但我无法在任何地方找到答案,从 javadoc 开始......
【问题讨论】:
在 Apache CXF HTTPClientPolicy.setConnectionTimeout() 和 HTTPClientPolicy.setReceiveTimeout() 方法中,参数是秒还是毫秒?这似乎微不足道,但我无法在任何地方找到答案,从 javadoc 开始......
【问题讨论】:
据我所知,所有 Web 服务超时都以毫秒为单位进行配置,我没有看到任何地方可以以秒为单位配置超时。在您的情况下,有来自XSD 的文档:
{http://cxf.apache.org/transports/http/configuration}HTTPClientPolicy
ConnectionTimeout:指定消费者将要等待的时间量(以毫秒为单位) 尝试在超时之前建立连接。 0 是无限的。
这里指的是here。
【讨论】:
好的,我终于找到了。这些方法以毫秒为单位取值。我在这里找到了答案:
【讨论】:
唯一的提示是它使用long,在 Java 中通常以毫秒为单位,但显然该单元没有在任何地方记录。
方法setConnectionTimeout 应该被命名为setConnectionTimeoutMillis 并且JavaDoc 应该在某处提到这个。只要涉及到单元,开发者就应该这样做。
也许 Java 应该有某种类型的数字,例如 Long<MilliSeconds>,编译器会拒绝错误“单位”的数字:)
【讨论】: