У меня проблемы с пониманием того, как сделать клиент веб-службы.История в том, что мне нужно позвонить в веб-сервис.Как я понимаю, мне нужно как-то использовать веб-сервис, чтобы получить правильные классы веб-сервиса.
Я исследовал множество способов сделать это.Например, я попытался использовать их с помощью скрипта, а затем просто импортировать классы.
Однако мой коллега порекомендовал мне попробовать использовать wsdl2code Maven-plugin, так как мы уже используем Maven-2.Делать это работает, но создает много ненужных файлов, как я это вижу.Я добавил следующее в мой файл pom.xml:
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<packageName>ws.client.test</packageName>
<wsdlFile>http://localhost:8088/test?WSDL</wsdlFile>
<databindingName>xmlbeans</databindingName>
<outputDirectory>target/ws/test</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
Это создает файлы успешно, но, как уже было сказано, есть также много ненужных файлов (xmlsoap / schemas / soap / encoding / ...) или, по крайней мере, намного больше файлов для неиспользования (как я вижу это), чем другие WSDLconsume, которые я пытался.
Вопросы
IsЕсть ли общие рекомендации, как использовать веб-сервис?Поскольку файл WSDL является внешним, он также может меняться, и поэтому я подумал, что было бы хорошо, если бы это делалось автоматически в Maven (хотя были бы другие побочные эффекты, если бы WSDL внезапно изменился ...).
Если wsdl2code является хорошим выбором, должны ли все файлы всегда создаваться в target-catalouge так, чтобы
удалялись при выполнении mvn clean)?
Есть ли другой инструмент, который может подойти лучше?
Обновление / редактирование
Используя, например, JAX-WS wsimport, я получаю сгенерированные файлычто я желаю.Однако, создав их в / target-folder, я хочу получить доступ к ним в том же проекте, чтобы фактически вызвать веб-сервис.Это возможно?