Webservice测试从头来

一、写WebService

  建立java project

  建立数据类包 com.parameters.zz

    新建Person类     

package com.parameters.zz;

public class Person {
    private String name;
    private String sex;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }

}
View Code

  新建服务类包 com.service.zz

    新建暴露接口类 ISayHello

      

package com.service.zz;

import javax.jws.WebService;

import com.parameters.zz.Person;

@WebService
public class ISayHello {
    private static final String SALUTATION = "Hello,";
    
    public String getGreeting(Person p) {
        String word="";
        if(null!=p.getName()&&""!=p.getName().trim()){
            if(null!=p.getSex()){
                if("male".equalsIgnoreCase(p.getSex())){
                    word=SALUTATION+"Mr."+p.getName();
                }
                else
                    word=SALUTATION+"Miss."+p.getName();
            }
        }    
        return word;
    } 
}
View Code

    新建启动该服务类 ISayHelloService

package com.service.zz;

import javax.xml.ws.Endpoint;

public class ServiceRunning {

    public static void main(String[] args) {
        System.out.println("SayHello Web Service started.......");
        Endpoint.publish("http://localhost:8098/ISayHelloService",
                new ISayHello());
    }
}
View Code

  新建配置文件build.xml

    

<?xml version="1.0" encoding="UTF-8"?>
<project default="wsgen">      
    <target name="wsgen">  
        <exec executable="wsgen">              
            <arg line="-cp ./bin -keep -s ./src -d ./bin 
                    com.service.zz.ISayHello"/> 
        </exec> 
    </target> 
</project>     
View Code

  整个项目路径如题: 

  

  1.2 右键build.xml ,debug as “ant build”(alt+shift+d,q)

  1.3 打开javaee视图,打开wsdl视图

    

至此,Webservice发布成功,地址为 http://localhost:8098/ISayHelloService?wsdl

二、新建测试类

  1.下载cxf2.2.8,并设置好环境变量

    

  2.进入dos,用cxf生成客户端

    命令: wsdl2java –d . http://localhost:8098/ISayHelloService?wsdl  注意空格和“.”

    

    3.用Eclipse新建java project ,在src下导入wsdl生成的客户端

    

  4.编写测试代码:

    

测试代码如果编译通不过,可以换用JAXBElement

  如

Person p = new Person();
        JAXBElement<String> name = new JAXBElement<String>(new QName("http://service.com", "name"), String.class, "George");
        JAXBElement<String> sex = new JAXBElement<String>(new QName("http://service.com", "sex"), String.class, "male");
        p.setName(name);
        p.setSex(sex);
View Code

  

演示完毕,欢迎转载:lenfengzhizhe,手边星辰 

http://www.cnblogs.com/lengfengzhizhe/p/4218207.html

  

原文地址:https://www.cnblogs.com/shoubianxingchen/p/4218207.html