WebService入门实例

一.创建两个Java工程,一个做为webservice的服务端,一个做为webservice的客户端。



二.在WSService工程中,编写service端,如下所示

package com.webservice.service;

import javax.jws.WebService;
import javax.xml.ws.Endpoint;

/*
 * @WebService注解
 * 	标注该类为webservice的服务端
 */
@WebService
public class HelloService {
	
	/*
	 * 一个service类,必须有一个能够被调用的方法
	 * 该方法不能是static和finally
	 */
	public String say(){
		return "hello world!!";
	}
	
	public static void main(String[] args) {
                /*
		 * 参数1:服务地址
		 * 参数2:服务类
		 */
		Endpoint.publish("http://127.0.0.1:1234/wsservice/hello", new HelloService());
	}
}

        点击运行,效果如下。


        
此时webservice的服务端已经准备就绪,只等待客户端来调用了。为了让客户端能够使用服务端,还要做一些准备工作,首先我们要知道wsdl是什么东东,在浏览器中输入我们之前定义的服务地址,如下图所示:


        
 这就是生成的esdl,其实就是使用说明书而已,使用情况我们在客户端代码中体现。

 

三.在cmd中输入命令:wsimport -s . http://127.0.0.1:1234/wsservice/hello?wsdl,生成客户端能够使用的代码。


        由于D:\devEnv\eclipse\workspace\WSClient\src正好是客户端WSClient工程的代码目录,所以刷新WSClient工程,将会看到如下生成的java文件。


四.编写客户端代码

package com.webservice.client;  
  
import com.webservice.service.HelloService;  
import com.webservice.service.HelloServiceService;  
  
public class HelloClient {  
  
    public static void main(String[] args) {  
          
        /* 
         * WSDL文件中: 
         *  <service name="HelloServiceService"> 
         * 得出 
         */  
        HelloServiceService hss = new HelloServiceService();  
        
        /* 
         * WSDL文件中: 
         *  <port name="HelloServicePort" binding="tns:HelloServicePortBinding"> 
         * 得出 
         */  
        HelloService hs = hss.getHelloServicePort();
        String s = hs.say();  
        System.out.println(s);  
    }
}

        运行客户端代码,输出“hello world!!”,如下所示。



文章来源:http://hejiawangjava.iteye.com/blog/2232918

猜你喜欢

转载自bijian1013.iteye.com/blog/2233140
今日推荐