logger.debug(ex.getMessage());
logger.debug(ex.getMessage());
/** * 不可接受的HTTP协议异常 * @param e * @return */ @ExceptionHandler(HttpMediaTypeNotAcceptableException.class) public ResultMap handlerRequest406(HttpMediaTypeNotAcceptableException e) { logger.error(e.getMessage(), e); return ResultMap.error(406, "不可接受的HTTP协议异常"); }
protected <T> void sendObject(int status, T responseBody, RequestContext context) throws IOException { HttpServletRequest request = context.getRequest(); HttpServletResponse response = context.getResponse(); response.setStatus(status); try { responseWriter.writeWithMessageConverters(responseBody, request, response); } catch (HttpMediaTypeNotAcceptableException e) { logger.error(e.getMessage(), e); response.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage()); } }
@ExceptionHandler(value = HttpMediaTypeNotAcceptableException.class) public ResponseEntity mediaTypeNotSupportedException(HttpMediaTypeNotAcceptableException ex, HandlerMethod handlerMethod) { log.warn("Media type unsupported exception: {}, message: {}", handlerMethod.getMethod().getDeclaringClass().getSimpleName(), ex.getMessage()); return new ResponseEntity<>(UNSUPPORTED_MEDIA_TYPE.getReasonPhrase(), UNSUPPORTED_MEDIA_TYPE); }
protected <T> void sendAuthentication(Authentication auth, RequestContext context) throws IOException { HttpServletRequest request = context.getRequest(); HttpServletResponse response = context.getResponse(); if (auth != null) { response.setStatus(HttpServletResponse.SC_OK); try { responseWriter.writeWithMessageConverters(auth, request, response); } catch (HttpMediaTypeNotAcceptableException e) { logger.error(e.getMessage(), e); response.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage()); } } else { response.setStatus(HttpServletResponse.SC_NO_CONTENT); } }
@ExceptionHandler(value = HttpMediaTypeNotAcceptableException.class) public ResponseEntity mediaTypeNotSupportedException(HttpMediaTypeNotAcceptableException ex, HandlerMethod handlerMethod) { log.warn("Media type unsupported exception: {}, message: {}", handlerMethod.getMethod().getDeclaringClass().getSimpleName(), ex.getMessage()); return responseErrorMapper.generateErrorResponse(createMessageError(UNSUPPORTED_MEDIA_TYPE, HttpStatus.UNSUPPORTED_MEDIA_TYPE.getReasonPhrase())); }
@ExceptionHandler(value = HttpMediaTypeNotAcceptableException.class) public ResponseEntity mediaTypeNotSupportedException(HttpMediaTypeNotAcceptableException ex, HandlerMethod handlerMethod) { log.warn("Media type unsupported exception: {}, message: {}", handlerMethod.getMethod().getDeclaringClass().getSimpleName(), ex.getMessage()); return responseErrorMapper.generateErrorResponse(createMessageError(UNSUPPORTED_MEDIA_TYPE, HttpStatus.UNSUPPORTED_MEDIA_TYPE.getReasonPhrase())); }
public AbstractView handleViews(Collection<AbstractView> views, NativeWebRequest request) { List<MediaType> requestedMediaTypes; try { requestedMediaTypes = contentNegotiationManager.resolveMediaTypes(request); for(MediaType requestedMediaType : requestedMediaTypes){ for (AbstractView view : views) { MediaType producableMediaType = MediaType.parseMediaType(view.getContentType()); if(requestedMediaType.isCompatibleWith(producableMediaType) && !requestedMediaType.isWildcardType() && requestedMediaType.getQualityValue() > 0.9){ return view; } } } } catch (HttpMediaTypeNotAcceptableException e) { logger.debug(e.getMessage(), e); } return null; }
logger.error(e1.getMessage(), e1);