List of usage examples for org.springframework.web.servlet View SELECTED_CONTENT_TYPE
String SELECTED_CONTENT_TYPE
To view the source code for org.springframework.web.servlet View SELECTED_CONTENT_TYPE.
Click Source Link
From source file:org.beadle.framework.view.ReturnTypeViewResolver.java
private View getBestView(List<View> candidateViews, List<MediaType> requestedMediaTypes, RequestAttributes attrs) {/*from w w w . j a v a 2 s .c o m*/ HttpServletRequest request = ((ServletRequestAttributes) attrs).getRequest(); for (View candidateView : candidateViews) { if (StringUtils.hasText(candidateView.getContentType())) { ModelAndView mv = (ModelAndView) request.getAttribute("ModelAndView"); //message... Object result = mv.getModelMap().get("message"); MediaType candidateContentType = MediaType.parseMediaType(candidateView.getContentType()); if (result == null && candidateContentType.isCompatibleWith(MediaType.TEXT_HTML)) { if (logger.isDebugEnabled()) { logger.debug("Returning [" + candidateView + "] based on requested media type '" + candidateContentType + "'"); } attrs.setAttribute(View.SELECTED_CONTENT_TYPE, candidateContentType, RequestAttributes.SCOPE_REQUEST); return candidateView; } else if (result != null && candidateContentType.isCompatibleWith(MediaType.APPLICATION_JSON)) { if (logger.isDebugEnabled()) { logger.debug("Returning [" + candidateView + "] based on requested media type '" + candidateContentType + "'"); } attrs.setAttribute(View.SELECTED_CONTENT_TYPE, candidateContentType, RequestAttributes.SCOPE_REQUEST); return candidateView; } } } return null; }
From source file:org.springframework.web.servlet.view.ContentNegotiatingViewResolver.java
private View getBestView(List<View> candidateViews, List<MediaType> requestedMediaTypes, RequestAttributes attrs) {/* w w w .j a v a 2s.c o m*/ for (View candidateView : candidateViews) { if (candidateView instanceof SmartView) { SmartView smartView = (SmartView) candidateView; if (smartView.isRedirectView()) { if (logger.isDebugEnabled()) { logger.debug("Returning redirect view [" + candidateView + "]"); } return candidateView; } } } for (MediaType mediaType : requestedMediaTypes) { for (View candidateView : candidateViews) { if (StringUtils.hasText(candidateView.getContentType())) { MediaType candidateContentType = MediaType.parseMediaType(candidateView.getContentType()); if (mediaType.isCompatibleWith(candidateContentType)) { if (logger.isDebugEnabled()) { logger.debug("Returning [" + candidateView + "] based on requested media type '" + mediaType + "'"); } attrs.setAttribute(View.SELECTED_CONTENT_TYPE, mediaType, RequestAttributes.SCOPE_REQUEST); return candidateView; } } } } return null; }