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

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

Introduction

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

Prototype

public List<HttpMessageConverter<?>> getMessageConverters() 

Source Link

Document

Return the configured message body converters.

Usage

From source file:org.springframework.hateoas.config.EnableHypermediaSupportIntegrationTest.java

@SuppressWarnings({ "unchecked" })
private static void assertHalSetupForConfigClass(Class<?> configClass) {

    ApplicationContext context = new AnnotationConfigApplicationContext(configClass);
    assertEntityLinksSetUp(context);/* w ww  .j a  v a2s  . c o m*/
    assertThat(context.getBean(LinkDiscoverer.class), is(instanceOf(HalLinkDiscoverer.class)));
    assertThat(context.getBean(ObjectMapper.class), is(notNullValue()));

    RequestMappingHandlerAdapter rmha = context.getBean(RequestMappingHandlerAdapter.class);
    assertThat(rmha.getMessageConverters(),
            Matchers.<HttpMessageConverter<?>>hasItems(instanceOf(MappingJackson2HttpMessageConverter.class)));

    AnnotationMethodHandlerAdapter amha = context.getBean(AnnotationMethodHandlerAdapter.class);
    assertThat(Arrays.asList(amha.getMessageConverters()),
            Matchers.<HttpMessageConverter<?>>hasItems(instanceOf(MappingJackson2HttpMessageConverter.class)));
}

From source file:springfox.documentation.spring.web.ObjectMapperConfigurer.java

@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {

    if (bean instanceof RequestMappingHandlerAdapter) {
        RequestMappingHandlerAdapter adapter = (RequestMappingHandlerAdapter) bean;
        adapter.setMessageConverters(configureMessageConverters(adapter.getMessageConverters()));
    }// w  w  w  .java 2 s.co  m
    return bean;
}

From source file:org.springframework.hateoas.config.EnableHypermediaSupportIntegrationTest.java

/**
 * @see #134, #219/*from   www.j  a  va2 s .  co  m*/
 */
@Test
@SuppressWarnings("unchecked")
public void halSetupIsAppliedToAllTransitiveComponentsInRequestMappingHandlerAdapter() {

    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(HalConfig.class);

    Jackson2ModuleRegisteringBeanPostProcessor postProcessor = new HypermediaSupportBeanDefinitionRegistrar.Jackson2ModuleRegisteringBeanPostProcessor();
    postProcessor.setBeanFactory(context);

    RequestMappingHandlerAdapter adapter = context.getBean(RequestMappingHandlerAdapter.class);

    assertThat(adapter.getMessageConverters().get(0).getSupportedMediaTypes(), hasItem(MediaTypes.HAL_JSON));

    boolean found = false;

    for (HandlerMethodArgumentResolver resolver : adapter.getArgumentResolvers().getResolvers()) {

        if (resolver instanceof AbstractMessageConverterMethodArgumentResolver) {

            found = true;

            AbstractMessageConverterMethodArgumentResolver processor = (AbstractMessageConverterMethodArgumentResolver) resolver;
            List<HttpMessageConverter<?>> converters = (List<HttpMessageConverter<?>>) ReflectionTestUtils
                    .getField(processor, "messageConverters");

            // assertThat(converters.get(0),
            // is(instanceOf(TypeConstrainedMappingJackson2HttpMessageConverter.class)));
            assertThat(converters.get(0), is(instanceOf(MappingJackson2HttpMessageConverter.class)));
            assertThat(converters.get(0).getSupportedMediaTypes(), hasItem(MediaTypes.HAL_JSON));
        }
    }

    assertThat(found, is(true));
}

From source file:org.springframework.rest.documentation.boot.SwaggerDocumentationEndpoint.java

@Override
public void setApplicationContext(ApplicationContext context) throws BeansException {
    this.restDocumentationView.setApplicationContext(context);

    RequestMappingHandlerAdapter bean = context.getBean(RequestMappingHandlerAdapter.class);
    for (HttpMessageConverter<?> converter : bean.getMessageConverters()) {
        if (converter instanceof MappingJackson2HttpMessageConverter) {
            this.objectMapper = ((MappingJackson2HttpMessageConverter) converter).getObjectMapper();
            break;
        }//w  ww  .  jav  a2 s . co m
    }
}

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 2 s.  c om*/
        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;
}