List of usage examples for org.springframework.web.servlet.view.xml MarshallingView MarshallingView
public MarshallingView(Marshaller marshaller)
From source file:org.bremersee.common.spring.autoconfigure.WebMvcExceptionResolver.java
@Override public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {/* w ww .j a v a 2 s . c om*/ if (ex == null || !isRestController(handler)) { return null; } final Object dto = getExceptionMapper(handler).toDto(ex); if (dto == null) { return null; } ModelAndView mav; String acceptStr = request.getHeader("Accept") == null ? "" : request.getHeader("Accept").toLowerCase(); if (log.isDebugEnabled()) { log.debug("Handler [" + handler + "] got accept header [" + acceptStr + "] from client."); } if (acceptStr.contains("application/xml") || acceptStr.contains("text/xml")) { MarshallingView mv = new MarshallingView(marshaller); mv.setModelKey(DTO_KEY); mav = new ModelAndView(mv, DTO_KEY, dto); response.setContentType(MediaType.APPLICATION_XML_VALUE); } else { final MappingJackson2JsonView mjv = new MappingJackson2JsonView(objectMapper); mav = new ModelAndView(mjv); final Map<String, Object> map = toJsonMap(dto); mav.addAllObjects(map); if (acceptStr.contains("text/plain")) { response.setContentType(MediaType.TEXT_PLAIN_VALUE); } else { response.setContentType(MediaType.APPLICATION_JSON_VALUE); } } Integer statusCode = determineStatusCode(ex); applyStatusCodeIfPossible(request, response, statusCode); return mav; }
From source file:com.devnexus.ting.web.config.WebConfig.java
@Bean public ViewResolver contentNegotiatingViewResolver(ContentNegotiationManager manager) { final List<ViewResolver> resolvers = new ArrayList<ViewResolver>(); final BeanNameViewResolver r1 = new BeanNameViewResolver(); final InternalResourceViewResolver r2 = new InternalResourceViewResolver(); r2.setPrefix("/WEB-INF/jsp/"); r2.setSuffix(".jsp"); r2.setViewClass(JstlView.class); resolvers.add(r1);/* ww w . j av a2 s. c o m*/ resolvers.add(r2); final ContentNegotiatingViewResolver resolver = new ContentNegotiatingViewResolver(); resolver.setViewResolvers(resolvers); resolver.setContentNegotiationManager(manager); final List<View> defaultViews = new ArrayList<View>(2); final MarshallingView marshallingView = new MarshallingView(jaxbMarshaller); final MappingJackson2JsonView mappingJackson2JsonView = new MappingJackson2JsonView(); mappingJackson2JsonView.setObjectMapper(jaxbJacksonObjectMapper()); defaultViews.add(mappingJackson2JsonView); defaultViews.add(marshallingView); resolver.setDefaultViews(defaultViews); resolver.setOrder(1); return resolver; }