Пакет javax.xml.ws.spi.http
Предоставляет HTTP SPI, используемый для портативного развертывания веб-служб JAX-WS в контейнерах (например,
См.: Описание
| Класс | Описание |
|---|---|
| HttpContext | HttpContext представляет отображение между корневым URI путем веб-службы и |
| HttpExchange | Этот класс инкапсулирует принятый HTTP-запрос и ответ, который должен быть сгенерирован в одном обмене. |
| HttpHandler | Обработчик, который вызывается для обработки HTTP-запросов. |
Описание пакета javax.xml.ws.spi.http
Предоставляет HTTP SPI, используемый для портативного развертывания веб-служб JAX-WS в контейнерах (например, контейнерах сервлетов). Этот SPI предназначен не для конечных разработчиков, а предоставляет способ для разработчиков контейнеров портативно развертывать службы JAX-WS.
Портативное развертывание выполняется следующим образом:
- Контейнер создает объекты
Endpointдля приложения. Необходимая информация для создания объектов Endpoint может быть получена из файлов описания развертывания веб-службы. - Контейнеру необходимо создать объекты
HttpContextдля развертывания. Например, HttpContext можно создать, используя конфигурацию сервлета (например, url-шаблон) для веб-службы в случае контейнера сервлетов. - Затем публикует все конечные точки, используя
Endpoint.publish(HttpContext). Во время publish(), среда выполнения JAX-WS регистрирует обратный вызовHttpHandlerдля обработки входящих запросов или объектовHttpExchange. Объект HttpExchange инкапсулирует HTTP-запрос и ответ.
Container JAX-WS runtime
--------- --------------
1. Creates Invoker1, ... InvokerN
2. Provider.createEndpoint(...) --> 3. creates Endpoint1
configures Endpoint1
...
4. Provider.createEndpoint(...) --> 5. creates EndpointN
configures EndpointN
6. Creates ApplicationContext
7. creates HttpContext1, ... HttpContextN
8. Endpoint1.publish(HttpContext1) --> 9. creates HttpHandler1
HttpContext1.setHandler(HttpHandler1)
...
10. EndpointN.publish(HttpContextN) --> 11. creates HttpHandlerN
HttpContextN.setHandler(HttpHandlerN) Обработка запросов выполняется следующим образом (для каждого запроса): Container JAX-WS runtime --------- -------------- 1. Creates a HttpExchange 2. Gets handler from HttpContext 3. HttpHandler.handle(HttpExchange) --> 4. reads request from HttpExchange The portable undeployment is done as below: Container --------- 1. @preDestroy on instances 2. Endpoint1.stop() ... 3. EndpointN.stop()
- С:
- JAX-WS 2.2
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.