Create & Read Email Files Utilities

Use Case Details

This Plug-in contains Functions and Smart Services that allow users to create and read email files containing all e-mail attributes, i.e. to, cc, bcc, from, subject, body, content type, and attachments. The generated file can be read by any email client that supports EML files, such as Outlook Express and Windows Live Mail. The Plug-in and a help guide are provided with this listing.

This version is for Appian 22.3 and above. Cloud customers on a lower version of Appian that want to install this plugin should open a support case. Self-managed customers can find the latest jar for Appian 22.2 and lower version by downloading from the app market.

Features & Functionality

Smart Services:

  • Creating EML File: Create Eml File
  • Reading EML File: Read Eml File

Features:

  • Creates Email files/documents that can be read on all email clients supporting eml files.
  • Reads all email files to extract all email-related attributes such as to, cc, bcc, subject, body, attachments, content type.
Anonymous
Parents


  • Hi Michael,

    Thanks for upgrading the plug-in to the Jakarta library.

    After the Appian version upgraded to 22.3; I upgraded this plug-in to the 2.0.0 version.
    And 'Create Email File' service does not work and throws the following error: jakarta.mail.MessagingException: MIME part of type "multipart/mixed; " contains object of type java.lang.String instead of MimeMultipart

    Please assist.


    Here is detailed logs:

    UnattendedJavaActivityRequest] ERROR com.appiancorp.process.engine.UnattendedJavaActivityRequest - An error occurred while executing activity: id=268552939, classname=com.appcino.plugin.emlutility.smartservice.CreateEmlFile
    java.lang.RuntimeException: jakarta.mail.MessagingException: MIME part of type "multipart/mixed; " contains object of type java.lang.String instead of MimeMultipart
    	at com.appcino.plugin.emlutility.utils.EmlUtils.createEmlDocument(EmlUtils.java:147)
    	at com.appcino.plugin.emlutility.smartservice.CreateEmlFile.run(CreateEmlFile.java:48)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:136)
    	at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:136)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:130)
    	at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:27)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:130)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:88)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse(UnattendedJavaActivityRequestResponseCreator.java:21)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.getJavaActivityResultResponse(UnattendedJavaActivityRequest.java:67)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55)
    	at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:143)
    	at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68)
    	at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:129)
    	at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36)
    	at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:110)
    	at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    	at java.lang.Thread.run(Thread.java:750)
    Caused by: jakarta.mail.MessagingException: MIME part of type "multipart/mixed; " contains object of type java.lang.String instead of MimeMultipart
    	at jakarta.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1513)
    	at jakarta.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:2246)
    	at jakarta.mail.internet.MimeMessage.saveChanges(MimeMessage.java:2206)
    	at jakarta.mail.internet.MimeMessage.writeTo(MimeMessage.java:1885)
    	at jakarta.mail.internet.MimeMessage.writeTo(MimeMessage.java:1862)
    	at com.appcino.plugin.emlutility.utils.EmlUtils.createEmlDocument(EmlUtils.java:118)
  • Hi Arpit.

    I think you have the value "multipart/mixed; " setted in your node input variable 'Content Type'.

    I saw the following in javax doc:

    So I think you should try to execute the node with "" value in your node input variable 'Content Type'. 

  • Hello Arpit Pipersaniya, 

    I have the same issue that you say in your reply. Have you found any solution to that "There was an error creating the note" exception?

    Dhanyavaad.

Comment Children
No Data