云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

负载均衡_腾讯云搭建ss_稳定性好

小七 141 0

各位专家,您好,

我已经阅读了很多关于使用Java映射执行REST查找的博客文章,但是我觉得如果我们可以使用UDF实现REST查找,那会很有帮助。因此,我尝试在博客上写一个我使用REST-Look-up使用自定义项的场景。

场景:我们有一个场景,大数据分析工具有哪些,在目标系统中必须检查字段"Code"值是否存在。基于它的存在,如果它存在,我必须传递值"True",购物返现网,否则我必须在自定义项中传递"False"。

步骤1:创建一个使用REST适配器进行查找的接收器通信通道。

通信通道:CC\u LookupChannel\u REST

创建一个消息类型以通过查找通道接收响应消息,并在元素名称及其命名空间中分别分配消息类型。

步骤2:根据需要创建消息映射并传递将必需的源字段作为输入添加到自定义项中。在我的例子中,我已经将值ID、业务组件和查找通道名称作为输入传递给UDF。

步骤3:使用下面的代码在消息映射中创建UDF。

在这里,我将业务组件和查找通道作为输入传递给使用参数化映射传递的输入。

参数化映射值:

以下参数化值将从ICO/IFLOW传递。

查找通道名称(ChannelName):CC\u LookupChannel\u REST

业务组件:BC\u Target

代码:

public void RESTLookup(String[]var1,String[]BusinessComponent,String[]ChannelName,ResultList result,容器)抛出StreamTransformationException{

AbstractTrace=容器.getTrace();串絮体="";试试{

频道=查找服务.getChannel(BusinessComponent[0],企业应用系统,ChannelName[0]);

SystemAccessor accessor=LookupService。getSystemAccessor(channel);

//查找服务xml

String RestXML=""+var1[0]+"";

InputStream InputStream=new ByteArrayInputStream(RestXML.getBytes文件());

XmlPayload有效载荷=LookupService.getXmlPayload(inputStream);

负载ResOutPayLoad=null;

ResOutPayLoad=访问器.call(有效载荷);

输入流输入功率=restouptayload.getContent文件();

DocumentBuilderFactory=DocumentBuilderFactory.newInstance();

文档生成器=工厂.newDocumentBuilder();文档=生成器.parse(inps);

节点列表=document.getElementsByTagName文件("代码");节点=列表项(0);如果(节点!=空){//结果.附加值("正确");//絮体=节点.getNodeValue();节点=节点.getFirstChild();如果(节点!=空){絮体=节点.getNodeValue();//结果.附加值(絮状物);

}}

}捕获(例外e){}

如果(絮状物(变量1[0])){结果.附加值("正确");}其他的{结果.附加值("假");}

}

希望这会有帮助

谢谢,德国云服务器,

帕万库马尔P

参考博客:

https://blogs.sap.com/2015/09/11/yes-rest-lookup-is-possible-in-pi/

https://blogs.sap.com/2013/08/07/how-to-soap-lookup/

,服务器云