SoapUI5.0创建WebService接口模拟服务端(转)

时间:2022-04-08 11:21:56

转载自:https://blog.csdn.net/a19881029/article/details/26348627

使用SoapUI创建WebService接口模拟服务端需要接口描述文件

MathUtil.wsdl:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://sean.com"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://sean.com"
xmlns:intf="http://sean.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<schema elementFormDefault="qualified"
targetNamespace="http://sean.com"
xmlns="http://www.w3.org/2001/XMLSchema">
<element name="add">
<complexType>
<sequence>
<element name="x" type="xsd:int"/>
<element name="y" type="xsd:int"/>
</sequence>
</complexType>
</element>
<element name="addResponse">
<complexType>
<sequence>
<element name="addReturn" type="xsd:int"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="addResponse">
<wsdl:part element="impl:addResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addRequest">
<wsdl:part element="impl:add" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="MathUtil">
<wsdl:operation name="add">
<wsdl:input message="impl:addRequest" name="addRequest">
</wsdl:input>
<wsdl:output message="impl:addResponse" name="addResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="MathUtilSoapBinding" type="impl:MathUtil">
<wsdlsoap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="add">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="addRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="addResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="MathUtilService">
<wsdl:port binding="impl:MathUtilSoapBinding" name="MathUtil">
<wsdlsoap:address
location="http://localhost:8080/webservice_create/services/MathUtil"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

通过MathUtil.wsdl文件在SoapUI中创建一个SOAP项目:

SoapUI5.0创建WebService接口模拟服务端(转)

SoapUI5.0创建WebService接口模拟服务端(转)

确认后,会在新建的SOAP项目下自动生成模拟客户端

在模拟客户端的基础上创建一个接口模拟服务端(Mock Service):

SoapUI5.0创建WebService接口模拟服务端(转)

SoapUI5.0创建WebService接口模拟服务端(转)

双击Response1可以设置接口服务端返回值:

SoapUI5.0创建WebService接口模拟服务端(转)

返回值默认为"?",一定要进行修改,否则调用该接口时会报错

AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.lang.NumberFormatException: For input string: "?"
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:java.lang.NumberFormatException: For input string: "?"

双击创建的接口模拟服务端:

SoapUI5.0创建WebService接口模拟服务端(转)

修改接口模拟服务端配置:

SoapUI5.0创建WebService接口模拟服务端(转)

SoapUI5.0创建WebService接口模拟服务端(转)

配置完成后,启动模拟服务端:

SoapUI5.0创建WebService接口模拟服务端(转)

SoapUI5.0创建WebService接口模拟服务端(转)

此时模拟服务端已经启动,可以使用了:

SoapUI5.0创建WebService接口模拟服务端(转)

SoapUI5.0创建WebService接口模拟服务端(转)