从servlet中调用错误jQuery ajax回调

blu*_*sky 7 java jquery servlets

在我的ajax调用中,如果收到错误,我有一个警告:

    $.ajax({
        url: "myUrl",       
        type: 'POST',
        dataType : "text",
        data : ({
            json : myJson
        }),
        success : function(data) {
                 alert('success');
    },
    error : function() {
                alert ('error');
    } 
Run Code Online (Sandbox Code Playgroud)

如果抛出异常,在java中可以发送回来调用jquery中的错误回调.所以类似于:

    try {
        PrintWriter out = resourceResponse.getWriter();
        out.println("success");
        out.close();
    } catch (Exception e) {
        PrintWriter out = resourceResponse.getWriter();
        out.println("error");
        out.close();
    }
Run Code Online (Sandbox Code Playgroud)

即不是在响应上打印"错误",而是在jQuery代码中调用"错误"回调.

Pra*_*Nag 5

http status code除了200在jQuery Ajax中调用错误回调之外,你还必须设置一些东西.您可以设置的错误居留制500 (which is for Internal Server Error)

catch (Exception e) {
    resourceResponse.setProperty(resourceResponse.HTTP_STATUS_CODE, "500"); 
    PrintWriter out = resourceResponse.getWriter();
    out.println("error");
    out.close();
}
Run Code Online (Sandbox Code Playgroud)

在你的catch街区.