Illustration einer tropischen Insel mit Palmen und einem hohen Berg

Java Blog für Programmierer

XFire + JSR 181 Annotations + Jetty = Simple Web-Service

· Christian Ullenboom

package xfire;import javax.jws.WebMethod;import javax.jws.WebService;@WebService( serviceName = "GreeterService" )public class GreeterService{ @WebMethod public String greet( Person p ) {   return "Hello " + p.getName() + "!"; }}package xfire;public class Person{ private String name; public Person() { } public Person( String name ) {   this.name = name; } public String getName() {   return name; } public void setName( String name ) {   this.name = name; } }package xfire;import org.codehaus.xfire.XFire;import org.codehaus.xfire.XFireFactory;import org.codehaus.xfire.annotations.AnnotationServiceFactory;import org.codehaus.xfire.annotations.jsr181.Jsr181WebAnnotations;import org.codehaus.xfire.server.http.XFireHttpServer;import org.codehaus.xfire.service.Service;public class ServiceServer{ public static void main( String[] args ) throws Exception {   XFire xfire = XFireFactory.newInstance().getXFire();   AnnotationServiceFactory factory = new AnnotationServiceFactory(       new Jsr181WebAnnotations(),       xfire.getTransportManager() );   Service service = factory.create( GreeterService.class );   xfire.getServiceRegistry().register( service );   new XFireHttpServer().start();   // http://localhost:8081/GreeterService?wsdl }}package xfire;import java.net.MalformedURLException;import org.codehaus.xfire.client.XFireProxyFactory;import org.codehaus.xfire.service.Service;import org.codehaus.xfire.service.binding.ObjectServiceFactory;public class ServiceClient{ public static void main( String[] args ) throws MalformedURLException {   ObjectServiceFactory serviceFactory = new ObjectServiceFactory();   Service serviceModel = serviceFactory.create( GreeterService.class );   GreeterService service = (GreeterService)        new XFireProxyFactory().create( serviceModel,                "http://localhost:8081/GreeterService" );   String s = service.greet( new Person( "Ulli" ) );   System.out.println( s ); }}

Kategorien: Open Source

← Alle Beiträge