gpt4 book ai didi

java - 调用长时间运行的 Java 方法时,Coldfusion 会遇到 java.net.SocketTimeoutException

转载 作者:行者123 更新时间:2023-12-01 14:42:13 25 4
gpt4 key购买 nike

我正在尝试调用静态 Java 类上的方法,该方法可能需要 10 秒到一分钟的时间才能运行。大约 30 秒后,我收到异常

java.net.SocketTimeoutException: Read timed out; Is the timeout preference too low? Are you dumping/calling debug() on large data or cfc instances?

我已经能够用下面的最小示例来复制它。在Java中:

package some.package;
public class Sleeper {
public static void sleep(int seconds) {
Thread.sleep(seconds * 1000);
}
}

然后我进行了 MxUnit 测试:

<cffunction name="timeoutTest" access="public" returnType="void" output="false>
<cfset sleeper = CreateObject("java", "some.package.Sleeper" />
<cfset runner.sleep(32) />
</cffunction>

在服务器设置上将我的超时请求(秒)设置为99999没有帮助,也没有将测试更改为:

<cffunction name="timeoutTest" access="public" returnType="void" output="false>
<cfset sleeper = CreateObject("java", "some.package.Sleeper" />
<cfsetting requesttimeout="64" />
<cfset runner.sleep(32) />
</cffunction>

我想某个地方有一个设置,但如果有的话我找不到它。我正在运行 ColdFusion 8

最佳答案

ColdFusion 不是问题,MxUnit 才是。默认情况下,单元测试在 30 秒后超时。可以在 Eclipse 中更改此设置,方法是转至 Window -> Preferences -> MXUnit 并将“Method Timeout”字段更改为 0

关于java - 调用长时间运行的 Java 方法时,Coldfusion 会遇到 java.net.SocketTimeoutException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15839111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com