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、测试