假设您需要使用javax.jmx.TextMessage文件路由到一个JMS队列,你需要转换每一个文件为String。
from("file://riders/inbox")
.convertBodyTo(String.class)
.to("activemq:queue:inbox");
用Spring Xml的方式实现上述的代码:
<route>
<from uri="file://riders/inbox"/>
<convertBodyTo type="java.lang.String"/>
<to uri="activemq:queue:inbox"/>
</route>
上述的代码可以去掉java.lang的前缀,使其更加简单一些:
<route>
<from uri="file://riders/inbox"/>
<convertBodyTo type="String">
<to uri = "activemq:queue:inbox"/>
<route>
使用convertBodyTo的另一个原因是可以指定读取文件使用什么编码格式:
from("file://riders/inbox")
.convertBodyTo(String.class , "UTF-8")
.to("activemq:queue:inbox");