webservice学习 wsdl文件生成服务桩及测试桩

本文介绍借助eclipse平台功能由wsdl文件生成soap服务桩代码,由soapui生成soap测试桩报文。此方案简单易用,可以快速调通流程。

一、借助Eclipse生成SOAP服务桩

1、eclipse平台新建Dynamic web project,将之前准备好的wsdl文件拷贝到工程根目录下。

2、新建web service,选“Top down Java bean Web Service”,Service definition选工程目录下的wsdl文件,service端选最高级,点击finish。如下图所示:

webservice学习 wsdl文件生成服务桩及测试桩_第1张图片

4、因为点击finish时会启动tomcat,请确保tomcat能够正常启动。

5、成功后,能看到src下生成了代码,webContent生成了wsdl文件,web.xml新增了webservice项等,如下图:

webservice学习 wsdl文件生成服务桩及测试桩_第2张图片

6、生成的代码中,我们注意一下XXXSoap11BindingImpl类,这个类是服务端接口的实现类,我们的服务逻辑是在这个类中完成的,现在我们做最简单的逻辑,只打印接收到的信息,如下代码:

package com.hy.service;

public class StudentServiceSoap11BindingImpl implements com.hy.service.StudentServicePortType{
    public void saveStudent(com.hy.bean.xsd.Student stu) throws java.rmi.RemoteException {
    	System.out.println(stu.getId());
    	System.out.println(stu.getNumber());
    	System.out.println(stu.getName());
    }


这样,wsdl文件搭建的SOAP服务桩就完成了,借助平台自动生成的类,wsdl文件等信息较多,其实这个创建过程eclipse帮忙做了很多事,但我们现在的目的是快速搭建服务桩,具体生成的文件,我们可以慢慢去研究,就不在这里讲解了。

 

二、借助SOAPUI生成SOAP测试桩

1、下载soapui软件,建议到官网下载。

2、新建工程时导入eclipse生成的wsdl文件,或是最先由axis2命令行生成的wsdl文件。

webservice学习 wsdl文件生成服务桩及测试桩_第3张图片

3、成功导入后,打开request,如下报文:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.hy.com" xmlns:xsd="http://bean.hy.com/xsd">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:saveStudent>
         <!--Optional:-->
         <ser:args0>
            <!--Optional:-->
            <xsd:id>11</xsd:id>
            <!--Optional:-->
            <xsd:name>Jetty huang</xsd:name>
            <!--Optional:-->
            <xsd:number>12001</xsd:number>
         </ser:args0>
      </ser:saveStudent>
   </soapenv:Body>
</soapenv:Envelope>

4、填写正确的访问地址(在eclipse生成的wsdl文件中的地址才是正确的,可拷贝过来使用),点击发送。

5、查看服务端控制台,看输出的信息:

webservice学习 wsdl文件生成服务桩及测试桩_第4张图片

看到此信息,说明简单的soap服务桩、测试桩已经搭建完成,基本流程已跑通。


 

你可能感兴趣的:(eclipse,webservice,SOAP)