h2. servicemix-cxf-bc h3. Overview A JBI compliant HTTP/SOAP or JMS/SOAP binding component named servicemix-cxf-bc which use apache cxf internally. The main features are: * JBI compliant Binding Component * Usable in a lightweight mode in servicemix.xml configuration files * SOAP 1.1 and 1.2 support * MIME attachments * Support for all MEPs as consumers or providers * SSL support * WS-Security support * WS-Policy support * WS-RM support * WS-Addressing support h4. Namespace and xbean.xml The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/cxfbc/1.0}}. This is an example of an {{xbean.xml}} file with a namespace definition with prefix {{bean}}. {pygmentize:lang=xml} {pygmentize} h4. Endpoint types The servicemix-cxf-bc component defines two endpoints: - {{cxfbc:consumer}} :: a server-side cxf endpoint that will consume plain HTTP+SOAP requests and send them into the NMR to a given JBI endpoint - {{cxfbc:provider}} :: a client-side jbi endpoint which can receive requests from the NMR and send them to a given url where the service is provided h3. {{cxfbc:consumer}} h4. Endpoint properties {include:jbi/components/_servicemix-cxf-bc-consumer.conf} h3. {{cxfbc:provider}} h4. Endpoint properties {include:jbi/components/_servicemix-cxf-bc-provider.conf} h3. Examples h4. Configuring the CXF JMS Transport The ServiceMix CXF binding component also allows using the CXF JMS Transport to send and receive messages. You can use the *{{}}* element to add and configure the {{org.apache.cxf.transport.jms.JMSConfigFeature}} on the endpoint, as in the example below. {pygmentize:lang=xml} 5 test.jmstransport.text.provider false {pygmentize} The {{jms_conduit_config.xml}} file specified in the {{busCfg}} parameter, is optional and can be used to specify additional JMS transport parameters: {pygmentize:lang=xml} {pygmentize} h4. Configuring the CXF HTTP Transport In order to configure the underlying HTTP transport used by a CXF BC endpoint, you can specify an additional {{busCfg}} file as in the example below. {pygmentize:lang=xml} {pygmentize} The {{http_conduit_config.xml}} file can then specify the additional CXF configuration. Have a look at [this page|http://cxf.apache.org/docs/client-http-transport-including-ssl-support.html] for an overview of all the options supported by CXF. {pygmentize:lang=xml} {pygmentize}