类org.springframework.boot.web.error.ErrorAttributeOptions源码实例Demo

下面列出了怎么用org.springframework.boot.web.error.ErrorAttributeOptions的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: nimrod   文件: CustomBasicErrorController.java
/**
     * html
     *
     * @param request  HttpServletRequest
     * @param response HttpServletResponse
     * @return ModelAndView
     */
    @RequestMapping(produces = MediaType.TEXT_HTML_VALUE)
    public ModelAndView errorHtml(HttpServletRequest request, HttpServletResponse response) {
        HttpStatus httpStatus = getStatus(request);
        int code = httpStatus.value();
//        Map<String, Object> errorAttributes = getErrorAttributes(request, true);
        Map<String, Object> errorAttributes = getErrorAttributes(request, ErrorAttributeOptions.defaults());
        LOGGER.info("status={},exception={}", code, errorAttributes);
        code = RestControllerAdviceHandler.codeSwitch(code);
        httpStatus = HttpStatus.valueOf(code);
//        Map<String, Object> model = Collections.unmodifiableMap(getErrorAttributes(
//                request, true));
        Map<String, Object> model = Collections.unmodifiableMap(getErrorAttributes(request, ErrorAttributeOptions.defaults()));
        ModelAndView modelAndView = resolveErrorView(request, response, httpStatus, model);
        return (modelAndView == null ? new ModelAndView(code + "", model, httpStatus) : modelAndView);
    }
 
源代码2 项目: guardedbox   文件: ErrorHandlingConfig.java
/**
 * Error handler.
 *
 * @return Unauthorized (401), Forbidden (403) or Not Found (404) with no body.
 */
@RequestMapping(value = "/error", method = {RequestMethod.GET, RequestMethod.POST, RequestMethod.PUT,
        RequestMethod.DELETE, RequestMethod.HEAD, RequestMethod.OPTIONS, RequestMethod.PATCH, RequestMethod.TRACE})
public ResponseEntity<?> error() {

    Map<String, Object> requestErrorAttributes = errorAttributes.getErrorAttributes(
            new ServletWebRequest(request), ErrorAttributeOptions.defaults());
    HttpStatus errorStatus = HttpStatus.valueOf((Integer) requestErrorAttributes.get("status"));

    if (HttpStatus.UNAUTHORIZED.equals(errorStatus) || HttpStatus.FORBIDDEN.equals(errorStatus)) {
        session.invalidate();
        return new ResponseEntity<>(errorStatus);
    } else {
        return new ResponseEntity<>(HttpStatus.NOT_FOUND);
    }

}
 
源代码3 项目: nimrod   文件: CustomBasicErrorController.java
/**
 * json
 *
 * @param request  HttpServletRequest
 * @param response HttpServletResponse
 * @return ResponseEntity<FailureEntity>
 */
@RequestMapping
@ResponseBody
public ResponseEntity<FailureEntity> error(HttpServletRequest request, HttpServletResponse response) {
    HttpStatus httpStatus = getStatus(request);
    int code = httpStatus.value();
    Map<String, Object> errorAttributes = getErrorAttributes(request, ErrorAttributeOptions.defaults());
    LOGGER.info("status={},exception={}", code, errorAttributes);
    code = RestControllerAdviceHandler.codeSwitch(code);
    httpStatus = HttpStatus.valueOf(code);
    return new ResponseEntity<>(new FailureEntity((String) errorAttributes.get("error"), httpStatus.value()), httpStatus);
}
 
 类所在包
 同包方法