109.7. Samples

例如,您可以使用如下内容:

from("activemq:My.Queue").
  to("freemarker:com/acme/MyResponse.ftl");

使用 FreeMarker 模板来制定对 InOut 消息交换的消息的响应(其中有一个 JMSReplyTo 标头)。

如果要使用 InOnly 并消耗信息并将其发送到您可以使用的其他目的地:

from("activemq:My.Queue").
  to("freemarker:com/acme/MyResponse.ftl").
  to("activemq:Another.Queue");

和 禁用内容缓存,例如,开发使用 .ftl 模板应被热重新加载:

from("activemq:My.Queue").
  to("freemarker:com/acme/MyResponse.ftl?contentCache=false").
  to("activemq:Another.Queue");

以及基于文件的资源:

from("activemq:My.Queue").
  to("freemarker:file://myfolder/MyResponse.ftl?contentCache=false").
  to("activemq:Another.Queue");

Camel 2.1 中,可以指定组件应该通过标头动态使用的模板,例如:

from("direct:in").
  setHeader(FreemarkerConstants.FREEMARKER_RESOURCE_URI).constant("path/to/my/template.ftl").
  to("freemarker:dummy");