在Mule中发送电子邮件附件-为什么我会收到有效负载附件

在Mule中发送电子邮件附件-为什么我会收到有效负载附件,mule,Mule,我正在使用SMTP连接器在Mule中发送一封带有csv附件的电子邮件 Mule生成的电子邮件上有两个附件 第一个文件名为Payload。 第二个是我显式添加的文件myFile.csv 我如何摆脱有效负载附件?根据我的理解,有效负载文件中的内容应该作为电子邮件的内容出现。但这并不是正在发生的事情,相反,它是作为一种依恋出现的 下面是我发送电子邮件的子流的样子。输入的有效负载是csv <sub-flow name="paymentReconSendMailSubFlow"> &l

我正在使用SMTP连接器在Mule中发送一封带有csv附件的电子邮件

Mule生成的电子邮件上有两个附件

第一个文件名为
Payload
。 第二个是我显式添加的文件
myFile.csv

我如何摆脱
有效负载
附件?根据我的理解,有效负载文件中的内容应该作为电子邮件的内容出现。但这并不是正在发生的事情,相反,它是作为一种依恋出现的

下面是我发送电子邮件的子流的样子。输入的有效负载是csv

<sub-flow name="paymentReconSendMailSubFlow">
    <set-attachment attachmentName="myFile-#[server.dateTime.format(&quot;yyyyMMddHHmmss&quot;) + '.csv']" value="#[payload]" contentType="application/csv" doc:name="Attachment"/>  
    <set-payload doc:name="Set Payload" value="#[null]"/>
    <smtps:outbound-endpoint host="${smtp.host}" port="${smtp.port}" user="${smtp.username}" password="${smtp.password}" connector-ref="SMTP" to="${smtp.toAddress}" from="${smtp.fromAddress}" subject="BLAH"   replyTo="${smtp.replyToAddress}" responseTimeout="10000" mimeType="text/html" doc:name="SMTP"/>
</sub-flow>   

这是我在收件箱里得到的信息


看起来Mule仍然将消息负载的内容类型设置为application/csv,所以认为您的空负载是一个csv。尝试将mimeType=“text/plain”添加到set payload元素中

在附加之前,是否尝试将csv文件序列化到字节数组

例如:

  <file:inbound-endpoint path="${output.folder}" doc:name="File"/> 
  <file:file-to-byte-array-transformer  doc:name="File to String"/>
   <set-attachment value="#[message.payload]" contentType="application/csv" 
   attachmentName="#['myfile.csv']" 
   doc:name="Attachment" />


请在发送前告知我们是否正常工作,问题是文件的序列化

谢谢回答。这件事让我困惑不解。我厌倦了。我仍然得到同样的结果。没有变化,所以我发现了问题所在。这几乎就是这里的答案,因此我将把它标记为答案。它是smtp config(而不是set payload)元素上的mimeType。