Я пытаюсь заставить WSDL2Java (org.apache.axis2.wsdl.WSDL2Java
) сгенерировать все классы в данном базовом пакете, например com.mycompany.thewebservice. *
Согласно документации опция -p должна помочь:
-p --package Имя целевого пакета. Если опущен, будет использован пакет по умолчанию (сформированный с использованием целевого пространства имен WSDL).
Но, к сожалению, когда мы используем опцию -p, только 3 основных класса (XService.java, XCallbackHandler.java и XServiceStub.java) генерируются в данном пакете. Многие другие пакеты создаются, например:
- com.theservice. *
- org.w3.www._2004._60.xmlmime
- org.xmlsoap.schemas.soap.encoding
Это беспорядок для нас, потому что мы интегрируем множество веб-сервисов и хотим, чтобы все классы для сервиса находились в общей базовой папке.
В прошлом мы использовали Axis 1, и ее WSDL2Java (org.apache.axis.wsdl.WSDL2Java
) имеет параметр --package, который работает как шарм. В этом случае все классы аккуратно сгенерированы в указанном мной пакете.
Есть ли способ заставить Axis 2 WSDL2Java генерировать все классы в данном пакете? Я знаю о параметре -ns2p --namespace2package, но я не хочу перечислять URL-адреса по одному для каждого интегрируемого сервиса.