点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)尊敬的专家, 我正在尝试使用...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)尊敬的专家, 我正在尝试使用...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
我正在尝试使用Hareesh共享的以下代码将JSON数据转换为XML。 有效
在" ESR操作映射测试"选项卡中使用fine。 但是,如果在运行时运行相同的有效负载,则会显示错误。
代码
打包com.sap.json;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
导入org.json.JSONObject;
导入com.sap.aii.mapping.api.AbstractTransformation;
导入com.sap.aii.mapping.api.StreamTransformationException;
导入com.sap.aii.mapping.api.TransformationInput;
导入com.sap.aii.mapping.api.TransformationOutput;
公共类ConvJsonXml扩展了AbstractTransformation {
公共无效变换(TransformationInput输入,TransformationOutput输出)抛出StreamTransformationException {
尝试{
字符串sourcexml =""; 字符串targetxml =""; 字符串行="";
InputStream ins = in.getInputPayload()。getInputStream();
BufferedReader br =新的BufferedReader(新的InputStreamReader(ins));
while((line = br.readLine())!= null)
sourcexml + = line +" \ n";
br.close();
JSONObject o =新的JSONObject(sourcexml);
targetxml = org.json.XML.toString(o);
targetxml ="
out.getOutputPayload()。getOutputStream()。write(targetxml.getBytes());
}
捕获(异常e){
抛出新的StreamTransformationException(e.getMessage());
}
}
}
有效载荷
{
"项目":[
{
"项目":{
"主题":"由DS Ross测试",
"文档ID":" 55DCE0A476D",
"发件人":"丽贝卡",
"发件人名称":" user1",
"日期":" 2013-02-14 11:14:40",
" ClassID":" 11"
}
},
{
"项目":{
"主题":"由Nick M测试",
" DocumentID":" 55DCE191D5E47",
"发件人":"戴夫·弗罗斯特",
"发件人名称":" user11",
"日期":" 2013-03-14 11:14:40",
" ClassID":" 11"
}
}
]
}
在"操作映射测试"选项卡中进行测试时,它没有显示错误。 但是,当从服务器接收到相同的有效负载时,它会显示映射错误
我非常感谢您提供的帮助。
此致……
我也遇到了这个问题,下面是解决方案(以防有人遇到):
在JSONObject实例之前,添加该语句。 该语句将查找'{'的第一个索引和'}'的最后一个索引,并保留子字符串。 需要加1以保持右括号。
一周热门 更多>