Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The following scenario simulates a simple leave approval business process, in which an employee fills a form and submits the leave request to the manager and the manager approves or rejects it. The employee receives an email if the manager approves the request. Otherwise, if the manager rejects it, the employee will be able to resend the leave request by adjusting it. 

...

If you did not try the Working with Exclusive Gateways tutorial yet, follow the steps below to import its artifacts as you will be extending on that.

  1. Download the pre-packaged project and extract it to a preferred location. This contains the artifacts of the Working with Exclusive Gateways tutorial. 
  2. Open the WSO2 EI Tooling environment.
  3. Click File, and click Import
  4. Expand the WSO2 category, select Existing WSO2 Projects into workspace and click Next.
  5. Click Browse, select the file you extracted and upload it.  
  6. In the Package Explorer, double click on the name of the BPMN diagram to view the BPMN artifacts you imported.

...

  1. In the Main Config section of the Properties tab (of the Mail Task), fill the respective fields (i.e., ToFromSubject). You can give the Subject as Leave approved!.
  2. In the Non-HTML field of the Main Config section, enter Hi ${employeeName}, your leave request is approved. The variable will be used to create the mail body.

    Expand
    titleMore information on the properties of the Mail Task

    The Mail Task allows you to send an email within a BPMN Process. It is configured with the following properties. 

    Field NameMandatoryDescription
    ToYesThe email address of the intended recipient of the email. Multiple recipients can be specified as comma-separated email addresses.
    FromNoThe email address of the sender. If this field is not specified, the default email address specified in the activiti.xml file will be used.
    SubjectNoSubject of the email.
    CCNoThe email addresses of the carbon copy receivers of the email. Multiple recipients are separated by commas.
    BccNoThe email addresses of the blind carbon copy receivers of the e-mail. Multiple recipients are separated by commas.
    CharsetNoCharset of the email can be changed.
    HtmlNoThe content of email is in HTML format.
    TextNoContent is in non-HTML format.
  3. Copy the following JAR files into the<EI_HOME>/lib directory and restart the Business Process profile server instance. 

  4. In the <EI_HOME>/wso2/business-process/conf/activiti.xml file, add the following properties under the <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration"> property as shown below, to enable the Gmail configurations.

    • Replace the mailServerHost and mailServerPort property values as follows:

      Code Block
      languagexml
      <property name="mailServerHost" value="smtp.gmail.com"/>
      <property name="mailServerPort" value="587"/>
    • Add the following properties:

      Code Block
      languagexml
      <property name="mailServerDefaultFrom" value="<ENTER_A_VALID_SMTP_EMAIL_ADDRESS>"/>
      <property name="mailServerUseTLS" value="true"/>
      <property name="mailServerUsername" value="<ENTER_A_VALID_SMTP_EMAIL_ADDRESS>"/>
      <property name="mailServerPassword" value="<ENTER_THE_EMAIL_PASSWORD>"/>
      Expand
      titleMore information on the above properties
      PropertyDescription
      • <property name="mailServerDefaultFrom" value=”email of the sender”>
      This specifies the default address of the sender. If a sender is not specified in the sender field as a mail task property, the email address specified here will be used instead.
      • <property name="mailServerUsername" value="mailtask@gmail.com"/>
      • <property name="mailServerPassword" value="mailtask123"/>
      Specifies the credentials of the sender for authentication purposes. Here, you should include the email addressandit'scorrespondingpasswordwhich you specified in the “From” field of the mail task.
      • Port 456 (SSL required):<property name="mailServerUseSSL" value="true"/>
      • Port 587 (TLS required):<property name="mailServerUseTLS" value="true"/>
      Specifiy only one of these two properties in order to specify whether the mail server should use SSL or TLS.
      Info

      If you are using Gmail to try out this scenario, you may need to enable IMAP access for Gmail. For more information, see Enable IMAP settings in Gmail. Also, if you receive an authentication error, you may have to adjust your account access settings in Gmail as well. For more information, see Allowing less secure apps to access your account.

Deploying the artifacts

  1. For instructions on creating the deployable artifacts, see Creating the deployable archive.
  2. For instructions on deploying them, see Deploying BPMN artifacts.

...