Sorry, for late follow up on this. As I mentioned before, I have the fix and I can submit the patch. But I am not sure if encoding is platform specific and will cause issues or/and make unit test difficult.
For ex: Mail with below subject, shows up in mail envelope like - Subject = My Camel \u2122 With Fix: Subject: =?MacRoman?Q?My_Camel_=A8_=AA?= Is the prepended chars platform specific? I don't have much knowledge on this but can this break on other platforms? Let me know and I can submit patch to JIRA. Thanks! willem.jiang wrote: > > Hi, > > In camel you can get the Charset information from exchange, I just > created a JIRA[1] for it, it should be easy to fix. > > [1]https://issues.apache.org/activemq/browse/CAMEL-2763 > > Willem > > > tide08 wrote: >> It looks like camel-mail cannot handle unicode chars in subject header? I >> have something like below and subject does not appear correctly in mail >> client - >> >> @Test >> public void testMailSubjectWithUnicode() throws Exception { >> Mailbox.clearAll(); >> >> String body = "Hello Camel Riders!"; >> String subject = "My Camel \u2122"; >> >> MockEndpoint mock = getMockEndpoint("mock:result"); >> mock.expectedMessageCount(1); >> //mock.expectedHeaderReceived("subject", "My_Camel_=AA"); >> mock.expectedBodiesReceived(body); >> >> template.sendBodyAndHeader("direct:a", body, "subject", subject); >> >> mock.assertIsSatisfied(); >> >> assertFalse("Should not have attachements", >> mock.getExchanges().get(0).getIn().hasAttachments()); >> } >> >> I tried looking into fix but I am exactly not sure if I have the right >> fix. >> It looks like in MailBinding class subject is not added using correct >> method >> - >> >> mimeMessage.setHeader(headerName, asString(exchange, headerValue)); >> >> but should instead be? >> >> mimeMessage.setSubject(asString(exchange, headerValue)); >> >> Looking at JavaDoc and source it looks like setSubject() method will >> actually find right encoder and do the encoding for subject. I made >> changes >> to mailBinding and it indeed fixed it but looks like it uses platform >> specific encoding so was confused if that is right approach, any ideas? >> >> Also, platform specific encoding may make unit testing difficult? >> >> >> Thanks! >> >> >> >> >> >> > > > -- View this message in context: http://old.nabble.com/Camel-Mail%3A-Subject-cannot-handle-unicode-chars--tp28700124p28748954.html Sent from the Camel - Users mailing list archive at Nabble.com.
