blob: 166e6d80ca84f181ca2eb21451ad61fac81d80da [file] [log] [blame]
h2. servicemix-http
h3. Overview
ServiceMix ships with a JBI compliant HTTP/SOAP binding component named servicemix-http.
Here are the main features:
* JBI compliant Binding Component
* Usable in a lightweight mode in servicemix.xml configuration files
* Integrated HTTP server based on Jetty 6
* HTTP Client using Jakarta Commons HTTP Client
* Highly performant and scalable using Jetty 6 continuations
* SOAP 1.1 and 1.2 support
* MIME attachments
* WS-Addressing support
* WSDL based and XBean based deployments
* Support for all MEPs as consumers or providers
* SSL support
* WS-Security support
h4. Namespace and xbean.xml
The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/http/1.0}}. This is an example of an {{xbean.xml}} file with a namespace definition with prefix {{bean}}.
{pygmentize:lang=xml}
<beans xmlns:http="http://servicemix.apache.org/http/1.0">
<!-- add http:consumer, http:soap-consumer
http:provider and http soap:provider definitions here -->
</beans>
{pygmentize}
h4. Endpoint types
The servicemix-http component defines four endpoint type:
- {{http:consumer}} :: This endpoint allows you to expose a service in the ESB to the outside world over HTTP. Whenever it receives an HTTP request, it will interact with the configured services on the ESB to provide the HTTP response.
- {{http:soap-consumer}} :: Similar to {{http:consumer}}, but specifically geared towards handing SOAP requests and responses
- {{http:provider}} :: This endpoint allows you to access remote services from within the ESB. It will perform an external HTTP request whenever it receives a JBI MessageExchange
- {{http:soap-provider}} :: Similar to {{http:provider}}, but specifically geared towards performing SOAP requests
It also provides one additional legacy endpoints, which are still available to ease migration from ServiceMix 3:
- {{http:endpoint}} :: (Deprecated) Legacy endpoint, capable to acting as a consumer or provider based on the configuration
h3. {{http:endpoint}}
h4. Endpoint properties
{include:jbi/components/_servicemix-http-endpoint.conf}
h3. {{http:consumer}}
h4. Endpoint properties
{include:jbi/components/_servicemix-http-consumer.conf}
h3. {{http:provider}}
h4. Endpoint properties
{include:jbi/components/_servicemix-http-provider.conf}
h3. {{http:soap-consumer}}
h4. Endpoint properties
{include:jbi/components/_servicemix-http-soap-consumer.conf}
h3. {{http:soap-provider}}
h4. Endpoint properties
{include:jbi/components/_servicemix-http-soap-provider.conf}