Доступ к веб-сервису с Java - PullRequest
2 голосов
/ 29 декабря 2010

Заранее извиняюсь, если это дубликат, я искал несколько часов и ничего не могу найти.

Я пытаюсь подключиться к веб-службе на основе SOAP, которая предоставляет WSDL через приложение Java (в частности, Tomcat).Я делал это в .Net раньше, и это не могло быть проще.Я просто нажал «Добавить веб-ссылку» и указал на WSDL, и он сгенерировал все заглушки и код маршалинга / демаршалинга для меня.Я слышал о XJC, и это выглядит многообещающе, хотя я не могу найти что-нибудь недавнее об этом (все с 2002-го и, кажется, изобилует битыми ссылками).Я нашел одно руководство, в котором они вручную генерировали SOAP XML, но это кажется гораздо более неэффективным, чем нужно.Будет ли XJC делать то, что я ищу?(То есть сгенерируйте заглушки классов вместе с кодом, чтобы маршалировать и распаковывать мои запросы). Если да, можете ли вы предложить учебник / документацию?

Заранее спасибо!

Ответы [ 6 ]

2 голосов
/ 29 декабря 2010

Мне больше всего повезло с Eclipse. Перейдите в «Новое» -> «Другое». Затем в «Веб-сервисах» выберите «Клиент веб-сервиса». Поместите ползунок в «Deploy Client» и наведите его на свой wsdl, и он должен сгенерировать используемый код клиента

2 голосов
/ 29 декабря 2010

Крис, попробуй сначала стандарт - JAX-WS. Прокрутите вниз для клиента: http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/2.0/tutorial/doc/JAXWS3.html

0 голосов
/ 29 декабря 2010

Как утверждает jbx, реализация JAX-WS является хорошим выбором.Альтернативой Apache CXF является Axis 2 .

Возможно, выходит за рамки, но если вы используете Java и заинтересованы в гибкой веб-разработке, Grails (Groovy)может представлять интерес.Это позволяет вам делать старый код Java или Groovy код или оба, очень удобно.В нем также есть некоторые «волшебные» вещи.

Grails отлично работает с Apache CXF, но также имеет несколько очень простых в использовании библиотек, таких как GroovyWS.

0 голосов
/ 29 декабря 2010

Что вы должны сделать, это использовать реализацию JAX-WS. Большинство IDE (Netbeans, Eclipse, IntelliJ IDEA) имеют инструменты, аналогичные .Net, к которым вы привыкли. Вы также можете сделать это из командной строки (как и версия .Net wsdl.exe).

Если вы выберете NetBeans, он будет использовать стандартную реализацию Jax-WS, которая идет с ним (Metro). Очень хорошая альтернатива этому - Apache CXF (http://cxf.apache.org/).

CXF предоставляет инструмент командной строки wsdl2java, который делает то же самое, что вы говорите, он генерирует заглушки (классы Java) для WSDL, который вы ему предоставляете. http://cxf.apache.org/docs/wsdl-to-java.html

0 голосов
/ 29 декабря 2010

Вы также можете посмотреть на Модуль веб-службы Spring . Это делает генерацию клиента довольно простой.

IntelliJ от JetBrains также создаст для вас клиента из WSDL.

0 голосов
/ 29 декабря 2010

Попробуйте Java IDE, например Eclipse. У всех тех, кого я знаю, есть инструментальные средства веб-сервисов, которые вы описываете в Visual Studio. Если вы выбираете Eclipse, обязательно используйте пакет Eclipse IDE для разработчиков Java EE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...