如何在waqs中发布soap web service
来源:互联网 发布:归并排序java运用 编辑:程序博客网 时间:2024/06/06 09:26
一、首先创建一个wsdl文件
1、打开eclipse开发工具,创建一个的java工程
2、在工程中创建一个wsdl文件
3、更改红圈内的属性地址为:
http://localhost:8080/om-waqs/ExcuteTransSoap?trans=waqs-plugins\waqs-integration\service\soap\action.ktr,这个地址是这个web service的处理地址,后面会讲如何创建这个KTR
4、根据实际业务,继续定义input,output的消息结构,此处请查看相关资料。至此,wsdl就定义完成了,保存此文件,留在后面使用。
二、创建一个waqs的soap的wsdl服务
1、打开om-spoon,创建一个服务转换,起名为wsdl.ktr,并创建以下三个步骤,第一步为起始生成记录,注意限制只有1条数据。
2、创建一个javascirpt节点
//定义一个xml对象soap
var soap=new XML();
//将wsdl内容赋给soap
soap=<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.example.org/testwsdl/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="testwsdl" targetNamespace="http://www.example.org/testwsdl/">
<wsdl:types>
<xsd:schema targetNamespace="http://www.example.org/testwsdl/">
<xsd:element name="NewOperation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="in" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="NewOperationResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="out" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="NewOperationRequest">
<wsdl:part element="tns:NewOperation" name="parameters"/>
</wsdl:message>
<wsdl:message name="NewOperationResponse">
<wsdl:part element="tns:NewOperationResponse" name="parameters"/>
</wsdl:message>
<wsdl:portType name="testwsdl">
<wsdl:operation name="NewOperation">
<wsdl:input message="tns:NewOperationRequest"/>
<wsdl:output message="tns:NewOperationResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="testwsdlSOAP" type="tns:testwsdl">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="NewOperation">
<soap:operation soapAction="http://www.example.org/testwsdl/NewOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="testwsdl">
<wsdl:port binding="tns:testwsdlSOAP" name="testwsdlSOAP">
<soap:address location="http://localhost:8080/om-waqs/ExcuteTransSoap?trans=waqs-plugins\waqs-integration\service\soap\action.ktr"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>;
//将soap转为字符串输出
var soapstr = soap.toXMLString();
将soapstr串输出:
3、创建文本输出节点,选择servlet选择框
三、创建soap处理服务,起名为action.ktr,即第一部份中,http://localhost:8080/om-waqs/ExcuteTransSoap?trans=waqs-plugins\waqs-integration\service\soap\action.ktr,这个地址对应的服务,实际的执行处理服务
1、创建获取变量步骤,定义一个转换内字段为soap,变值名必须为${soap},此处是waqs平台由ExcuteTransSoap中定义的名称,不能改变
2、创建处理soap请求的javascript步骤
3、创建返回响应的javascript步骤
4、创建文本输出响应,将组拼的responseXML串返回
注:waqs平台暂时没有对wsdl的输入输出结构的解析能力,这里需要借助第三方工具,对荐soapUI来实现:
1、创建一个soapUI工程
2、输入wsdl文件地址,选中红框的选项
wsdl地址中,不能使用\,必须通过urlEncode转义成%5C,示例:
http://localhost:8080/om-waqs/ExcuteTransSoap?trans=waqs-plugins%5Cwaqs-integration%5Cservice%5Csoap%5Cwsdl.ktr
3、点击request1和response1可得到请求及响应的消息结构
- 如何在waqs中发布soap web service
- 如何在waqs中调用soap web service
- waqs如何在服务转换中使用事务
- 在C++中使用soap toolkit访问Web Service
- 在web service 中的android调用soap
- 在axis中利用WSDL发布WEB SERVICE
- CXF实战之在Tomcat中发布Web Service(二)
- 基于Maven在Spring中集成CXF,发布Web Service
- 基于Maven在Spring中集成CXF,发布Web Service
- 在SOAP UI中Mock Restful Service
- Web Service Soap认证
- SOAP&Web Service
- WSDL & SOAP & Web Service
- SOAP and Web Service
- Web-Service-SOAP&WSDL
- Web Service 之 SOAP
- Web Service 之SOAP
- waqs应用如何安装
- iOS编程:学习篇(二)
- DynamicsAX开发中的各种陷阱(持续更新中。。。)
- 约瑟夫环的推导
- Python编写带参数decorator
- python抓京东手机数据
- 如何在waqs中发布soap web service
- 详解字符数字转换 atoi 与 strtol
- sql 高性能存储过程分页
- elipse中清理项目后R文件消失了
- OC坑集: ARC单例模式
- 稀疏(sparsity)矩阵的行压缩存储
- 离散点最小(凸)包围边界查找
- 【Hadoop基础】hadoop fs 命令
- 搭建eclipse+maven+scala-ide的scala web开发环境