Существует два варианта достижения этого, оба работают как шарм. И оба варианта могут быть автоматизированы из ant \ gradle, которые вы назовите его.
1.To использовать -clientjar, а затем упакуйте источники
2.Manually вставьте в банку WSDL и настроить wsdLlocation URL
Если у вас есть C: \ WSDL \ SO \ Стаса. WSDL (я бегала на окнах)
CD C:\WSDL\SO\
Первый вариант
C:\WSDL\SO>wsimport -clientjar StasWebServiceClient.jar stas.wsdl
Это создает StasWebServiceClient.jar банку файл, но при импорте его затмить, источники не ввозу из-за проблема с темой (пакет по умолчанию).
=> Распакуйте файл фляги в текущей папке, вы можете использовать 7zip или любой другой большой почтовый инструмент, или вы можете запустить
C:\WSDL\SO>jar xf StasWebServiceClient.jar
разархивировать банку.
иерархия папок должна выглядеть
C:\WSDL\SO\META-INF
C:\WSDL\SO\stas.wsdl(original wsdl)
C:\WSDL\SO\StasWebServiceClient.jar(generated jar file)
C:\WSDL\SO\META-INF\wsdl(created by -clientjar)
C:\WSDL\SO\META-INF\wsdl\stas.wsdl(copied by -clientjar)
C:\WSDL\SO\com\...
/* all generated classes\sources */
C:\WSDL\SO\com\...
=> У
C:\WSDL\SO>jar -cvf StasWebServiceClientCorrect.jar com META-INF
это создаст еще одну баночку, StasWebServiceClientCorrect.jar, который теперь имеет правильную упаковку.
Второй вариант
=> Run wsimport
C:\WSDL\SO>wsimport -keep stas.wsdl
генерировать код .Я всегда хотел иметь -keep вариант, но это до вас.
=> создать META-INF папку
C:\WSDL\SO>mkdir META-INF
=> Создание META-INF/WSDL папку
C:\WSDL\SO>cd META-INF
C:\WSDL\SO\META-INF>mkdir wsdl
=> идти в одну папку вверх.
C:\WSDL\SO\META-INF>cd ..
=> Скопировать stas.wsdl файл в META-INF \ \ stas.wsdl WSDL
C:\WSDL\SO>copy stas.wsdl META-INF\wsdl\stas.wsdl
=> Создать архив баночку
C:\WSDL\SO>jar -cvf StasWebServiceClient.jar com META-INF
Импорт баночка в рабочую область. Когда вы создадите фактический вызов услуги, используйте:
StasService stasService = new StasService(StasService.class.getClassLoader().getResource("META-INF/wsdl/stas.wsdl"))
такой же здесь. любые подсказки? – inquisitive
, когда я использую опцию '-clientjar', jar, сгенерированный в результате, содержит ** только ** папку META-INF. – peterh