Подтвердить что ты не робот

Как вы конвертируете WSDL в классы Java, используя Eclipse?

У меня есть файл WSDL (или, точнее, его URL). Мне нужно преобразовать его в классы Java. Мне также нужно предоставить тесты для веб-сервиса, который он описывает. Я новичок в веб-службах, так может кто-нибудь сказать мне, как преобразовать WSDL в Java?

Я использую Eclipse JEE Kepler. Может быть, есть несколько плагинов, чтобы сделать это автоматически?

4b9b3361

Ответ 1

В Eclipse Kepler очень легко создавать классы клиентов Web-сервиса, вы можете достичь этого, выполнив следующие шаги.

RightClick в любом проекте- > Создать новое другое → Веб-службы- > Клиент веб-службы- > Затем вставьте URL-адрес (или местоположение) wsdl в Service Definition- > Next- > Finish

Вы увидите, что сгенерированные классы находятся внутри вашей папки src.

ПРИМЕЧАНИЕ. Без eclipse вы также можете создавать клиентские классы из файла wsdl с помощью утилиты командной строки wsimport, которая поставляется с JDK.

ссылайтесь на эту ссылку Создайте клиент веб-сервиса с помощью wsdl

Ответ 2

Вам нужно сделать следующее в командной строке:

wsimport -keep -s (name of folder where you want to store generated code) urlToWsdl

например:

wsimport -keep -s C://NewFolder https://www.blablabla.com

Ответ 3

Я бы не предложил использовать инструмент Eclipse для создания WS Client, потому что у меня был плохой опыт:

Я не уверен, что это важно, но я должен был использовать WS, написанный на .NET. Когда я использовал инструмент "Новый клиент веб-сервиса Eclipse", он сгенерировал классы Java, используя Axis (версия 1.x), который, как вы можете проверить, это старый (последняя версия от 2006). Существует более новая версия, хотя это имеет некоторые серьезные изменения, но Eclipse не использует его.

Почему старая версия Axis имеет значение, вы скажете? Поскольку при использовании OpenJDK вы можете столкнуться с некоторыми проблемами, такими как отсутствующие криптографические алгоритмы в OpenJDK, которые представлены в Oracle JDK, и некоторые библиотеки, подобные этой, зависят от их.

Итак, я просто использовал инструмент wsimport и закончил свои головные боли.

Ответ 4

Параметры:

  • Wsimport из Oracle использует JAXB
  • Axis от Apache
  • CXF от Apache
  • Axis2 от Apache предлагает выбор между ADB (по умолчанию), Apache XmlBeans или JiBX для данных, связывание

Прочитайте приведенные выше ссылки перед тем, как позвонить

Ответ 5

Команда Eclipse с Open University подготовила следующий документ, который включает создание прокси-классов с тестами. Возможно, это то, что вы ищете.

http://www.eclipse.org/webtools/community/education/web/t320/Generating_a_client_from_WSDL.pdf

Все включено в шаблон динамического веб-проекта.

В проекте создайте клиента веб-службы. Это запустит мастер, в котором вы указываете URL-адрес wsdl и создаете для вас клиент с тестами.

Руководство пользователя (ориентированное на индиго) для этой задачи находится в http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.jst.ws.cxf.doc.user%2Ftasks%2Fcreate_client.html.

Ответ 6

Используя командную строку в Windows, вы можете использовать команду ниже, чтобы получить файлы классов.

wsimport "complete file path of your .wsdl file"
example : wsimport C:\Users\schemas\com\myprofile\myprofile2019.wsdl

если вы хотите сгенерировать исходный код, вы должны использовать ниже commnad.

wsimport -keep -s src "complete file path of your .wsdl file"
example : wsimport -keep -s src C:\Users\schemas\com\myprofile\myprofile2019.wsdl

Примечание. Здесь "-s" означает исходный каталог, а "src" - это имя папки, которая должна быть создана перед выполнением этой команды. Wsimport - это инструмент, который поставляется вместе с JAVA SE, отдельная загрузка не требуется.