OSB中使用XSL Map 映射REST服务字段
需求
前两章我们已经接入服务 1.2.OSB接入REST服务示例 -OSB v12.2.1.3.0和1.7.OSB使用企业标准SOAP请求REST服务,在这基础上,我们仅实现请求json参数返回json 和请坟json返回xml,也就是说基础没有改变请求的格式,但在实际的需求中可能存在请求{"a":1},而实际服务需要的是{"b":1},这就需要使用到xsl map映射功能
前题
本章节是在1.7.OSB使用企业标准SOAP请求REST服务基础上进一步优化进行演示。
| 现状态 | 转换目标 | |
|---|---|---|
| 请求参数 | {"personId":"2"} | {"employeeId":"2"} |
| 返回参数 | {"Status":"Input param is one"} | |
实现步骤
1、整理原始请求参数转xsd
通过了解需求我们整理请求参数为person的参数和服务要求请求的参数request并形成json文件,如下图

2、生成相应的xsd文件
在xsd目录右建->新建-> from gallery



2、整理服务请求所需参参转xsd
一样,在目录右建,新建xsd ,由于服务所需的是json所在这里选该选项,使用向导进行创建。

使用向导创建xsd文件

使用json文件进行格式化


两个xsd文件生成后效果

3、进行映射
在Resources下新建XSLT目录,专门存放映射文件,在目录下右建-xsl map


形成图形界面后,在界面中进行拖动映射

4、修改管道
修改管道,新建变量formatjson2xml,把映射后的数据展示出来

测试formatjson2xml转换成功没有

这里可以看到我们映射成功了,只是目前的问题是formatjson2xml的格式为xml格式,所以下一步把数据 转为json向路邮方转入即可
5、转换参数并传向路由
转换参数为json

使用xml2json参数替换到body中,向路由发送请求

6、测试
