如何在WSO2 Integration Studio 8.1.0中使用Call Mediator调用带WSDL的SOAP服务端点
在WSO2 Integration Studio 8.1.0中用Call Mediator调用带WSDL的SOAP服务流程
1. 导入目标SOAP服务的WSDL
- 打开WSO2 Integration Studio,新建或打开一个ESB项目
- 右键项目 →
New→WSDL File,选择「Import an existing WSDL」,选中你的WSDL文件完成导入 - 导入后工具会自动生成服务结构相关的元数据,后续可直接基于这些元数据配置端点和请求
2. 创建并配置SOAP端点
- 进入项目的
Endpoint目录,右键 →New→Endpoint - 选择「Create a new Endpoint using WSDL」,选中刚导入的WSDL,指定对应的服务和端口
- 确认端点的实际调用地址,保存端点(建议命名为如
TargetSOAPEndpoint)
3. 在Sequence中配置Call Mediator
- 新建或打开一个Sequence(比如
CallSOAPServiceSeq) - 从右侧Mediator面板拖拽Call Mediator到序列画布中
- 双击Call Mediator,在配置界面选择「Endpoint」,关联刚才创建的
TargetSOAPEndpoint - 如果需要构造自定义请求体,在Call Mediator前添加
PayloadFactory Mediator,按照WSDL定义的报文格式构造请求,示例:<payloadFactory media-type="xml"> <format> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://your-service-namespace"> <soapenv:Header/> <soapenv:Body> <ser:YourServiceOperation> <ser:param1>$1</ser:param1> <ser:param2>$2</ser:param2> </ser:YourServiceOperation> </soapenv:Body> </soapenv:Envelope> </format> <args> <arg evaluator="xml" expression="$ctx:param1"/> <arg evaluator="xml" expression="$ctx:param2"/> </args> </payloadFactory> - 保持Call Mediator的「Blocking」选项勾选(默认开启,对应同步调用模式)
4. 处理SOAP响应(可选)
- 在Call Mediator后添加
Log Mediator或XSLT Mediator,用于解析或打印响应内容,示例Log配置:<log level="full" category="INFO" message="SOAP Service Response"/>
5. 部署并测试
- 将配置好的Sequence关联到代理服务或API中(比如新建代理服务,指定In Sequence为
CallSOAPServiceSeq) - 启动Micro Integrator服务器,部署项目
- 使用SOAPUI、Postman等工具向代理服务地址发送请求,验证是否成功调用目标SOAP服务并返回正确响应
内容的提问来源于stack exchange,提问作者Ahmet Kalem
相关产品推荐
相关产品推荐

