2016-02-09 50 views
1

我有一個mule flow執行以下操作:騾子 - 個性化車身SMTP組件

HTTP =>JSON to XML =>XSLT =>Logger =>SMTP

我想身體個性化的電子郵件與message.payload和我的個人文本,例如:

它已收到一條XML消息與以下通知通貨膨脹:

#[message.payloadAs(java.lang.String)] 

message.payloadXSLT component和電子郵件變換了XML將如下接收:

它已收到的XML消息包含以下信息:

author:Gambardella, Matthew

我需要用我的文本個性化消息嗎?

我應該使用payload component還是property

回答

3

SMTP連接器將使用有效載荷作爲郵件的正文,所以纔想要什麼,例如要發送的有效載荷設置:

<set-payload value="It has received an XML message with the following information: #[message.payloadAs(java.lang.String)]" doc:name="Set Payload"/>

現在,如果你要發送此電子郵件具有HTML郵件,因此在您的有效內容中,您可以添加html標記,甚至可以通過向SMTP添加全局連接器並在全局連接器上設置contentType來實現這一點,請注意,僅在SMTP端點上設置mimeTypedirectly將不會有效果:

<smtp:connector name="SMTP_exception_mailer" contentType="text/html" validateConnections="true" doc:name="SMTP"/> 
<smtp:outbound-endpoint host="host" port="25" connector-ref="SMTP_exception_mailer" to="[email protected]" from="[email protected]" mimeType="text/html" doc:name="SMTP"/> 

FOR複雜的HTML郵件獎金TIP

如果你想發送複雜的HTML郵件很明顯,使用設定的有效載荷分量將是相當複雜的,一個很好的選擇是使用parse template component,這將允許你在外部文件中使用MEL表達式來編寫你的html。