Создание и развертывание простого веб-сервиса и клиента веб-сервиса в Eclipse
Опубликовано: 2019-10-20Следуйте приведенным ниже простым шагам, чтобы создать и развернуть простую Web Service
и Web Service Client
в Eclipse IDE.
Шаг 1
Установите Apache Tomcat и добавьте его в Eclipse на вкладке «Сервер» — я использую Tomcat version 9.0.10
.
Шаг 2
Создайте динамический веб-проект (имя: CrunchifyWS
)

Шаг 3
Создайте файл Java в папке /src
. Щелкните правой кнопкой мыши папку /src -> Создать -> Класс.
- Пакет:
crunchify.com.web.service
- Имя:
CrunchifyHelloWorld.java

Шаг-4
Откройте файл CrunchifyHelloWorld.java
и создайте простой основной метод.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
package crunchify . com . web . service ; /** * @author Crunchify.com */ public class CrunchifyHelloWorld { public float addValue ( float value ) { return ( value + 10 ) ; } public float subtractValue ( float value ) { return ( value - 10 ) ; } } |
Шаг-5
- Щелкните правой кнопкой мыши файл
CrunchifyHelloWorld.java -> Web Services -> Create Web Service
- Выберите параметры, указанные на диаграмме ниже.
- Нажмите «Готово»

Шаг-6
Завершение всех процессов может занять некоторое время, и вы должны увидеть созданный новый проект « CrunchifyWSClient
». Вот окончательная структура проекта:

Шаг-7
CrunchifyWS
и CrunchifyWSClient
оба проекта должны быть автоматически развернуты на сервере.
Кроме того, Eclipse автоматически открывает Web Service Test Client Window
с URL-адресом: http://localhost:8080/CrunchifyWSClient/sampleCrunchifyHelloWorldProxy/TestClient.jsp?endpoint=http://localhost:5922/CrunchifyWS/services/CrunchifyHelloWorld.
Шаг-8
Теперь нажмите addValue(float)
, subtractValue(float)
и введите данные для проверки обновленного результата.

И все готово. Дайте мне знать, если вы обнаружите какие-либо трудности с этими шагами.
Вы получаете сообщение об ошибке ниже после нажатия кнопки Invoke?
1 2 |
Result Exception : java . net . ConnectException : Connection refused ( Connection refused ) Message : ; nested exception is : java . net . ConnectException : Connection refused ( Connection refused ) |

Выполните следующие шаги:
- Щелкните правой кнопкой мыши на Tomcat
- Нажмите «Добавить и удалить», чтобы увидеть добавленное приложение.
- Нажмите Очистить…
- Нажмите Опубликовать
- Нажмите «Перезагрузить».

Как перезапустить WebService после перезапуска приложения или позже?
Вот удобный URL: http://localhost:8080/CrunchifyWSClient/sampleCrunchifyHelloWorldProxy/TestClient.jsp

Если вы хотите скачать CrunchifyHelloWorld.wsdl, то вот он:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
<? xml version = "1.0" encoding = "UTF-8" ?> < wsdl : definitions targetNamespace = "http://service.web.com.crunchify" xmlns : apachesoap = "http://xml.apache.org/xml-soap" xmlns : impl = "http://service.web.com.crunchify" xmlns : intf = "http://service.web.com.crunchify" xmlns : wsdl = "http://schemas.xmlsoap.org/wsdl/" xmlns : wsdlsoap = "http://schemas.xmlsoap.org/wsdl/soap/" xmlns : xsd = "http://www.w3.org/2001/XMLSchema" > < ! -- WSDL created by Apache Axis version : 1.4 Built on Apr 22 , 2006 ( 06 : 55 : 48 PDT ) -- > < wsdl : types > < schema elementFormDefault = "qualified" targetNamespace = "http://service.web.com.crunchify" xmlns = "http://www.w3.org/2001/XMLSchema" > < element name = "subtractValue" > < complexType > < sequence > < element name = "value" type = "xsd:float" / > < / sequence > < / complexType > < / element > < element name = "subtractValueResponse" > < complexType > < sequence > < element name = "subtractValueReturn" type = "xsd:float" / > < / sequence > < / complexType > < / element > < element name = "addValue" > < complexType > < sequence > < element name = "value" type = "xsd:float" / > < / sequence > < / complexType > < / element > < element name = "addValueResponse" > < complexType > < sequence > < element name = "addValueReturn" type = "xsd:float" / > < / sequence > < / complexType > < / element > < / schema > < / wsdl : types > < wsdl : message name = "subtractValueResponse" > < wsdl : part element = "impl:subtractValueResponse" name = "parameters" > < / wsdl : part > < / wsdl : message > < wsdl : message name = "addValueResponse" > < wsdl : part element = "impl:addValueResponse" name = "parameters" > < / wsdl : part > < / wsdl : message > < wsdl : message name = "addValueRequest" > < wsdl : part element = "impl:addValue" name = "parameters" > < / wsdl : part > < / wsdl : message > < wsdl : message name = "subtractValueRequest" > < wsdl : part element = "impl:subtractValue" name = "parameters" > < / wsdl : part > < / wsdl : message > < wsdl : portType name = "CrunchifyHelloWorld" > < wsdl : operation name = "subtractValue" > < wsdl : input message = "impl:subtractValueRequest" name = "subtractValueRequest" > < / wsdl : input > < wsdl : output message = "impl:subtractValueResponse" name = "subtractValueResponse" > < / wsdl : output > < / wsdl : operation > < wsdl : operation name = "addValue" > < wsdl : input message = "impl:addValueRequest" name = "addValueRequest" > < / wsdl : input > < wsdl : output message = "impl:addValueResponse" name = "addValueResponse" > < / wsdl : output > < / wsdl : operation > < / wsdl : portType > < wsdl : binding name = "CrunchifyHelloWorldSoapBinding" type = "impl:CrunchifyHelloWorld" > < wsdlsoap : binding style = "document" transport = "http://schemas.xmlsoap.org/soap/http" / > < wsdl : operation name = "subtractValue" > < wsdlsoap : operation soapAction = "" / > < wsdl : input name = "subtractValueRequest" > < wsdlsoap : body use = "literal" / > < / wsdl : input > < wsdl : output name = "subtractValueResponse" > < wsdlsoap : body use = "literal" / > < / wsdl : output > < / wsdl : operation > < wsdl : operation name = "addValue" > < wsdlsoap : operation soapAction = "" / > < wsdl : input name = "addValueRequest" > < wsdlsoap : body use = "literal" / > < / wsdl : input > < wsdl : output name = "addValueResponse" > < wsdlsoap : body use = "literal" / > < / wsdl : output > < / wsdl : operation > < / wsdl : binding > < wsdl : service name = "CrunchifyHelloWorldService" > < wsdl : port binding = "impl:CrunchifyHelloWorldSoapBinding" name = "CrunchifyHelloWorld" > < wsdlsoap : address location = "http://localhost:8080/CrunchifyWS/services/CrunchifyHelloWorld" / > < / wsdl : port > < / wsdl : service > < / wsdl : definitions > |
Дайте мне знать, если у вас возникнут какие-либо проблемы с запуском этого.
