我正在尝试从mule的电子邮件中发送自定义电子邮件标头。
在
中添加静态标头<smtp:connector>
定义为
<smtp:header key="headerKey" value="headerVal">
很简单,但我需要为我发送的每封电子邮件设置不同的标题值
<smtp:outbound-endpoint>
可以使用Mule的SMTP组件完成吗?
答案 0 :(得分:0)
我通过向smtp出站端点添加自定义转换器解决了这个问题。
public class EmailTransformer implements MessageTransformer {
@Override
public MuleEvent process(MuleEvent event) throws MuleException {
...
SmtpConnector conn = (SmtpConnector)event.getMuleContext().getRegistry().lookupConnector("SMTP");
if (conn != null) {
conn.getCustomHeaders().put("headerName", headerValue);
}
}
}
变换器读取变量中的值,并在变换器的过程方法中设置标题。不是很优雅,但完成工作。