@Test
  public void acceptHeaderForSerializableResponseMessageExchange() throws Exception {
    HttpRequestExecutingMessageHandler handler =
        new HttpRequestExecutingMessageHandler("http://www.springsource.org/spring-integration");

    handler.setHttpMethod(HttpMethod.GET);
    handler.setExtractPayload(false);
    handler.setExpectedResponseType(GenericMessage.class);

    List<HttpMessageConverter<?>> converters = new ArrayList<HttpMessageConverter<?>>();
    converters.add(new SerializingHttpMessageConverter());
    handler.setMessageConverters(converters);
    setBeanFactory(handler);
    handler.afterPropertiesSet();

    RestTemplate restTemplate =
        TestUtils.getPropertyValue(handler, "restTemplate", RestTemplate.class);

    HttpHeaders requestHeaders = setUpMocksToCaptureSentHeaders(restTemplate);

    Message<?> message = MessageBuilder.withPayload("foo").build();
    Exception exception = null;
    try {
      handler.handleMessage(message);
    } catch (Exception e) {
      exception = e;
    }
    assertTrue(requestHeaders.getAccept() != null);
    assertTrue(requestHeaders.getAccept().size() > 0);
    assertEquals("404 Not Found", exception.getCause().getMessage());
    List<MediaType> accept = requestHeaders.getAccept();
    assertTrue(accept != null && accept.size() > 0);
    assertEquals("application", accept.get(0).getType());
    assertEquals("x-java-serialized-object", accept.get(0).getSubtype());
  }