如何在到达客户端的OnFailure()之前处理RPC Failure错误?在GWT

时间:2015-02-12 18:51:48

标签: exception gwt rpc

在GWT中,当由于任何原因导致RPC失败时onfailure()方法在客户端执行。

当onFailure()当时调用时,浏览器的网络响应中会显示实际错误。

所以,我的问题很简单,如何用一些用户友好的错误隐藏/修改这个实际错误?

1 个答案:

答案 0 :(得分:0)

您可以覆盖onFailure()方法以显示所需内容,但无法修改浏览器在“网络”标签中显示的内容。

这是我的代码中的一个示例(LoginException和VersionException是我的RPC调用在必要时抛出的异常):

@Override
public void onFailure(Throwable caught) {
    if (caught instanceof LoginException) {
        // Redirect a user to login page
        Window.Location.assign("/");
    } else if (caught instanceof IncompatibleRemoteServiceException ||
            caught instanceof VersionException) {
        /*
         * Here I tell a user that a new version is available,
         * so a user needs to refresh the page
         */
    } else {
        // Here I show a simple message about a connection error
    }
}