第一个webservice程序


首先我们先建一个服务端的类
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
//表示这是一个web服务
@WebService
public class HelloWebService {
	/**
	 * 2、至少保证一个可以对外公开的服务
	 * 		对外提供服务无非就是提供个方法给外部调用,如果一个服务类没有方法,那发布它是没有意义的
	 */
	public String sayHello(@WebParam(name="name") String name){
		
		
		return name;
	}
	
public static void main(String[] args) {
	/**
	 * Endpoint 服务端点类,利用该类来发布服务
	 * 参数1:服务的发布地址
	 * 参数2:服务的实现者
	 * 
	 * publish发布成功后,会启动一个新线程来监听对 http://192.168.1.102:8080/hello 这个地址的请求
	 */
	Endpoint.publish("http://192.168.1.102:8080/hello", new HelloWebService());
	
	//接着就可以查看wsdl了浏览器中打开:http://172.16.35.55:8080/hello?wsdl
			//如果正常返回就说明发布成功 so easy!
			
	System.out.println("服务已启动");
}	
}

然后我们需要下载一个工具,我这个是apache-cxf-3.0.1这个版本的,我已经上传百度云http://pan.baidu.com/s/1bpKANPd

然后我们打开DOS命令,切记先运行上面那个类,只有服务端启动了,才能自动生成客户端所需要的类文件。

然后在浏览器输入wsimport -s d:\ http://192.168.1.102:8080/hello?wsdl有说明文件wsdl出来就是对的了,记得ip改为你电脑的ip

然后在DOS输入wsimport -s d:\ http://192.168.1.102:8080/hello?wsdl有如下图就是成功了

然后在D盘找到自动生成的类,把这些类复制进你的项目中,如果有的类有错误只需要删除即可,这是版本不同造成的,不影响使用

最后附上我的App.java代码

/**
 *通过wsimport命令生成客户端代码调用Webservice服务
 *
 *命令格式 :
 *	wsimport -s d:\ http://192.168.1.109:8080/hello?wsdl
 *
 *  s:表示要生成源码
 *  d:\ 生成源码到哪个路径
 *  依据哪个wsdl文件来生成? http://192.168.1.109:8080/hello?wsdl
 *  
 *  wsimport -s  d:\ -p com.luowg.ws.wheather  WSDL地址

 */
public class App {
	public static void main(String[] args) {
		
		HelloWebServiceService hello = new HelloWebServiceService();
		
		p2.HelloWebService he = hello.getHelloWebServicePort();
		
		System.out.println(he.sayHello("杰宝宝"));
		
		
	}
}
自此第一个webservice就到此,下一篇我们将介绍如何调用天气接口


  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值