Настройване на axis2 soap сървър

Опитвам се да създам проста SOAP уеб услуга (калкулатор), за да науча основите на тази технология. Аз съм нов в SOAP, така че вече направих някои неща, но не съм сигурен какво да правя по-нататък.

Избрах подход отгоре надолу, което означава първо създаване на wdsl файл и след това автоматично генериране на кода. Създадох wsdl файл с описанието на услугата и го използвах за генериране на java файлове. Имам го във формат 1.1 и 2.0. За да получа 2.0 файлове използвах инструмента wsdl2java на axis2, за 1.1 използвах инструмента java wsimport.

От инструмента wsimport получих следните файлове:

  • информация за пакета.java
  • ObjectFactory.java
  • CalculatorService.java (име на моята услуга)
  • Calculator.java (име на моя portType)
  • Input.java (име на сложен тип)

Инструментът wsdl2java ми даде следните файлове:

  • services.xml
  • CalculatorService.wsdl
  • Output.java (име на изходен елемент)
  • Input.java (име на входен елемент)
  • cInput.jaba (име на входния комплексен елемент)
  • ExtensionMapper.java
  • CalculatorServiceCallbackHandler.java
  • CalculatorServiceMessageReceiverInOut.java
  • CalculatorServiceSkeleton.java (включва имплементация на интерфейс)
  • CalculatorServiceSkeletonInterface.java
  • CalculatorServiceStub.java

Във файловете wsdl2java предполагам, че имам всичко необходимо, с изключение на внедряването на сървъра. Що се отнася до тези на wsimport, им липсва внедряване и не съм сигурен къде да го добавя. Реализацията на сървъра също липсва.

Първо бих искал да го пусна като локална услуга (локален сървър), за да тествам дали работи и също така да напиша клиент по-късно.

Намерих пример за внедряване на сървър тук: Сървър за SOAP услуга в процеса за Java. Изглежда доста просто и ако е възможно бих искал да използвам този подход. Но не съм сигурен дали ще работи с файловете, които съм генерирал (wsdl2java или wsimport). Също така имам инсталиран Apache сървър, ако би бил полезен. Затова търся съвет кой набор от файлове да използвам за настройка на сървъра и какъв би бил най-лесният начин да го направя.

Също така се чудя дали пространствата от имена, използвани във файла wsdl, влияят на наличността на услугата? Тъй като те трябва да са URI, но в момента нямам такъв за моята услуга. Така че за targetNamespace, xmlns:tns, адрес на крайна точка и т.н. използвах произволни URL-и. Ще работи ли, ако се опитвам да го стартирам локално, или ще създаде проблеми?


person dominos    schedule 12.12.2010    source източник


Отговори (1)


Добре, мисля, че сам намерих решението.

Използвани са плъгини Tomcat сървър и eclipse axis2, за да работят сървърът и клиентът.

Според мен това беше добър урок: http://eclipse.dzone.com/articles/web-services-development-with-

person dominos    schedule 12.12.2010