显然这是Java。我已经设置了一条到SMTP路由的驼峰路由,但是我希望邮件的主题是动态的,并且基于它收到的输入消息
e.g。主题“第52行已关闭”
电子邮件正文很好,看起来很完美。但我似乎无法设置电子邮件的主题,它总是被收到“没有主题”
在Camel处理器中我使用
Message msg = exchange.getOut();
// This works perfectly
msg.setBody( "Some body stuff " + lineProblem + " and some other details");
// PROBLEM - This has no effect (the order of the statements has no effect)
msg.setHeader( "Subject", " line " + lineProblem + " is down" );
但它始终在收件箱中收到“无主题”
我可以在端点级别和路由级别看到设置主题的其他方法,但当然这些方法都不允许我在消息级别设置主题
任何想法?
答案 0 :(得分:0)
尝试exchange.getIn().setHeader(...)
,因为Producer / Binding迭代IN消息标题以填充主题等。
有关详细信息,请参阅MailBinding.appendHeadersFromCamelMessage()代码:
答案 1 :(得分:0)
基本上每个交易所有一个主题,因此如果您在每封电子邮件中需要不同的主题,请使用拆分器将每个电子邮件作为单独的交换单独处理