Endpoints being deployed using the FUSE Services Framework binding component are packaged into a service unit. The service unit will container the WSDL document defining the endpoint's interface and a configuration file that sets-up the endpoint's runtime behavior.
A service unit that configures the FUSE Services Framework binding component will contain the following artifacts:
xbean.xmlThe xbean.xml file contains the XML configuration for the endpoint defined by the service unit. The contents of this file are the focus of this guide.
![]() | Note |
|---|---|
The service unit can define more than one endpoint. |
The WSDL file defines the endpoint the interface exposes.
The Spring configuration file contains configuration for the FUSE Services Framework runtime.
meta-inf/jbi.xmlThe jbi.xml file is the JBI descriptor for the service unit. Example 8.1 shows a JBI descriptor for a FUSE Services Framework binding component service unit.
Example 8.1. JBI Descriptor for a FUSE Services Framework Binding Component Service Unit
<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0"> <services binding-component="false" /> </jbi>
For information on using the Maven tooling to package endpoints into a JBI service unit see Appendix C:
You can package FUSE Services Framework binding component endpoints in an OSGi bundle. To do so you need to make two minor changes:
you will need to include an OSGi bundle manifest in the META-INF folder of the bundle.
You need to add the following to your service unit's configuration file:
<bean class="org.apache.servicemix.common.osgi.EndpointExporter" />
![]() | Important |
|---|---|
When you deploy FUSE Services Framework binding component endpoints in an OSGi bundle, the resulting endpoints are deployed as a JBI service unit. |
For more information on using the OSGi packaging see Appendix D.
The elements used to configure FUSE Services Framework binding component endpoints are defined in the http://servicemix.apache.org/cxfbc/1.0 namespace. You will need to add a namespace declaration similar to the one in Example 8.2 to your xbeans.xml file's beans element.
Example 8.2. Namespace Declaration for Using FUSE Services Framework Binding Component Endpoints
<beans ...
xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
... >
...
</beans>In addition, you need to add the schema location to the Spring beans element's xsi:schemaLocation as shown in Example 8.3.
Example 8.3. Schema Location for Using FUSE Services Framework Binding Component Endpoints
<beans ...
xsi:schemaLocation="...
http://servicemix.apache.org/cxfbc/1.0 http://servicemix.apache.org/cxfbc/1.0/servicemix-cxfbc.xsd
...">
...
</beans>