Я работаю над проектом, в котором у меня есть модуль веб-службы и модуль веб-сервиса. Я хочу, чтобы клиент создавался на основе файла wsdl веб-службы, и я хочу, чтобы файл wsdl создавался при создании модуля веб-службы.
Я нашел плагины maven для этого (axis2-java2wsdl-maven-plugin и axis2-wsdl2code-maven-plugin), но axis2-java2wsdl-maven-plugin продолжает генерировать недопустимый xsd для файла wsdl (я думаю по крайней мере, он недействителен).
Веб-сервис возвращает некоторые перечисления из своих методов или возвращает объекты, содержащие перечисления. При создании файла wsdl я получаю ссылку на «xs: Enum», которого нет в данном пространстве имен для двух типов перечислений. У меня их несколько, но только двое из них получают это base = "xs: Enum".
<xs:complexType name="LoginType">
<xs:complexContent>
<xs:extension base="xs:Enum">
<xs:sequence/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Итак, при сборке клиентского модуля с плагином axis2-wsdl2code-maven-plugin я получаю следующую ошибку:
error: src-resolve: type 'Enum@http://www.w3.org/2001/XMLSchema' not found.
Я не понимаю, почему он продолжает генерировать недопустимый XSD!