我正在使用 Mule 应用程序从另一个系统获取数据,该系统由 HTTP 端点调用,使用 java 和 jersey api 来获取其余组件。
下面给出了示例输入数据,这里的键和值不是固定的,可能会根据用户要求而有所不同。数组大小可能会增加 2 到 n 个条目。它适用于 Mule 和基于 Java 的 rest 组件。
输入 JSON 数据:
[
{
"Company": "BEG1",
"Account": "10011",
"Deptid": "111",
"Location": "SM1",
"Transaction Date": "2014-07-15",
"Description": "Invoice1",
"Debit": 0,
"Credit": 13.46,
"Invoice Nbr": "16824321"
},
{
"Company": "BEG92",
"Account": "10092",
"Deptid": "222",
"Location": "SL2",
"Transaction Date": "2014-07-19",
"Description": "Invoice End2",
"Debit": 13.46,
"Credit": 0,
"Invoice Nbr": "168243292"
}
]
计划使用 RAML 迁移到 APIkit:如何为上述案例制作 RAML 模板?由于键是动态的,这似乎并不简单。
2) 使用相同的 GET 方法,我将为我的 get 请求获取数据,我不确定密钥及其对应的值是什么,我所做的只是获取数据,解析它并将其发送给用户。在这种情况下如何创建 RAML 模板。带有 RAML 的 mule APIkit 是否可以在这里工作?
我现有的代码:
@POST
@Path("/post")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public List<GLExport> postOperation(@Payload String content) throws ParseException {
JSONParser jsonParser = new JSONParser();
Object jsonObjectInstance =null;
jsonObjectInstance = jsonParser.parse(new StringReader(content));
...
return glExportList;
<http:inbound-endpoint exchange-pattern="request-response" host="${hostname}" port="${glport}" path="QBJournalExport/QBGLRest" doc:name="HTTP"/>
<jersey:resources doc:name="REST">
<component class="com.qb.rest.GLExportService"/>
</jersey:resources>