У меня есть проект микросервиса jhipster. На модуле шлюза добавьте jackson-dataformat-xml с зависимостью. Теперь все ответы возвращаются в формате xml. Как я могу сделать так, чтобы для всех запросов оставалось содержимое Type = "application / json", но только для одного метода возвращается xml, который является объектом ответа, аннотированным @JacksonXmlProperty:
@RequestMapping(value = "/get", method = RequestMethod.GET, produces = MediaType.TEXT_XML_VALUE)
@Timed
public CustomResponseObject getByCustomRequest(@RequestHeader(value = "Authorization") String requestHeader, CustomRequestObject requestObject) {
//for basic auth verification in microservice
requestObject.setBasicAuthHeader(requestHeader);
//myService - is AuthorizedFeignClient
return myService.getByCustomRequest(requestObject);
}
, это CustomResponseObject:
@Getter
@Setter
@AllArgumentConstructor
@NoArgumentConstructor
@ToString
@EqualsAndHashCode
@JacksonXmlRootElement(localName = "response")
public class CustomResponseObject {
@JacksonXmlProperty(localName = "agent_id")
private String id;
@JacksonXmlProperty(localName = "provider_id")
private String providerId;
@JacksonXmlProperty(localName = "provider_count")
private Integer count;
@JacksonXmlProperty(localName = "provider_date")
private Instant date;
}