How to return Java Exception info to jQuery.ajax REST call?

前端 未结 2 598
[愿得一人]
[愿得一人] 2021-01-05 16:37

I have some jQuery code that makes a REST call to a Java back end. Processing of the back end function could encounter an Exception. What is the best way to get this infor

2条回答
  •  说谎
    说谎 (楼主)
    2021-01-05 17:00

    I was able to send a custom error message (java String) back to a jQuery based client this way. I think my custom message can be replaced with the exception info you want/need

    in Controller:

    public static void handleRuntimeException(Exception ex, HttpServletResponse 
                                              response,String message) {
            logger.error(ex);
            response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
            response.getWriter().write(message);
            response.flushBuffer();
    }
    

    In client/javascript (called from ajax on error event)

    displayError:function(jqXHR, textStatus, errorThrown){
       if(jqXHR.responseText !== ''){
            alert(textStatus+": "+jqXHR.responseText);
        }else{
            alert(textStatus+": "+errorThrown);
        }  
    }
    

    Hope this helps/

提交回复
热议问题