Я использую веб-службы spring-ws, и у меня есть метод веб-службы, как показано ниже.Возврат ответа веб-службы клиентам?
В чем разница между нижеуказанными методами?
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "Request")
@ResponsePayload()
public JAXBElement<Response> getData(@RequestPayload Request request) {
//Some code
}
и
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "Request")
@ResponsePayload()
public Response getData(@RequestPayload Request request) {
//Some code
}
Употреблять этот веб-сервис, с помощью клиентов, которые подход считается хорошим? Нужно ли мне следовать первому методу или второму методу? Если я непосредственно отправляю элемент jaxb, тогда будут ли возникнут проблемы с клиентами? Какой подход рекомендуется? полезно ли возвращать элемент jaxb напрямую?
Спасибо!
Разница в первом ответе не является корневым объектом XML (т. Е. Аннотируется с помощью '@ XmlRootElement'), а во втором -. Для сгенерированного сообщения это не должно быть иначе. –
Если я напрямую возвращаю JAXBElement, то клиенты должны сделать любую дополнительную обработку, чтобы получить результат? Благодаря! – user755806
Прочтите мой ответ. Это не имеет значения для сгенерированного XML! Таким образом, не должно быть никаких различий, это XML, который передает НЕ-объекты. –