Я должен сравнить данные XML.Существует два источника:
Я не вижу простого способа преобразовать их в одни и те же классы и использовать равенстваmethod.
Классы, которые работают с веб-службами, генерируются автоматически, а WSDL совсем не прост.
Поэтому я читаю ответ из веб-службы, читаю соответствующий файл, преобразую их вСтрока с тем же форматированием (удаленные пробелы, \ n \ r символы и т. Д.), А затем с помощью метода String.equals ().
Проблема заключается в том, что пустые теги веб-служб записываются следующим образом:
<EmptyTag/>
но предоставленные файлы содержат пустые теги такого типа:
<EmptyTag></EmptyTag>
ОК, есть способ подготовить все предоставленные файлы вручную, но мне это не нравится.Кто знает, как можно преобразовать пустые теги в один стиль?Если есть идеи как упростить процесс - милости просим;)
ОБНОВЛЕНИЕ
Я не разбираю xml.Данные файла просто читаются и преобразуются в ожидаемый формат.Структура объекта из ответа веб-службы преобразуется в строку XML следующим образом:
marshaller.marshal(new JAXBElement<response_class_name>(new QName("response_class_name"),
response_class_name.class, response_object), stringWriter);