См.: Описание
| Класс | Описание |
|---|---|
| HttpContext |
HttpContext представляет отображение между корневым путем URI веб-сервиса к a
HttpHandler который вызывается, чтобы обработать запросы, предназначенные для того пути на связанном контейнере. |
| HttpExchange |
Этот class инкапсулирует полученный запрос HTTP и ответ, который будет сгенерирован в одном обмене.
|
| HttpHandler |
Обработчик, который вызывается, чтобы обработать запросы HTTP.
|
Переносимое развертывание делается как указано ниже:
Endpoint объекты для приложения. Необходимая информация, чтобы создать объекты Конечной точки может быть получена от файлов дескриптора развертывания веб-сервиса.HttpContext объекты для развертывания. Например, HttpContext мог быть создан, используя конфигурацию сервлета (для например, образца URL) для веб-сервиса в случае контейнера сервлета.Endpoint.publish(HttpContext). Во время публикуют (), время выполнения JAX-WS регистрирует a 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
<-- 5. Calls Invoker
6. Invokes the actual instance
7. Writes the response to HttpExchange
The portable undeployment is done as below:
Container --------- 1. @preDestroy on instances 2. Endpoint1.stop() ... 3. EndpointN.stop()
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.
DRAFT ea-b92