PI-将Rest字符串响应转换为XML

2020-09-04 14:48发布

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

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


嗨,

请我需要一些帮助。 我正在使用PI 7.40读取非SAP应用程序提供的Web服务。 我刚刚开始了解PI概念。 确实,这是我的第一个界面...

这是从外部系统返回的响应消息。

'<<字符串xmlns =" UBgyecWNcsNLEK1RFwhl%2fECTdHvvWf4JEwTlqES6WI0%3d&se = 1564834465&skn = SAPSharedAccessKey 2019-08-03T12:14:24 http://schemas.microsoft.com/2003/10/Serialization/"> UBgyecWNcsNLEK1RFwhl%2fECTdHvvWf4JEwTlqES6WI0%3d&se = 1564834465&skn = SAPSharedAccessKey 2019-08-03T12:14:24 >'

我想将上面的字符串转换为:

请。 我该怎么做?

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

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


嗨,

请我需要一些帮助。 我正在使用PI 7.40读取非SAP应用程序提供的Web服务。 我刚刚开始了解PI概念。 确实,这是我的第一个界面...

这是从外部系统返回的响应消息。

'<<字符串xmlns =" UBgyecWNcsNLEK1RFwhl%2fECTdHvvWf4JEwTlqES6WI0%3d&se = 1564834465&skn = SAPSharedAccessKey 2019-08-03T12:14:24 http://schemas.microsoft.com/2003/10/Serialization/"> UBgyecWNcsNLEK1RFwhl%2fECTdHvvWf4JEwTlqES6WI0%3d&se = 1564834465&skn = SAPSharedAccessKey 2019-08-03T12:14:24 >'

我想将上面的字符串转换为:

请。 我该怎么做?

付费偷看设置
发送
4条回答
能不能别闹
1楼-- · 2020-09-04 15:38

你好Naveen,

让我重新制定。 有些字符未按预期显示。

这是我当前的回复。

<'字符串'xmlns =" http://schemas.microsoft。 com/2003/10/Serialization /"> <'TResponse> <'SAS>内容测试<'ExpirationDate> 2019-08-03T12:14:24 <'/ExpirationDate> <'/TResponse>

<'/string>

预期的返回类型应与此类似:

<'TResponse>

<'SAS>内容测试

<'ExpirationDate> 2019-08-03T12:14:24 <'/ExpirationDate>

<'/TResponse>

字符""仅显示所有标签。

N-Moskvin
2楼-- · 2020-09-04 15:48

你好,布鲁诺,

需要在输出结构字段中提及响应消息中的什么值和所有值,这意味着在SAS字段和"到期日期"字段中。 (究竟是什么值)

感谢Naveen

南山jay
3楼-- · 2020-09-04 15:41

您好布鲁诺

请在java映射下使用此命令以获得预期的结果。

 import java.io.FileInputStream;
 导入java.io.FileNotFoundException;
 导入java.io.FileOutputStream;
 导入java.io.IOException;
 导入java.io.InputStream;
 导入java.io.OutputStream;
 导入javax.xml.parsers.DocumentBuilder;
 导入javax.xml.parsers.DocumentBuilderFactory;
 导入javax.xml.parsers.ParserConfigurationException;
 导入javax.xml.transform.Transformer;
 导入javax.xml.transform.TransformerConfigurationException;
 导入javax.xml.transform.TransformerException;
 导入javax.xml.transform.TransformerFactory;
 导入javax.xml.transform.dom.DOMSource;
 导入javax.xml.transform.stream.StreamResult;
 导入org.w3c.dom.Document;
 导入org.w3c.dom.Element;
 导入org.w3c.dom.Node;
 导入org.w3c.dom.NodeList;
 导入org.xml.sax.SAXException;
 导入com.sap.aii.mapping.api.AbstractTransformation;
 导入com.sap.aii.mapping.api.StreamTransformationException;
 导入com.sap.aii.mapping.api.TransformationInput;
 导入com.sap.aii.mapping.api.TransformationOutput;
 公共类RemoveUnwantedTag扩展AbstractTransformation {
/**
  * @参数args
  * @throws ParserConfigurationException
  * @抛出IOException
  * @抛出SAXException
  * @throws TransformerException
  */
 公共无效execute(InputStream in,OutputStream out)抛出StreamTransformationException,ParserConfigurationException,SAXException,IOException,TransformerException
 {
         TransformerFactory tf = TransformerFactory.newInstance();
         变压器transform = tf.newTransformer();
         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
         DocumentBuilder builderel = factory.newDocumentBuilder();
         DocumentBuilder builderel1 = factory.newDocumentBuilder();
       /*以XML形式输入文件*/
         文档docIn = builderel.parse(in);
         文档docOut = builderel1.newDocument();
         NodeList listOfChildNodes = docIn.getDocumentElement()。getChildNodes();
         for(int i = 0; i  

输入XML

------------

 <?xml version =" 1.0"?>
 -
 -<响应>
 内容测试
  2019-08-03T12:14:24 
 
 
 

输出XML

-----------

 <?xml版本=" 1.0"编码=" UTF-8"?  >
 -<响应>
 内容测试
  2019-08-03T12:14:24 
  

如果遇到任何问题,请告诉我。

致谢

Anupam

渐行渐远_HoldOn
4楼-- · 2020-09-04 15:24

您好 阿努帕姆·戈什(

负责应用程序的开发人员刚刚重构了API。

现在返回所有标签,不再以字符串形式返回。

测试

2019-08-06T16:30:30

感谢您的时间和帮助。

一周热门 更多>