处理GET呼叫失败

时间:2011-03-16 11:06:54

标签: gwt

你好我在GWT中有一段代码,我的一位资深大学写过这段代码。

public void onFailure(Throwable caught) {

    if (caught instanceof RuntimeException) {

        if (caught instanceof StatusCodeException
            && caught.getMessage().contains(
                "<title>Error 500 unAuthorized</title>")) {
            MessageBox
                .alert("Session has been expired. Press Ok to redirect to Login page.");
            History.newItem(HistoryToken.INDEX_PAGE.toString());
         } else {
        MessageBox
            .alert("An exception has occured.Press Ok to continue.");
         }

    } else if (caught instanceof InvocationException) {
        MessageBox
            .alert("Sorry... Some error occured while reaching to server.");

    }
}

在服务器上呼叫失败时执行else if (caught instanceof InvocationException) {阻止的可能性有多大?

我认为else if (caught instanceof InvocationException)无论如何都不会被执行。 有什么建议吗?

1 个答案:

答案 0 :(得分:1)

因为InvocationException是RuntimeException的子类(如docs所说),所以你是对的。

BTW,您的高级同事是否有任何理由在getMessage上进行字符串比较而不是使用getStatusCode()检查状态代码? (See here