Example usage for org.springframework.web.servlet.mvc.method.annotation RequestMappingHandlerAdapter setContentNegotiationManager

List of usage examples for org.springframework.web.servlet.mvc.method.annotation RequestMappingHandlerAdapter setContentNegotiationManager

Introduction

In this page you can find the example usage for org.springframework.web.servlet.mvc.method.annotation RequestMappingHandlerAdapter setContentNegotiationManager.

Prototype

public void setContentNegotiationManager(ContentNegotiationManager contentNegotiationManager) 

Source Link

Document

Set the ContentNegotiationManager to use to determine requested media types.

Usage

From source file:org.craftercms.engine.util.spring.mvc.AnnotationDrivenConfigCustomizer.java

@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
    if (bean instanceof RequestMappingHandlerAdapter) {
        RequestMappingHandlerAdapter adapter = (RequestMappingHandlerAdapter) bean;
        if (contentNegotiationManager != null) {
            adapter.setContentNegotiationManager(contentNegotiationManager);
        }/*  w w  w . j a  va  2s  .c  o m*/
        if (CollectionUtils.isNotEmpty(messageConverters)) {
            List<HttpMessageConverter<?>> mergedConverters = new ArrayList<>(messageConverters);
            mergedConverters.addAll(adapter.getMessageConverters());

            adapter.setMessageConverters(mergedConverters);
        }
    } else if (bean instanceof RequestMappingHandlerMapping) {
        RequestMappingHandlerMapping mapping = (RequestMappingHandlerMapping) bean;
        if (CollectionUtils.isNotEmpty(interceptors)) {
            mapping.setInterceptors(interceptors.toArray(new Object[interceptors.size()]));
        }
    } else if (bean instanceof ExceptionHandlerExceptionResolver) {
        ExceptionHandlerExceptionResolver exceptionResolver = (ExceptionHandlerExceptionResolver) bean;
        if (contentNegotiationManager != null) {
            exceptionResolver.setContentNegotiationManager(contentNegotiationManager);
        }
        if (CollectionUtils.isNotEmpty(messageConverters)) {
            List<HttpMessageConverter<?>> mergedConverters = new ArrayList<>(messageConverters);
            mergedConverters.addAll(exceptionResolver.getMessageConverters());

            exceptionResolver.setMessageConverters(mergedConverters);
        }
    }

    return bean;
}