apache- camel和json

我正在尝试apache-

camel,我已经建立了一条基本路由,该路由通过http4组件调用http服务,通过unmarshal()。json(JsonLibrary.Jackson)转换结果,然后打印出部分响应在bean组件中。

我遇到的问题是,当它到达json unmarhsaller时,它会在运行时爆炸:

没有类型转换器可用于从类型:java.util.HashMap转换为所需的类型:com.xxx.MyType

响应的格式如下:

{"data":[{"x":"y"},{"x":"z"}]}

我的对象模型是这样的:

@lombok.Data

class Response {

private List<Elem> data;

}

@lombok.Data

class Elem {

private String x;

}

因此,似乎解组员认为响应是哈希映射,而我希望它解组为对象结构。有办法让它做我想要的吗?

回答:

找到了答案,以防其他任何人碰到。路径构建器应设置为:

from("direct:start").to("http4://...").unmarshal().json(JsonLibrary.Jackson,com.xxx.Response)

.to("bean:com.xxx.MyResponseEchoer")

即将类类型传递给j​​son方法。

以上是 apache- camel和json 的全部内容, 来源链接: utcz.com/qa/401287.html

回到顶部