[ 
https://issues.apache.org/jira/browse/NIFI-6374?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Koji Kawamura reassigned NIFI-6374:
-----------------------------------

    Assignee: JF Beauvais

> ConsumeEWS fails when email attachment has no content type
> ----------------------------------------------------------
>
>                 Key: NIFI-6374
>                 URL: https://issues.apache.org/jira/browse/NIFI-6374
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.9.0
>            Reporter: JF Beauvais
>            Assignee: JF Beauvais
>            Priority: Major
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Exchange Version: Exchange2010_SP2
> At line:
> [https://github.com/apache/nifi/blob/e913f5706f3b3a0a2e98cf77ac4c96f63ba4f104/nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java#L457]
> file.getContentType() may return null. In that case, we get an exception when 
> writting message file:
>  
> {code:java}
> Caused by: javax.mail.internet.ParseException: In Content-Type string <null>, 
> expected MIME type, got null
>     at javax.mail.internet.ContentType.<init>(ContentType.java:97)
>     at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1467)
>     at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1131)
>     at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:515)
>     at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1490)
>     at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:2198)
>     at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:2159)
>     at 
> org.apache.nifi.processors.email.ConsumeEWS.parseMessage(ConsumeEWS.java:478)
>     at 
> org.apache.nifi.processors.email.ConsumeEWS.fillMessageQueueIfNecessary(ConsumeEWS.java:365)
> {code}
> Possible workaround:
>  
>  
> {code:java}
> String type = Optional.ofNullable(file.getContentType()).orElse("text/plain");
> ByteArrayDataSource bds = new ByteArrayDataSource(file.getContent(), type);
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to