|
Page Edited :
CXF20DOC :
How do I develop a service?
How do I develop a service? has been edited by Christian Schneider (Jul 31, 2007). Change summary: Added link to JAX-WS annotations API on Sun site CXF provides you with many options to build services. This guide is meant to give you a quick overview of those options and help you orient yourself quickly with CXF. JAX-WS Annotated Services from JavaThe JAX-WS APIs include a set of annotations Here's a simple example: @WebService public class Hello { public String sayHi(String name) { return "Hello " + name; } }
Data is marshalled from XML to Java and vice versa via the JAXB data-binding. Services are publish via one of two means:
More Information: A simple JAX-WS service, Developing a JAX-WS Service (goes into much more depth), Writing a service with Spring JAX-WS Annotated Services from WSDLIf you have existing WSDLs for your service or wish to write your WSDL first and then generate classes, CXF has many tools to help you do this. The WSDL2Java tool will generate a JAX-WS annotated service and server stub from your WSDL. You can run it one of three ways:
JAX-WS ProvidersJAX-WS Providers allow you to create services which work at the message level - as opposed to the operation level as with annotated classes. The have a single operation "invoke" which receives either the message payload (i.e. the SOAP Body) or the whole message itself (i.e. the SOAP Envelope). Here's a simple example: @WebServiceProvider public class HelloProvider { public Source invoke(Source request) { return ....; } } Services are publish via one of two means:
More Information: Developing a JAX-WS Service Simple FrontendSometimes you don't want to annotate classes or use the JAX-WS APIs. CXF includes a Simple Frontend which allows you to take nearly any class and make a service out of it with absolutely no extra work. This is great for those services which are simple or are quick prototypes. CXF uses the JAXB databinding as the default, but you can use the Aegis Services are publish via one of two means:
_javascript_CXF provides a _javascript_ module which allows you to build services in _javascript_ with the Java Rhino library. One advantage of this is that you can use E4X to interact more easily with the XML. For more information see the _javascript_ page. |
Unsubscribe or edit your notifications preferences
