Самый быстрый способ получить доступ к веб-сервису с помощью WSDL в Java - PullRequest
4 голосов
/ 08 июня 2011

Мне нужен доступ к веб-сервису из Java. Служба имеет WSDL . Теперь, как мне добраться до вызова его операций?

  • Я уже использовал wsimport для него, но он генерирует только объекты XML для операций / ответов, и ничего на самом деле их не вызывает.
  • Я посмотрел на Spring-WS , но не похоже, что это полностью то, что я хочу (даже если это может быть частью решения). Слово "wsdl" вообще не появляется на этой странице.

Ответы [ 3 ]

3 голосов
/ 08 июня 2011

wsimport генерирует не только объекты, необходимые для связи со службой, но также и клиент службы. Создайте экземпляр класса MSaleService и выберите порт с getMSaleServiceSoap(). Вот и все.

Там может быть некоторые проблемы, хотя. wsimport пожаловался на

[ПРЕДУПРЕЖДЕНИЕ] Порт SOAP "MSaleServiceSoap12": используется нестандартная привязка SOAP 1.2.
строка 530 из http://vas.mikro -odeme.com / services / msaleservice.asmx? wsdl

но я не знаю, если это создает реальные проблемы.

0 голосов
/ 08 июня 2011

Если вы используете Eclipse, есть мастер , который позволяет вам создать так называемый «Клиент веб-службы», просто указав на ваш файл wsdl.

, так что если у вас есть wsdlв вашем проекте, затем просто нажмите «new» и выберите мастер.

он запросит файл wsdl и некоторую другую информацию (вы можете выбрать время выполнения - Axis, Axis2, CXF ...).

я думаю, что этот мастер является частью WTP (www.eclipse.org/webtools).

взгляните:

http://tinyurl.com/5v56s5u

http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/WebServiceClient/WebServiceClient.html

0 голосов
/ 08 июня 2011

Вот быстрая ссылка, которую я нашел

http://download.oracle.com/javaee/1.4/tutorial/doc/JAXRPC5.html

По сути, этот тип вызова вызывает динамический вызов, когда НЕ нужно знать WSDLаприорно.

...