OSB使用企业标准SOAP请求WebService服务

根据前章已完成的WebServices服务接入,在此基础上修改为使用标准SOAP请求模式

前题

1.1.OSB接入WebServices服务示例-OSB v12.2.1.3.0

平台参数

序号 参数
1 服务系统(名称) 01001(HR)
2 请求系统(名称) 01002(OA)
3 服务编号 01001000000001
4 请求地址 /01001000000001
5 请求名称 ps_oa_getCardStatus
6 服务名称 demo_bs_hr_getCardStatus(暂不改)
7 管道名称 pl_oa_getCardStatus

实现步骤

1、复制请求使用的wsdl

image-20210524132321520

2、创建请求Proxy

image-20210524132558511

注意:这里把“Generate Pipeline”选项去掉了,我们不需要自动建管道,使用手动来建。

image-20210524132637875

3、创建管道

选择“From Template”从标准模板生成管道

image-20210524132724415

去掉"Expose as a Proxy Service"自动生成代理的选项,后面我们进行手动设置关连

image-20210524132806156

4、设置代理与管道关联

​ 可以看到左侧ps在报错,这是由于没有设置管道的原因,这里我们还没有保存,设置了管道保存了就不会再报错了。

image-20210524132857951

5、修改管道

注:这是管道测试时所看到的变量列表,所以在这进行说明,具体管道设置对于开发人员来说可以反向进行开发。

image-20210521155728042

该图参考的pl_ear_getJobSatus管道的测试图,因为使用增值管道模块,所以定义是一样的,这里不再累述。

6、测试

image-20210524141902049

从上图可以看到,由于我的传入的参数为1,返回时的数据为没有传入one ,说明传入参数有误,这是因为在body下标准格式加了ESBRequest这一层,而原始服务的请求参数body下是没有这一层的,所以需要使用replace组件把数据提出来直接放到body下进行请求,如下所示:

image-20210524141348906

最终结果 :成功请求

image-20210524140912201

7、优化返回格式

​ 从返回格式我们可以看到返回的是原始的getCardStatus的xml格式,这里需要把返回数据转换为esb标准格式。

image-20210524142735016

image-20210524142638894

8、最终测试

管道测试

image-20210524142758449

image-20210524142935062

到此为止,标准主求报文形式请求SAOP完成

results matching ""

    No results matching ""