What if a XML
webservice can respond with different xml structures? Eg an <OkResponse>
and an <ErrorResponse>
, having completely different fields?
ResponseEntity<Response> rsp = restTemplate
.postForEntity(url, new HttpEntity<>(xml, HEADERS), OkResponse.class);
Before sending the request, I don't know which type of response will come back. If I'm using OkResponse.class
, I will get a ClassCastException
if an ErrorResponse
is returned.
How could I handle this?
The autogenerated beans are as follows:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlSeeAlso({
OkResponse.class,
ErrorResponse.class
})
public class AbstractResponse {
}