作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我坚持使用 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/
我是一名优秀的程序员,十分优秀!