Java6开发WebService进阶

Java6开发WebService进阶
 
在上文中,使用Java6做了一个最简单的WebService服务的实现,并通过Java6API发布了该服务。
在本文中,将看到如何使用Java6来做一个WebService服务,并如何使用Java6提供的开发工具来生成客户端代码,并调用服务。
 
一、服务端代码
package lavasoft;

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

/**
* Java6开发WebService入门
*
* @author leizhimin 2009-11-13 16:10:44
*/
@WebService
public class Java6WebService {
                 /**
                 * Web服务中的业务方法
                 *
                 * @return 一个字符串
                 */
                 public String doSomething() {    
                                 return "Hello Java6 WebService!";
                }

                 public static void main(String[] args) {
                                 //发布一个WebService
                                Endpoint.publish( "http://192.168.14.117:8080/java6ws/lavasoft.Java6WebService", new Java6WebService());
                }
}
 
在浏览器中访问WSDL: http://192.168.14.117:8080/java6ws/Java6WS?wsdl
 
 
二、生成客户端代码
 
Java6提供生成WebService客户端代码工具,注意,在生成前需要先启动服务端,用法如下图:
 
生成后的项目目录如下:
 
三、写客户端的测试类
package lavasoft;

import lavasoft.wsclient.Java6WS;
import lavasoft.wsclient.Java6WSService;

/**
* 测试Java6 WS生成的客户端代码
*
* @author leizhimin 2009-11-16 10:40:07
*/
public class TestClient {
         public static void main(String[] args) {
                 //创建一个客户端服务对象
                Java6WS java6WS = new Java6WSService().getJava6WSPort();
                 //调用服务方法,并得到方法返回值
                String returnContent = java6WS.doSomething( "zhangsan");
                 //打印服务的返回值
                System.out.println(returnContent);
        }
}
 
注意,上面导入的类全是lavasoft.wsclient包下面的。
 
运行测试类:
 
服务方法正确调用,测试成功。
 
Java6的WebService开发如此方便,我们还需要Axis2、XFire、CXF吗?敬请关注后续文章!

你可能感兴趣的:(webservice,职场,Java6,休闲)