我有一个SOAP Web服务客户端应用程序(Scala),它使用Java wsimport -verbose -Xnocompile
命令生成的客户端存根。
在现有应用程序中,通过使用build.sbt文件中的外部Java参数来设置http超时,如下所示。
bashScriptExtraDefines += "addJava \"-Dsun.net.client.defaultReadTimeout=300000\"\n"
bashScriptExtraDefines += "addJava \"-Dsun.net.client.defaultConnectTimeout=300000\"\n"
此处仅为ReadTimeout和ConnectTimeout提供默认的Timeout值。现在,我需要一种像上面那样专门设置SO超时的方法。 当我搜索堆栈溢出答案时,我只能找到有关仅设置读取超时和连接超时而不是套接字超时的答案。 https://docs.oracle.com/javase/8/docs/technotes/guides/net/properties.html
在Java 8文档中,它也提到了读取超时和连接超时,而不是超时。
sun.net.client.defaultConnectTimeout (default: -1)
sun.net.client.defaultReadTimeout (default: -1)
These properties specify the default connect and read timeout (resp.) for the protocol handler used by java.net.URLConnection.
sun.net.client.defaultConnectTimeout specifies the timeout (in milliseconds) to establish the connection to the host. For example for http connections it is the timeout when establishing the connection to the http server. For ftp connection it is the timeout when establishing the connection to ftp servers.
无论如何,我们是否可以使用build.sbt中的Java参数专门设置SO超时?