AJAX получить ответное сообщение об ошибке - PullRequest
4 голосов
/ 01 мая 2011

Я использую ajax inisde мою страницу JSP. Попав на сервлет, я хочу отправить ответное сообщение с сообщением. сначала я использовал «response.sendError (500,« это тестовое сообщение »); внутри моего сервлета, но когда я попытался получить сообщение об ошибке внутри функции ошибки ajax, я использовал xHR.responeText и получил строку html, которая содержала сообщение, но это не хорошо для меня, я хочу получить только сообщение об ошибке. Я также попробовал setStatus (500) и contenttype - xml, но все равно не смог получить сообщение об ошибке.

Как это можно сделать? Я хочу отправить код ошибки 500, но каждый раз хочу отправить его с другим сообщением, а затем прочитать его в функции обратного вызова ajax.

Спасибо заранее.

Ответы [ 3 ]

4 голосов
/ 01 мая 2011

Если я правильно понял ваш вопрос. Вы хотите получить сообщение об ошибке в виде простой строки без тегов html?

В этом случае вы должны записать текст в ответ и установить тип пантомимы (contentType в "text / plain).

Так что-то типа.

   PrintWriter writer = response.getOut();
   writer.print(errorMessage);
   response.setStatus(500);
   return

Убедитесь, что вы не написали ни одного ответа на ответ, когда делаете это.

1 голос
/ 19 мая 2011
 error: function(error) {
                        targetNode.innerHTML = " text to display" + error;
 }

с jQuery

$.ajax({
        type: 'POST',
        url: url_,
        data: urlParams_,
        dataType: 'text',
        async: false,
        success: function(result_) {
            if (result_.length > 0 ){
                try{
                    result_ = $.parseJSON(result_);
                    result = result_;
                }catch (e){
                    alert(e);
                }
            }
        }
    });
0 голосов
/ 01 мая 2011

В вашем JS вам нужно прочитать xHR.status.Не xHR.responeText.xHR.status должен содержать 500.

...