0

Springコントローラーで次のように定義された例外ハンドラーがあります。

@ExceptionHandler(Customized4ExceptionHandler.class)
public void handleCustomized4Exception(
    Customized4ExceptionHandler ex,
    HttpServletRequest request,
    HttpServletResponse response) throws IOException {

        response.sendError(HttpStatus.EXPECTATION_FAILED.value(),
        "zzzzzzz");

}

エラーがトリガーされると、ユーザー側で次のようになります。

ここに画像の説明を入力

エラー コードは正しいですが、「zzzzzzz」という説明メッセージは表示されません。ユーザー側に表示するにはどうすればよいですか?

私のJavascriptは:

$.ajax({
    type: 'GET',
    url:  prefix + "/throwCustomized4ExceptionHandler",
    dataType: 'json',
    async: true,
    success: function(result) {
        alert('Unexpected success !!!');
    },
    error: function(jqXHR, textStatus, errorThrown) {
        alert(jqXHR.status + " "
                   + textStatus + " "
               + errorThrown + " !");
    }
});
4

2 に答える 2

1

として利用できるはずですjqXHR.statusText

于 2012-11-06T14:00:42.467 に答える
0

私は次のように問題を解決しました:

@ExceptionHandler(Customized4ExceptionHandler.class)
@ResponseStatus(value=HttpStatus.BAD_REQUEST) 
@ResponseBody
public String handleCustomized4Exception(
    Customized4ExceptionHandler ex) {

    // return "zzzzzzz"
    return ex.getSpecialMsg();

}

$.ajax({
    type: 'GET',
    url:  prefix + "/throwCustomized4ExceptionHandler",

    async: true,
    success: function(result) {
        alert('Unexpected success !!!');
    },
    error: function(jqXHR, textStatus, errorThrown) {
        alert(jqXHR.status + " " + jqXHR.responseText);
    }
}); 
于 2012-11-06T17:39:01.610 に答える