JQuery Ajax Error Text

ajax, jquery, response, servlets

Solution

Just write the error message to the response body as plain text or XML or JSON.

Here's an example assuming plain text:

response.setStatus(HttpServletResponse.SC_FORBIDDEN);
response.setContentType("text/plain;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(errMsg);

You can extract it as follows:

var message = jqXHR.responseText;

Note that jQuery has builtin XML and JSON parsing as well, so it'd be easy like that as well.

Problem

I would like to set the error message on Ajax error operation from Java Servlet. ``` request.setAttribute(BreezeWebConstants.ERROR_MESSAGE, errMsg); response.setStatus(HttpServletResponse.SC_FORBIDDEN); error : function(jqXHR, textStatus, errorThrown) { alert("Move Ticket Error - " + textStatus); console.log("Move Unknown Ticket Error"); } ``` The textStatus is predefined in Jquery but i need to set custom error message in java servlet and retrieve it on this error function. How to do it? Thanks.

Original source