如何访问json数据mule esb

时间:2012-12-04 13:01:38

标签: json esb mule

我想访问从同步流生成的json数据到异步流。 我正在从同步流中正确获取json数据,我想从我的json数据获取某些属性值如下:

{"data" : [{"in_timestamp":"2012-12-04","message":"hello","out_timestamp":null,"from_user":"user2","ID":43,"to_user":"user1"}]} and to user is #[json:to_user]}

我想从这个json格式访问to_user属性。 我已经尝试使用#[json:to_user]但它只是将其打印为字符串并且不返回任何值。 请帮忙。提前谢谢。

2 个答案:

答案 0 :(得分:16)

基于样本JSON的正确表达式是:

#[json:data[0]/to_user]

答案 1 :(得分:3)

JsonPath表达式现在已经过折旧,你甚至得不到足够的文件来做它。
所以,目前你需要使用: - <json:json-to-object-transformer returnClass="java.lang.Object" doc:name="JSON to Object" />
<json:json-to-object-transformer returnClass="java.util.HashMap" doc:name="JSON to Object" />
甚至<json:json-to-object-transformer returnClass="java.util.List" doc:name="JSON to Object" />从JSON中提取数据,具体取决于JSON数据