点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
您好专家
我有以下格式的JSON有效负载...
{ "根": { "团队":[ { " VisitFrequencyPerYear":" 0", " UPI":" 422511", " complete":" false" }, { " VisitFrequencyPerYear":" 0", " UPI":" 421802", " complete":" false" } ] } }
但是我需要以下格式:
[ { " VisitFrequencyPerYear":" 0", " UPI":" 422511", " complete":" false" }, { " VisitFrequencyPerYear":" 0", " UPI":" 421802", " complete":" false" } ]
为此,我使用了以下Groovy脚本:
导入com.sap.gateway.ip.core.customdev.util.Message; 导入java.util.HashMap; def消息processData(消息消息){ def主体= message.getBody(); body = body.substring(body.indexOf('\ n')+ 19); def json_to_str = body.substring(1,body.length()-3); message.setBody(json_to_str); 返回消息; }
但是我收到如下错误消息:
第7行错误 *** org.codehaus.groovy.runtime.InvokerInvocationException:groovy.lang.MissingMethodException:方法的无签名:java.io.ByteArrayInputStream.indexOf()适用于参数类型:(String)值:[ ] 可能的解决方案:inject(groovy.lang.Closure),findIndexOf(groovy.lang.Closure) 在com.groovyide.ExecutorService $ 1.run(ExecutorService.java:84)
有人可以建议我在这里做错了吗?
感谢您的支持。
此致
Anirban Mallick
你好Anirban,
在下面的"瑜伽回复"中添加需要做的所有猜测。
致谢,
Sriprasad Shivaram Bhat
谢谢你们两个 Yogananda Muthaiah 和 Sriprasad Shivaram Bhat 。
非常感谢您的帮助。
此致
Anirban
您好 Anirban Mallick
查看这两篇文章是否对您的问题有帮助。
https://abusinesstech .com/learn-sap-cpi-groovy-mapping-json-to-xml.html
https://int4.com/groovy-scripts -native-handling-of-json
您好 Yoganandamuthaiah a>,
感谢您的参考。 我非常接近使用以下脚本来完成所需的输出:
剩下的最后一块是从最终输出中删除JSON元素,在本例中为元素" complete"。 我尝试在每个循环中使用" return",如下所示,但这并没有从输出中删除元素:
这是我当前输出的样子...
你能建议什么吗?
再次感谢您,
Anirban
一周热门 更多>