У меня проблема с контроллером покоя и текстом / простым текстом. Я прочитал много ответов здесь и попробовал много Решений без успеха. У меня есть контроль покоя, который должен возвращать строку как текст / обычный. Вот мой контроллер:
@RestController
@RequestMapping(value = "/content", headers="Accept=*/*",
produces={"text/plain", "application/json"})
public class MyController {
@GetMapping(value = "", produces = {MediaType.TEXT_PLAIN_VALUE, MediaType.APPLICATION_JSON_VALUE})
public ResponseEntity<String> getContent() {
return ResponseEntity.ok("a,b,c\n1,2,3\n3,4,5");
}
, поэтому, когда я звоню вот так:
https://localhost:9002/rest/v2/content -H "accept: text/plain"
я получаю 406 неприемлемый ответ с сообщением: не удалось найти приемлемое представление
Но с:
https://localhost:9002/rest/v2/content -H "accept: application/json"
я получил ожидаемый результат с:
content-type: text/plain
в заголовке ответа.
Я попытался настроить ContenNegociationManager в моем WebMvcConfigurationSupport как это:
@Override
public void configureContentNegotiation(final ContentNegotiationConfigurer configurer)
{
configurer.favorPathExtension(false).
favorParameter(false).
parameterName("mediaType").
ignoreAcceptHeader(false).
useJaf(false).
defaultContentType(MediaType.APPLICATION_JSON).
mediaType("properties", MediaType.TEXT_PLAIN);
}
Я также пытался с:
mediaType("plain", MediaType.TEXT_PLAIN);
, и я все еще получаю тот же Ответ 406.
Мой список конвертеров определяется как:
<util:list id="myConverters">
<ref bean="customJsonHttpMessageConverter"/>
<ref bean="customXmlHttpMessageConverter"/>
</util:list>
<bean id="customJsonHttpMessageConverter" parent="jsonHttpMessageConverter">
<property name="jaxbContextFactory" ref="customJaxbContextFactory" />
</bean>
<bean id="customXmlHttpMessageConverter" parent="xmlHttpMessageConverter">
<property name="jaxbContextFactory" ref="customJaxbContextFactory" />
</bean>
и в Конфигурации:
@Override
protected void configureMessageConverters(final List<HttpMessageConverter<?>> converters)
{
converters.addAll(myConverters);
}
Есть у кого-нибудь, может быть, идея, чего мне здесь не хватает? Спасибо