I am using Camel 1.6.1, but this holds true for 1.6.2-SNAPSHOT and 2.0.0..

It looks like Camel Mail Component does not set Content-ID mime header
correctly or probably assumption is that BodyPart will take care of it. As a
result embedded images in html body do not work ( img
src="cid:somename.img").

Currently Content-ID is set as -

//MailBinding.java
// add a Content-ID header to the attachment
messageBodyPart.addHeader("Content-ID", attachmentFilename.substring(4));

But according to RFC standards [http://www.ietf.org/rfc/rfc2392.txt],
Content-ID value should be enclosed with in angle brackets, so it should be
modified to-

//MailBinding.java
// add a Content-ID header to the attachment
messageBodyPart.addHeader("Content-ID", "<" +
attachmentFilename.substring(4) + ">");

Also, RFC standard mention that Content-ID should be globally unique but
Camel Mail just sets it to filename instead.

Also, below should be modified which incorrectly sets fileName inclusive of
"cid:", but expectation would be strip off "cid" off it, similar to
Content-ID

// Set the filename
messageBodyPart.setFileName(attachmentFilename);

Should be -

// Set the filename
messageBodyPart.setFileName(attachmentFilename.substring(4));
-- 
View this message in context: 
http://www.nabble.com/Camel-Mail-Component%3A-Content-ID-incorrect--tp25760500p25760500.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to