1

我正在尝试编写 Camel 路由以通过 Jolokia REST API 从 ActiveMQ 服务器获取 JMX 数据。我能够成功地从 ActiveMQ 服务器获取 JSON 对象,但是我遇到了一个问题,我无法弄清楚如何在我的 Camel 路由中解析 JSON 对象。Camel 与 Jackson、Gson 和 XStream 集成,但它们似乎都需要一个我没有的额外库。Camel 也支持 JSONPath,但它需要另一个我没有的库。到目前为止,我所有的研究似乎都指向使用一个新的软件库,所以我正在寻找一个知道解决方案的人,以节省我尝试更多死胡同的时间。

最大的问题是我试图用 Java/Camel/Spring/ActiveMQ/apache-commons 附带的东西来解析 JSON。我更喜欢只使用 Camel/Spring XML 的解决方案,但使用 Java 的另一种解决方案也可以工作(也许 JXPath 和 Apache Commons?)。

我尝试使用我目前拥有的库的原因是我们公司获得批准新软件库的漫长过程。我可以等待几个月以获得批准的库,或者我可以编写自己的专业解析器,但我希望有其他方法可以从我从 Jolokia JMX REST API 获得的 JSON 对象中提取一些信息在 ActiveMQ 中。

4

1 回答 1

2

Java 本身没有开箱即用的 JSOn 库。但是有一个 RFE 可能会在未来的 Java 版本中添加它,也许是 Java 9。

所以如果你想解析 json,你需要使用 3rd 方库。所以你最好让你的公司批准一个图书馆。

camel-core 2.15.x 有一个 json 方案解析器,我们使用它来解析现在发布的组件文档 json 模式。但它不是通用的 json 解析器,但可以解析简单的模式。

它在org.apache.camel.util.JsonSchemaHelper

于 2015-06-05T10:23:04.007 回答