Java6上开发WebService

最近在研究java开发webservice , 经过在网上查询资料后,自己也尝试了下,以下是我的简单例子!

我的环境是jdk1.6+myEclipse6.5

1. 首先创建Java Project,并构建好项目的包目录,如下图

 

 
2. 然后创建webservice 服务端的类 :Java6WebService.java
package com.edison.ws;

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

@WebService
public class Java6WebService {
    
    /**
     * @param args
     */
    public static void main(String[] args) {
        
        String url="http://localhost:8080/AxisWS/com.edison.ws.Java6WebService"; 
        Endpoint.publish(url,new Java6WebService()); 
    }
    
    public String SayHello(){
        return "Hello, this is a webservice application!";
    }

}

 

3. 运行Java6WebService.java 类. 控制台信息如下:

该类运行后,不要关闭,保持运行状态
 

 打开浏览器,输入地址:http://localhost:8080/AxisWS/com.edison.ws.Java6WebService?wsdl  ,得到如下信息:

  
 
4. 调用服务,Java 6 提供了生成webservice的客户端代码工具。
    注意,生产客户端代码需要保持服务端正常运行状态。
    dos命令行进入 项目的src 目录,然后执行以下命令
    wsimport –p com.edison.wsclient –keep http://localhost:8080/AxisWS/com.edison.ws.Java6WebService?wsdl
  
 
此时,项目已经自动生成了客户端代码。刷新项目得到如下目录结构:
 
客户端代码自动生成后不需要修改,如果服务端代码有修改,可以按照这个命令方式生产客户端代码。
到此, 客户端代码生成结束。
 
5. 编写测试类 RunTest.java
 
package com.edison;

import com.edison.wsclient.Java6WebService;
import com.edison.wsclient.Java6WebServiceService;

public class RunTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         Java6WebService java6WS = new Java6WebServiceService().getJava6WebServicePort(); 
         String returnContent = java6WS.sayHello();   
         System.out.println(returnContent); 
    }

}

 

 运行 RunTest.java 得到以下结果:
 
如运行RunTest.java 没反应,请重新启动服务端,再执行测试类!
到此,java 6 webservice的例子 完成!
 
 
 
posted @ 2013-05-16 17:18  Chendisheng  阅读(172)  评论(0编辑  收藏  举报