Сгенерированные Apache CFX методы WSDL перезаписывают информацию о пакете
У меня проблема с генерацией заглушек из файла WSDL. Само поколение работает без каких-либо проблем, но методы перезаписывают информацию о пакетах друг друга, потому что все методы создаются в одной папке. Это приводит к тому, что пространство имен неверно для большинства вызовов.
Я решил эту проблему путем сопоставления пространств имен с пакетами, это прекрасно работает, если я генерирую их вручную и реагирую на изменения в WSDL. Но я планирую автоматизировать этот процесс, но новые методы, вероятно, приведут к краху этой стороны, потому что у них не будет этого отображения.
Я хотел бы вернуться к НЕ отображению пакетов самостоятельно, а вместо этого получить представление о том, что можно изменить, чтобы сделать эту работу без.
Я предполагаю, что импортированное пространство имен TYPE неверно, или cxf не может его обработать (я изменил имена):
<xs:import namespace="http://schemas.datacontract.org/Webservice.SoapObjects.CfgItem.GetDetails"/>
Подпапка создается до тех пор, пока метод CfgItem после периода (в данном случае, GetDetails) не будет создан в папке CfgItem вместе с другими операциями импорта. Каждый импорт перезаписывает информацию о пакете и меняет пространство имен.
Мой первый вопрос, это правильно? Или периоды не используются правильно? Во-вторых, есть ли обходной путь в CXF, кроме сопоставления пакетов, который я могу использовать?
Я попробовал несколько вещей, но ничего не помогло решить эту проблему.:(Доступ к WSDL ограничен, и изменения, вероятно, будут невозможны без веской причины.
Я могу предоставить более подробную информацию, если это необходимо.
Рад, если кто-то еще столкнулся и решил это.