maven-jaxb2-plugin терпит неудачу с атрибутом версии JAXB должен присутствовать

У меня есть следующая конфигурация для ---- +: = 0 =: + ---- :и это терпит неудачу с:org.xml.sax.SAXParseException;systemId: file: /home/hasancansaral/workspace/company/domain/src/main/xsd/delivery.wsdl;номер строки: 2;номер столбца: 366;Должен присутствовать атрибут версии JAXBНе имеет значения, если я запускаю плагин через IntelliJ IDEA или выполняю простое ---- +: = 3 =: + ---- .Тем не менее, действие успешно выполняется со схемой, которую можно найти здесь , поэтому я подозреваю, что моя схема wsdl действительно деформирована, которую я пока не могу опубликовать, но могу предоставить с помощью сообщений (я знаю, что это не очень помогаетдля общественности, как есть, но если проблема в схеме, я опубликую соответствующую проблемную часть здесь).Примечание: SOAP UI также проверяет схему.Примечание 2: та же ошибка присутствует и для ---- +: = 4 =: + ---- и ---- +: = 5 =: + ---- .
4 голоса | спросил Hasan Can Saral 15 MarpmWed, 15 Mar 2017 14:04:30 +03002017-03-15T14:04:30+03:0002 2017, 14:04:30

1 ответ


0
TL; DR Ваш WSDL не верен /не подходит для XJC.Вам понадобятся дополнительные настройки JAXB или добавьте ---- +: = 0 =: + ---- к корневому элементу.Проблема в том, что ваш WSDL содержит множество настроек JAXB во включенной схеме.Это плохая идея.Кастомизация JAXB - это специфичная для поставщика вещь, кто бы ни помещал ее в WSDL (которая должна быть независимой от производителя), он не делал правильную вещь.Теперь дело в том, что XJC, компиляция схемы JAXB, ожидает определенных наворотов, когда у вас есть встроенные настройки JAXB.Подобно атрибуту ---- +: = 1 =: + ---- корневого элемента.Что в данном случае отсутствует.Он присутствует в элементе ---- +: = 2 =: + ----, но не в корневом элементе ---- +: = 3 =: + ---- .Если вы добавите его , компиляция завершится успешно.Это не имеет ничего общего с плагинами JAXB.Если вы попробуете ---- +: = 4 =: + ---- , вы получите ту же ошибку.Там может быть какой-то волшебный вариант, чтобы подавить эту проблему, но это трудно понять.Так что я бы предложил патчить WSDL.Создайте патч и примените его к WSDL на этапе предварительной генерации кода.Я лично удалил бы все настройки JAXB из WSDL, поскольку они буквально ничего не забыли там.
ответил lexicore 21 MaramTue, 21 Mar 2017 00:21:52 +03002017-03-21T00:21:52+03:0012 2017, 00:21:52

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132