2014-05-24 43 views
0

我有AJAX功能如何从控制器调用ajax成功和错误函数?

$.ajax({ 
    .... 
    type: "POST", 
    url: "", 
    data: "", 
    success: function(){ 
    }, 
    error: function(XMLHttpRequest, textStatus, errorThrown) { 
    }  
}); 

&控制器代码

public @ResponseBody 
GenericResponse abc() { 
    try { 
     .... 
    } catch (Exception ex) { 
     ex.printStackTrace(); 
     return new GenericResponse("Failed", ex.getMessage(), 500); 
    } 
    return new GenericResponse("Success", "", 200); 
} 

其中GenericResponse是

public class GenericResponse 
{ 

    private String status; 

    private String error; 

    private int code; 

    public GenericResponse(String s, String e, int c) 
    { 
     this.status = s; 
     this.error = e; 
     this.code = c; 
    } 
.... 
} 

所以成功&失败我送genericresponse与状态,但两者不言而喻内部成功回调函数。 我知道这是gennericResponse,所以ajax会认为它只是成功的。如果异常来 我希望它去错误回调函数。怎么做?

回答

2

不是返回GenericResponse,而是尝试返回ResponseEntity。

你会做:

return new ResponseEntity<GenericResponse>(successGenericResponse, HttpStatus.OK); 

return new ResponseEntity<GenericResponse>(failGenericResponse, HttpStatus.INTERNAL_SERVER_ERROR); 
相关问题