Java Spring boot 1.5领事健康检查406错误(HttpMediaTypeNotAcceptableException)

Java Spring boot 1.5领事健康检查406错误(HttpMediaTypeNotAcceptableException),java,spring-boot,spring-cloud-consul,Java,Spring Boot,Spring Cloud Consul,我使用SpringCloud并在Concur中注册我的微服务。微服务应该使用JSON和XML接受类型。因此,添加了以下2个封送员。但是,当实现这两个bean时,领事健康检查开始导致异常:HttpMediaTypeNotAcceptableException:找不到可接受的表示形式。如果删除了marshaller for XML,则运行状况检查开始工作正常。您能解释一下为什么为MediaType.APPLICATION\u XML添加封送拆收器会导致领事健康检查异常吗 注意:我试图通过curl将请

我使用SpringCloud并在Concur中注册我的微服务。微服务应该使用JSON和XML接受类型。因此,添加了以下2个封送员。但是,当实现这两个bean时,领事健康检查开始导致异常:
HttpMediaTypeNotAcceptableException:找不到可接受的表示形式
。如果删除了marshaller for XML,则运行状况检查开始工作正常。您能解释一下为什么为
MediaType.APPLICATION\u XML
添加封送拆收器会导致领事健康检查异常吗

注意:我试图通过curl将请求
/heath
发送到标题为
accept=application/json
的应用程序,即使启用了
MediaType.application\u XML
的封送器,答案也是正确的。不幸的是,领事用text/plain accept类型发送请求

    @Bean
public MarshallingHttpMessageConverter marshallingHttpMessageConverter() {
    Jaxb2Marshaller jaxb2Marshaller = jaxb2Marshaller();

    MarshallingHttpMessageConverter marshallingHttpMessageConverter = new MarshallingHttpMessageConverter();
    marshallingHttpMessageConverter.setMarshaller(jaxb2Marshaller);
    marshallingHttpMessageConverter.setUnmarshaller(jaxb2Marshaller);
    List<MediaType> supportedMediaTypes = new ArrayList<>();
    supportedMediaTypes.add(MediaType.APPLICATION_XML);
    marshallingHttpMessageConverter.setSupportedMediaTypes(supportedMediaTypes);
    return marshallingHttpMessageConverter;
}
@Bean
公共封送HttpMessageConverter封送HttpMessageConverter(){
Jaxb2Marshaller Jaxb2Marshaller=Jaxb2Marshaller();
MarshallingHttpMessageConverter MarshallingHttpMessageConverter=新MarshallingHttpMessageConverter();
marshallingHttpMessageConverter.setMarshaller(jaxb2Marshaller);
marshallingHttpMessageConverter.setUnmarshaller(jaxb2Marshaller);
List supportedMediaTypes=new ArrayList();
supportedMediaTypes.add(MediaType.APPLICATION\uXML);
编组HttpMessageConverter.setSupportedMediaTypes(supportedMediaTypes);
返回编组HttpMessageConverter;
}

@Bean
公共映射Jackson2HttpMessageConverter封送HttpMessageConverterJSON(){
MappingJackson2HttpMessageConverter=新的MappingJackson2HttpMessageConverter();
setObjectMapper(新的ObjectMapper());
List supportedMediaTypes=new ArrayList();
supportedMediaTypes.add(MediaType.APPLICATION_JSON);
转换器。设置支持的媒体类型(支持的媒体类型);
回流转换器;
}

我将我的应用程序从spring boot 1.4.1迁移到了1.5.9,并在1.4.1中实现了上述所有bean。但是,以下配置中也提到了这些bean:

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    converters.clear();

    converters.add(marshallingHttpMessageConverter());
    converters.add(marshallingHttpMessageConverterJson());
}
@配置
@EnableWebMvc
公共类WebConfig扩展了WebMVCConfigureAdapter{
@凌驾
public void configureMessageConverters(列表
@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    converters.clear();

    converters.add(marshallingHttpMessageConverter());
    converters.add(marshallingHttpMessageConverterJson());
}