Apache CXF 之 HelloWorld
介绍: Apache CXF = Celtix + XFire,Apache CXF 的前身是叫Apache CeltiXfire,现在已经正式更名为Apache CXF 了,以下简称CXF。CXF继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS全面的支持,并且提供了多种 Binding 、Data Binding、Transport 以及 Format的支持,并且可以根据实际项目的需要,采用 Code First 或者 WSDL First 来轻松地实现 Web Services 的发布和使用。一、从http://cxf.apache.org/得到CXF的jar包支持
二、创建接口“HelloWorldService.java”:
package org.yifeng.service;
public interface HelloWorldService {
String sayHi(String text);
}
三、实现接口”HelloWorldServiceImpl.java“:
package org.yifeng.service.impl;
import org.yifeng.service.HelloWorldService;
public class HelloWorldServiceImpl implements HelloWorldService {
public String sayHi(String text) {
return "欢迎 " + text +",学习Apache CXF.";
}
}
四、发布服务接口”Server.java“:
package org.yifeng.server;
import org.apache.cxf.frontend.ServerFactoryBean;
import org.yifeng.service.HelloWorldService;
import org.yifeng.service.impl.HelloWorldServiceImpl;
public class Server {
public static void main(String[] args) {
// Create our service implementation
HelloWorldServiceImpl helloWorldImpl = new HelloWorldServiceImpl();
// Create our Server
ServerFactoryBean svrFactory = new ServerFactoryBean();
svrFactory.setServiceClass(HelloWorldService.class);
svrFactory.setAddress("http://localhost:9000/Hello");
svrFactory.setServiceBean(helloWorldImpl);
svrFactory.create();
}
}
五、创建Client,访问服务接口“Client.java”:
package org.yifeng.client;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
import org.yifeng.service.HelloWorldService;
public class Client {
public static void main(String[] args) {
ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
factory.setServiceClass(HelloWorldService.class);
factory.setAddress("http://localhost:9000/Hello");
HelloWorldService client = (HelloWorldService) factory.create();
System.out.println(client.sayHi("周大庆"));
}
}
六、结果:
欢迎,周大庆 学习Apache CXF.
呵呵,简单吧,这就是WebService ,希望能给入门的朋友提供帮助。
页:
[1]