在Apache Camel中找不到使用jsonpath拆分JSON数组的语法

u59ebvdq  于 2022-11-07  发布在  Apache
关注(0)|答案(1)|浏览(262)

我有一个传入的字符串,它是一个JSON数组,我想处理数组中的每个元素。数组包含对象,例如[{“title”:“书1”},{“书名”:“第2册”}]
代码如下所示:

// code that returned string here...
        .log("body: ${body}") // got JSON string
        .marshal().json(JsonLibrary.Jackson)

    // .split().jsonpath("$") entire array
    // .split().jsonpath("$.") blows up
    // .split().jsonpath("$[]") blows up
    // .split().jsonpath("$.[]") blows up
    // .split().jsonpath("$.[*]") fail

        .split().jsonpath("what do I put here?") // how to pass each bit of the array?

        .to("direct:book");

    from("direct:book")
        .log("book ${body}") 
    ;

如何逐一处理数组中的每个元素?

46qrfjad

46qrfjad1#

第一个分割数组和执行json路径之后

.log("body: ${body}") 
            .split().body()
            .marshal().json(JsonLibrary.Jackson)
       // you have n items in there 
        // setProperty("name",jsonpath("$.name")) 
.end();

相关问题