Example usage for org.springframework.web.servlet.view ContentNegotiatingViewResolver setUseNotAcceptableStatusCode

List of usage examples for org.springframework.web.servlet.view ContentNegotiatingViewResolver setUseNotAcceptableStatusCode

Introduction

In this page you can find the example usage for org.springframework.web.servlet.view ContentNegotiatingViewResolver setUseNotAcceptableStatusCode.

Prototype

public void setUseNotAcceptableStatusCode(boolean useNotAcceptableStatusCode) 

Source Link

Document

Indicate whether a HttpServletResponse#SC_NOT_ACCEPTABLE 406 Not Acceptable status code should be returned if no suitable view can be found.

Usage

From source file:org.elasticsoftware.elasticactors.examples.springweb.config.ApplicationContextConfiguration.java

@Bean
public ContentNegotiatingViewResolver contentNegotiatingViewResolver(ObjectMapper objectMapper) {
    ContentNegotiatingViewResolver viewResolver = new ContentNegotiatingViewResolver();
    viewResolver.setOrder(1);/*  ww  w. j a v  a  2  s. com*/
    viewResolver.setUseNotAcceptableStatusCode(true);

    // set content negotiation manager
    Map<String, MediaType> mediaTypes = new HashMap<>();
    mediaTypes.put("json", MediaType.APPLICATION_JSON);
    PathExtensionContentNegotiationStrategy strategy = new PathExtensionContentNegotiationStrategy(mediaTypes);
    ContentNegotiationManager manager = new ContentNegotiationManager(strategy);
    viewResolver.setContentNegotiationManager(manager);

    // set views
    List<View> views = new ArrayList<>();
    MappingJackson2JsonView view = new MappingJackson2JsonView();
    view.setExtractValueFromSingleKeyModel(true);
    view.setObjectMapper(objectMapper);
    views.add(view);
    viewResolver.setDefaultViews(views);

    return viewResolver;
}