In Apache CXF, you create a WS endpoint by defining a jaxws:endpoint element
in XML. The WS endpoint is effectively the runtime representation of the Web service: it
opens an IP port to listen for SOAP/HTTP requests, is responsible for marshalling and
unmarshalling messages (making use of the generated Java stub code), and routes incoming
requests to the relevant methods on the implementor class.
In other words, creating a Web service in Spring XML consists essentially of the following two steps:
Create an instance of the implementor class, using the Spring
beanelement.Create a WS endpoint, using the
jaxws:endpointelement.
The following sample Spring file shows how to define a JAX-WS endpoint in XML, using
the jaxws:endpoint element.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xmlns:soap="http://cxf.apache.org/bindings/soap"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/bindings/soap http://cxf.apache.org/schemas/configuration/soap.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<jaxws:endpoint
xmlns:customer="http://demo.fusesource.com/wsdl/CustomerService/"
id="customerService"
address="/Customer"
serviceName="customer:CustomerService"
endpointName="customer:SOAPOverHTTP"
implementor="#customerServiceImpl">
</jaxws:endpoint>
<bean id="customerServiceImpl"
class="com.fusesource.customer.ws.CustomerServiceImpl"/>
</beans>In the preceding example, the address attribute of the
jaxws:endpoint element specifies the servlet context for this endpoint,
relative to the Jetty container in which it is deployed.
For more details about the options for specifying the endpoint address, see Address for the Jetty container.
The implementor attribute of the jaxws:endpoint element is
used to reference the implementation of the WS service. The value of this attribute can
either be the name of the implementation class or (as in this example) a bean reference in
the format, #, where the BeanID#
character indicates that the following identifier is the name of a bean in the bean
registry.








