关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 12303|回复: 0

activiti5之邮件任务

[复制链接]
发表于 2014-8-26 17:25:45 | 显示全部楼层 |阅读模式
      原文:http://zhc3191012.blog.163.com/b ... 762013825101856533/

activiti强化了业务流程,支持了自动邮件任务,它可以发送邮件给一个或多个参与者, 包括支持cc, bcc, HTML内容等等。 注意邮件任务不是BPMN 2.0规范定义的官方任务。 (它也没有对应的图标)。 因此,activiti中邮件任务是用专门的服务任务实现的。


邮件服务器配置

activiti引擎要通过支持SMTP功能的外部邮件服务器发送邮件。 为了实际发送邮件,引擎穾知道如何访问邮件服务器。 下面的配置可以设置到activiti.cfg.xml配置文件中:


Table 1. 邮件服务器配置


[td]
属性是否必须描述
mailServerHost邮件服务器的主机名(比如:mail.mycorp.com)。默认为
localhost
mailServerPort是,如果没有使用默认端口邮件服务器上的SMTP传输端口。默认为25
mailServerDefaultFrom如果用户没有指定发送邮件的邮件地址,默认设置的发送者的邮件地址。默认为activiti@activiti.org
mailServerUsername如果服务器需要一些邮件服务器需要认证才能发送邮件。默认不设置。
mailServerPassword如果服务器需要一些邮件服务器需要认证才能发送邮件。默认不设置。
mailServerUseSSL如果服务器需要一些邮件服务器需要ssl交互。默认为false。



定义一个邮件任务

邮件任务是一个专用的服务任务, 这个服务任务的type设置为'mail'。

<serviceTask id="sendMail" activiti:type="mail">
                     

邮件任务是通过属性注入进行配置的。 所有这些属性都可以使用EL表达式,可以在流程执行中解析。 下面的属性都可以设置:


Table 2. 邮件服务器配置


[td]
属性是否必须描述
to邮件的接受者。可以使用逗号分隔多个接受者
from邮件发送者的地址。如果不提供,会使用默认配置的地址。
subject邮件的主题
cc邮件抄送人。可以使用逗号分隔多个接收者
bcc邮件暗送人。可以使用逗号分隔多个接收者
charset可以修改邮件的字符集,对很多非英语语言是必须设置的。
html作为邮件内容的HTML。
text邮件的内容,在需要使用原始文字(非富文本)的邮件时使用。 可以与html一起使用,对于不支持富客户端的邮件客户端。 客户端会降级到仅显示文本的方式。



使用实例

下面的XML演示了使用邮件任务的例子。

<serviceTask id="sendMail" activiti:type="mail">
  <extensionElements>
    <activiti:field name="from" stringValue="order-shipping@thecompany.com" />
    <activiti:field name="to" expression="${recipient}" />
    <activiti:field name="subject" expression="Your order ${orderId} has been shipped" />
    <activiti:field name="html">
      <activiti:expression>
        <![CDATA[
          <html>
            <body>
              Hello ${male ? 'Mr.' : 'Mrs.' } ${recipientName},<br/><br/>
              As of ${now}, your order has been <b>processed and shipped</b>.<br/><br/>
              Kind regards,<br/>
              TheCompany.
            </body>
          </html>
        ]]>
      </activiti:expression>
    </activiti:field>
  </extensionElements>
</serviceTask>
                     

结果如下:



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表