将SOAP查找响应xml字符串中的某些字段传递给UDF中目标结构中的某些字段

2020-09-25 07:21发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

在我的场景中,我必须使用肥皂查询来调用Web服务,并将查询响应中的某些字段传递给目标结构中的某些字段。

我能够使用soap查找作为xml字符串来获取响应,但是我被困在使用结果列表将几个字段从响应xml传递到目标结构的过程中。 您能否指导我如何将字段从响应xml传递到目标结构。

 AbstractTrace跟踪= container.getTrace();
 StringBuilder响应= new StringBuilder();
 尝试{
   Channel channel = LookupService.getChannel(" Comm Component"," Communication Channel");
   SystemAccessor访问器= LookupService.getSystemAccessor(channel);
 /*使用InputParameters构造SOAP请求消息。*/
   字符串SOAPxml ="输入消息到肥皂查询";
   trace.addInfo(SOAPxml);
   InputStream inputStream =新的ByteArrayInputStream(SOAPxml.getBytes());
   XmlPayload有效负载= LookupService.getXmlPayload(inputStream);
   Payload SOAPOutPayload = null;
    SOAPOutPayload = accessor.call(payload);
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(SOAPOutPayload.getContent()));
                字符串行="";
         而(行!= null){
             response.append(line);
             行= bufferedReader.readLine();
 trace.addInfo(response.toString());
         }
 }
      
 抓住(例外e){
     trace.addWarning(" Error" + e);
 }
   返回response.toString(); 

请提供您的输入。

谢谢

 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

在我的场景中,我必须使用肥皂查询来调用Web服务,并将查询响应中的某些字段传递给目标结构中的某些字段。

我能够使用soap查找作为xml字符串来获取响应,但是我被困在使用结果列表将几个字段从响应xml传递到目标结构的过程中。 您能否指导我如何将字段从响应xml传递到目标结构。

 AbstractTrace跟踪= container.getTrace();
 StringBuilder响应= new StringBuilder();
 尝试{
   Channel channel = LookupService.getChannel(" Comm Component"," Communication Channel");
   SystemAccessor访问器= LookupService.getSystemAccessor(channel);
 /*使用InputParameters构造SOAP请求消息。*/
   字符串SOAPxml ="输入消息到肥皂查询";
   trace.addInfo(SOAPxml);
   InputStream inputStream =新的ByteArrayInputStream(SOAPxml.getBytes());
   XmlPayload有效负载= LookupService.getXmlPayload(inputStream);
   Payload SOAPOutPayload = null;
    SOAPOutPayload = accessor.call(payload);
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(SOAPOutPayload.getContent()));
                字符串行="";
         而(行!= null){
             response.append(line);
             行= bufferedReader.readLine();
 trace.addInfo(response.toString());
         }
 }
      
 抓住(例外e){
     trace.addWarning(" Error" + e);
 }
   返回response.toString(); 

请提供您的输入。

谢谢

 
付费偷看设置
发送
2条回答
愤怒的猪头君
1楼 · 2020-09-25 08:08.采纳回答

大家好,

我不得不从UDF中选择特定元素,并仅在此之下取值。我能够实现我的要求。

在下面的代码中用于解析输出中的xml。

 NodeList列表= document.getElementsByTagName(" element");
//if(list!= null)
 对于(int i = 0; i   
callcenter油条
2楼-- · 2020-09-25 08:25

嗨,Laxmi,

您需要解析响应XML,并检索XML字段的值,然后将其映射到目标。 请参阅下面的内容。

https://answers.sap.com/questions/222306/map-the-decompressed-field-which-returns-an-xml-to.html?childToView=222927#answer-222927

https://archive.sap.com/discussions/thread/1978579

-Priyanka

一周热门 更多>