微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Cxf开发服务与客户端

这里我是用MyEclipse写的例子

1。首先到apache的官网下载Cxf的依赖包。

2。把cxf-manifest.jar和cxf-2.4.9.jar添加进项目的LIB。

3。服务接口:

package com.cxf;

import javax.jws.WebService;

@WebService
public interface HelloSay {
		
	public String SayHello(String msg);
	
}
4。服务Impl代码

package com.cxf;

import javax.jws.WebService;

@WebService
public class HelloImpl implements HelloSay {
	//服务器端提示
	@Override
	public String SayHello(String msg) {
		System.out.println("CXF的WebService被调用。。。");
		return "Hello World" + msg;
	}
}


5.发布服务代码

package com.cxf;

import org.apache.cxf.endpoint.Server;
import org.apache.cxf.jaxws.JaxWsServerfactorybean;

public class TestService {

	public static void main(String[] args) {
		//发布WEBSERVICE的服务
		//创建服务的发布工厂
		JaxWsServerfactorybean factorybean = new JaxWsServerfactorybean();
		//在工厂中,指定要发布的服务类(服务的实现类)
		factorybean.setServiceClass(HelloImpl.class);
		//设置WEB请求的地址
		factorybean.setAddress("http://localhost:8080/HelloTest");
		//使用工厂创建具体的服务
		Server server = factorybean.create();
		//服务开始
		server.start();
	}
}
注:这里的链接
http://localhost:8080/后面的服务名随便填。
运行main,这样一个服务就建好了!
接下来可以在浏览器中输入:
http://localhost:8080/HelloTest?wsdl,如果显示XML格式的内容,说明正确了。


6。自已写客户端调用服务

package com.cxf;

import javax.jws.WebService;

import org.apache.cxf.jaxws.JaxWsProxyfactorybean;

public class TestClient {
	
	public static void main(String[] args) {
		//创建客户端的WEBSERVICE服务代理工厂
		JaxWsProxyfactorybean factorybean = new JaxWsProxyfactorybean();
		//指定要访问的WebService的地址
		factorybean.setAddress("http://localhost:8080/HelloTest");
		//指定要访问的方法类型,(方法的发布的接口)
		factorybean.setServiceClass(HelloSay.class);
		//获取指定方法
		HelloSay pic = (HelloSay)factorybean.create();
		//远程调用
		System.out.println("客户端的调用结果是:" + pic.SayHello("我是岳宜臣,这是我的测试程序!"));
	}
	
}

不多说,看注释,直接运行!

运行结果:客户端的调用结果是:Hello World我是岳宜臣,这是我的测试程序!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐