Apache camel imap"由于以下原因导致访问标头出错:charset"

时间:2016-11-18 19:02:18

标签: apache-camel imap apache-camel-mail

我已经编写了一个Camel处理器来操作一个imap邮箱,它在开发环境中运行正常(在docker容器中使用greenmail)但是当部署在附加到aruba邮件的生产中时,我开始得到以下异常

19:50:55.215 [Camel (camel-1) thread #0 - imap://imap.scontrinando.it:143] WARN  o.a.c.component.mail.MailConsumer - Caused by: [org.apache.camel.RuntimeCamelException - Error accessing headers due to: charset]
org.apache.camel.RuntimeCamelException: Error accessing headers due to: charset
at org.apache.camel.component.mail.MailMessage.populateInitialHeaders(MailMessage.java:121)
at org.apache.camel.impl.DefaultMessage.createHeaders(DefaultMessage.java:200)
at org.apache.camel.impl.DefaultMessage.getHeaders(DefaultMessage.java:164)
at org.apache.camel.component.mail.MailConsumer.createExchanges(MailConsumer.java:355)
at org.apache.camel.component.mail.MailConsumer.poll(MailConsumer.java:128)
at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:175)
at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:102)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.UnsupportedEncodingException: charset
at sun.nio.cs.StreamDecoder.forInputStreamReader(StreamDecoder.java:71)
at java.io.InputStreamReader.<init>(InputStreamReader.java:100)
at com.sun.mail.handlers.text_plain.getContent(text_plain.java:80)
at javax.activation.DataSourceDataContentHandler.getContent(DataHandler.java:795)
at javax.activation.DataHandler.getContent(DataHandler.java:542)
at javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart.java:657)
at org.apache.camel.component.mail.MailBinding.extractHeadersFromMail(MailBinding.java:616)
at org.apache.camel.component.mail.MailMessage.populateInitialHeaders(MailMessage.java:116)
... 13 common frames omitted

某些邮件已被阅读并正确处理,但现在该过程仍然停留在此错误上。

连接URI是

"imap://${config.inbox.host}?username=${config.inbox.username}&password=${config.inbox.password}" \
    + "&ignoreUnsupportedCharset=true" \
    + "&delete=false" \
    + (unread?"&peek=true":"") \
    + "&unseen=true" \
    + "&consumer.delay=600" \
    + "&fetchSize=10" \
    + "&maxMessagesPerPoll=10"

0 个答案:

没有答案