gpt4 book ai didi

java - Camel 泉中的多条内部路线

转载 作者:行者123 更新时间:2023-11-29 03:44:01 25 4
gpt4 key购买 nike

我坚持使用 Camel 文档,因为它不是很清楚...

我想在 Spring 中定义这个路由:

in: direct access from a url
out: get an object instance from a factory
--> format this object in Json

我试过这样的编码器:

<camel:route id="viewObject">
<camel:from uri="restlet:/json/" />

<camel:to uri="bean:myFactory" />
<camel:unmarshal ref="jack" />
</camel:route>

但它不起作用,因为解码在输入之后和输出之前工作,这是预期的,所以我尝试将输出重新路由到另一个端点。

<camel:route id="formatObject">
<camel:from uri="bean:myFactory" />
<camel:unmarshal ref="jack" />
<camel:to uri="mock:reverse" />
</camel:route>

基本上我想要我的对象:

public class MyObject{
private String name;
[ getter & setter here]
}

以这种方式解码:

 {name : 'a value'}

这仅适用于 marshaller 和 camel 配置。请帮忙,也欢迎清晰的解释和方法

最佳答案

本质上,只需在您的 Camel 上下文中创建这样的 xml。

<dataFormats>
<json id="jack" library="Jackson" unmarshalTypeName="com.example.MyObject"/>
</dataFormats>

<route>
<from uri="restlet:/json/"/>
<to uri="bean:myFactory"/>
<marshal ref="jack"/>
</route>

你似乎混淆了 marshall/unmarshall 词

Unmarshall = 来自 json -> beanMarshall = 来自 bean -> json。

关于java - Camel 泉中的多条内部路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11826124/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com