【发布时间】:2011-08-01 19:40:58
【问题描述】:
您如何处理 GWT 应用程序中的超时请求? 这是我的 web.xml 文件的片段:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
我的 GWT 项目基于 MVP 活动和地点。 每当用户等待超过 3000 万时,我想显示一个弹出窗口并将用户重定向到登录页面。这就是我所做的 所有 RPC 服务:
public void onFailure(Throwable caught) {
...
if (caught instanceof InvocationException) {
{
Window.alert("Time out de session. Veuillez vous reconnecter. 2");
Window.open(GWT.getHostPageBaseURL() + "identification.html", "_self", null);
return;
}
...}
它可以工作,但有几件事很烦人: 1)捕获的异常应该是RequestTimeoutException。但它没有被捕获,这就是我使用 InvocationException 的原因。 怎么没抓到? 2)如何以更通用的方式处理此异常?必须在所有 RPC 服务中捕获该异常有点愚蠢...... 我读到了一些 AsyncCallbackAdapter 类...... 3)现在我只处理 RPC 服务,但当然超时异常无处不在:链接、按钮、页面刷新...... 我正在使用 MVP 地点和活动。 当用户试图去某个地方时,有没有办法捕获该异常?
感谢您的帮助
【问题讨论】: