我有一个带有gxt 2.3.1的GWT 2.5应用程序,我用它做了超过30分钟的RPC。但在我得到响应之前,应用程序弹出一个错误窗口,带有消息503 Service Temporarily消息,包含所有常规细节
同时服务器本身仍在处理数据,因此实际上服务器可用。
它看起来像会话超时,但在web.xml中我设置了1天的超时
<!-- one day -->
<session-config>
<session-timeout>1440</session-timeout>
</session-config>
处理完成后,我没有得到客户端的回复。 所以我的第二个猜测是rpc时间,我目前正试图找出如何设置到目前为止没有成功。
答案 0 :(得分:1)
您可以使用GWT Timer通过在一段时间后调用RPC来保持服务器和客户端之间的连接活动。 RPC除了保持连接活动之外什么都不做。
您可以在长时间运行的任务完成后取消计时器,也可以在开始任何需要更长时间的任务之前重新启动计时器。
样品:
// Create a new timer that calls RPC that does nothing.
Timer t = new Timer() {
@Override
public void run() {
//RPC Call
}
};
// Schedule the timer to run once in 5 seconds.
t.schedule(5000);