i'm trying to send email notification using ACS commons email service in a workflow and i'm getting below Error-
*ERROR* [JobHandler: /var/workflow/instances/server0/2020-04-17_3/workflow_59:/content/path/to/page] com.adobe.acs.commons.email.impl.EmailServiceImpl Error sending email to [ [email protected] ]
org.apache.commons.mail.EmailException: Invalid message supplied
at org.apache.commons.mail.HtmlEmail.setMsg(HtmlEmail.java:177) [org.apache.commons.email:1.5.0]
at com.day.cq.commons.mail.MailTemplate.getEmail(MailTemplate.java:181) [com.day.cq.cq-commons:5.12.16]
at com.adobe.acs.commons.email.impl.EmailServiceImpl.getEmail(EmailServiceImpl.java:234) [com.adobe.acs.acs-aem-commons-bundle:4.3.0]
at com.adobe.acs.commons.email.impl.EmailServiceImpl.sendEmail(EmailServiceImpl.java:152) [com.adobe.acs.acs-aem-commons-bundle:4.3.0]
at com.adobe.acs.commons.email.impl.EmailServiceImpl.sendEmail(EmailServiceImpl.java:125) [com.adobe.acs.acs-aem-commons-bundle:4.3.0]
at <redacted>
at <redacted>
at com.adobe.granite.workflow.core.advance.DynamicParticipantNodeHandler.getParticipant(DynamicParticipantNodeHandler.java:206) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.advance.ParticipantNodeHandler.doTransition(ParticipantNodeHandler.java:185) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.advance.ParticipantNodeHandler.doTransition(ParticipantNodeHandler.java:134) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.advance.OrSplitNodeHandler.doTransition(OrSplitNodeHandler.java:126) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.advance.AdvanceUtil.transitionFrom(AdvanceUtil.java:126) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.WorkflowSessionImpl.completeInternal(WorkflowSessionImpl.java:1050) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.WorkflowSessionImpl.complete(WorkflowSessionImpl.java:1020) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at <redacted>
at com.adobe.granite.workflow.core.job.HandlerBase.executeProcess(HandlerBase.java:195) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at com.adobe.granite.workflow.core.job.JobHandler.process(JobHandler.java:260) [com.adobe.granite.workflow.core:2.0.240.CQ650-B0002]
at org.apache.sling.event.impl.jobs.JobConsumerManager$JobConsumerWrapper.process(JobConsumerManager.java:502) [org.apache.sling.event:4.2.12]
at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.startJob(JobQueueImpl.java:293) [org.apache.sling.event:4.2.12]
at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.access$100(JobQueueImpl.java:60) [org.apache.sling.event:4.2.12]
at org.apache.sling.event.impl.jobs.queues.JobQueueImpl$1.run(JobQueueImpl.java:229) [org.apache.sling.event:4.2.12]
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:748)
i have followed https://adobe-consulting-services.github.io/acs-aem-commons/features/e-mail/email-api/index.html
attaching html i have used in my template(i also tried with .txt file with normal text) -
<html>
<head></head>
<body>
-----------------------------------------<br/>
Time : ${time} <br/>
Step : Approve Content <br/>
Approver : userName <br/>
Workflow : wftitle<br/>
-----------------------------------------<br/><br/>
wftitle workflow has been assigned to you. Please review the content: <a href=' url'> payloadTitle </a><br/><br/>----------------------------------------<br/>
View the overview in your <a href='test'>AEM Inbox</a><br/>
-----------------------------------------<br/> This is an automatically generated message. Please do not reply.
</body>
</html>
please let me know what i'm missing here.
Thanks in advance!
this is from @Jens-
Looks like you are missing the email headers: _ From_, Subject followed by an empty line. Make also sure that the template has the file ending ".html" as described in the documentation. Make sure to carefully read the documentation you linked