Class GlobalHandlerExceptionResolver

  • All Implemented Interfaces:
    org.springframework.beans.factory.InitializingBean, org.springframework.core.Ordered, org.springframework.web.servlet.HandlerExceptionResolver

    public class GlobalHandlerExceptionResolver
    extends org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver
    implements org.springframework.beans.factory.InitializingBean
    异常处理器, 把异常信息转换为 Message, "Content-Type" 为 "JSON", 应用处于 ConfigurationSupport.isDebug() 时 优先级低于Spring默认异常解析器的, 其它情况优先级最高, 部分 描述信息 通过 ConfigurationSupport.getMessage(String, Object) 创建, 如 ServiceException
    Author:
    CofCool
    See Also:
    DefaultHandlerExceptionResolver, ExceptionHandlerExceptionResolver, ResponseStatusExceptionResolver, HandlerExceptionResolverComposite
    • Field Detail

      • EMPTY_MODEL_AND_VIEW

        protected static final org.springframework.web.servlet.ModelAndView EMPTY_MODEL_AND_VIEW
    • Constructor Detail

      • GlobalHandlerExceptionResolver

        public GlobalHandlerExceptionResolver()
    • Method Detail

      • getHttpMessageConverters

        protected org.springframework.boot.autoconfigure.http.HttpMessageConverters getHttpMessageConverters()
      • setHttpMessageConverters

        public void setHttpMessageConverters​(org.springframework.boot.autoconfigure.http.HttpMessageConverters httpMessageConverters)
      • getDefaultExceptionResolver

        protected org.springframework.web.servlet.HandlerExceptionResolver getDefaultExceptionResolver()
      • doResolveException

        protected org.springframework.web.servlet.ModelAndView doResolveException​(javax.servlet.http.HttpServletRequest request,
                                                                                  javax.servlet.http.HttpServletResponse response,
                                                                                  Object handler,
                                                                                  Exception ex)
        Specified by:
        doResolveException in class org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver
      • printExceptionLog

        protected void printExceptionLog​(javax.servlet.http.HttpServletRequest request,
                                         Object handler,
                                         Exception ex)
      • resolveOthersException

        protected org.springframework.web.servlet.ModelAndView resolveOthersException​(javax.servlet.http.HttpServletRequest request,
                                                                                      javax.servlet.http.HttpServletResponse response,
                                                                                      Object handler,
                                                                                      Exception ex)
      • handleSqlException

        protected org.springframework.web.servlet.ModelAndView handleSqlException​(javax.servlet.http.HttpServletResponse response,
                                                                                  Exception ex)
        处理 SQL 异常, 即 org.springframework.dao.DataAccessException
        Parameters:
        response - HttpServletResponse
        ex - 异常
        Returns:
        ModelAndView, 返回 EMPTY_MODEL_AND_VIEW
      • writeMessage

        protected void writeMessage​(javax.servlet.http.HttpServletResponse response,
                                    Message message)
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        Exception