【发布时间】:2015-11-05 05:40:31
【问题描述】:
我有一个基于 GWT 的 UI,它连接到 Web 服务(第 3 方)以提交一些请求。当请求很大时(就像真的很大),应用程序过去常常超时,因为请求的第 3 方总执行时间是 72 秒,而我们的连接超时设置为 60 秒,所以在响应来自第 3 方之前, out 应用程序将超时。所以我将 ServiceClient 超时时间从 60 秒 增加到 200 秒。使用 AsynCallback 提交请求。这在我的本地 IBM WebSphere 服务器(DEV 环境)中效果很好。
问题是,当我尝试在测试环境中提交请求时,UI 在 60 秒 内超时,并且用户显示内部服务器错误,但在后台,AsynCallBack 仍会执行,并且在收到响应后(72 秒)也会执行发布提交活动。
如何在 AsynCallback 返回响应(200 秒)之前暂停 UI 超时?
我找不到为 GWT UI 设置的任何超时设置。
【问题讨论】:
-
什么是ServiceClient?以及如何以及在哪里设置超时?
-
我正在使用 Axis2 服务客户端。我在此设置超时:- stub._getServiceClient().getOptions().setTimeOutInMilliSeconds(200000);
标签: java gwt timeout asynccallback