我有一个我想要添加日志记录的现有路由,目前它将其对象作为交换字符串传递。在从路由调用的某些java方法中,它使用JAXB将其转换为模型,然后执行其工作并将其转换回来。
现在我想要一条单向路线,在那里我基本上可以跳入某个点并将模型传递给方法以将其记录到数据库中。我目前正在使用Wiretap,但是我有点困惑的是如何将对象从字符串解组为其实际模型类型然后传入,然后让路由继续正常。
目前骆驼网站已经关闭,所以我只是看看这是一件简单的事情......
看起来我想要使用,但是这只会将它解组为下一个调用的对象(即窃听),因为我想保持其他所有内容不受影响,就好像日志从未存在过一样......
答案 0 :(得分:0)
也许一条简单的骆驼路线可以解释你想要的东西? 现在我不确定你想用unmarshaled对象做什么。
答案 1 :(得分:0)
from("direct:step1")
.wireTap("direct:log")
.to("direct:step2");
from("direct:log")
.convertBodyTo(MyType.class)
.to("bean:logToDatabase");