OSB学习(实现json->json)
如何实现接收数据为json,响应数据也为json
一般情况下,我们开发接口的目的会频繁涉及到json和xml的转换
所以我们可以在上一个接口开发的基础上,继续进行开发,以实现输入的是json然后传出来的也是json
开发之前我们先来研究一下之前接口PL的结构
我们之前开发接口只是在调用BS之前的操作
而我们当我们需要json格式的数据的时候,
就表示我们需要在调用之后,把返回的响应值转换成json格式的数据
所以此时我们就需要对Response Action来进行操作啦
与之前的步骤是一样的
1、添加assign组件
需要注意的是这里的value设置时
写的不是$body/text()
这个在这里时不管用的
需要写成$body/*[1]
或者时直接写$body
这两个也是不一样的,直接写会包含表头的body节点,而另一个则不包含
我这里因为不需要这个body节点,所以就这样写了
这样我们就获取到了一个xml对象
2、再添加一个assign组件
用来把获取到的xml对象反序列成xml数据
就像我们之前序列化对象的操作是一样的
3、添加一个java组件,调用方法,把xml转换成json数据
4、替换最终返回的结果为json数据
5、测试
请求数据
{
"dbs:DBSelectBSSelect_emplIdInputParameters": {
"xmlns:dbs": "http://xmlns.oracle.com/pcbpel/adapter/db/top/DBSelectBS",
"dbs:emplId": "11"
}
}
测试通过
我们可以去查看这里的调用过程,可以看到是完整的,由上到下的一个过程
同样在这里也有体现
这里的过程也是完整的
如果哪里报错了,就去看一下是不是有些属性是写错的
或者说是不是替换了整个节点
好啦,这样我们就完成了json----->json的接口开发啦。