疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

疯狂Activiti6连载邮件服务器与history配置


 

邮件服务器与history配置
 
history配置
 
在流程执行的过程中,会产生一些流程相应的数据,例如流程实例、流程任务和流程参数等数据,随着流程的进行与结束,这些数据将会从流程数据表中删除,为了能保存这些数据,Activiti提供了历史数据表,可以让这些数据保存到历史数据表中。
对于这些历史数据,保存到何种粒度,Activiti提供了history属性对其进行配置。history属性有点像log4j的日志输出级别,该属性有以下四个值:
     none:不保存任何的历史数据,因此,在流程执行过程中,这是最高效的。
     activity:级别高于none,保存流程实例与流程行为,其他数据不保存。
     audit:除activity级别会保存的数据外,还会保存全部的流程任务及其属性。audit为history的默认值。
     full:保存历史数据的最高级别,除了会保存audit级别的数据外,还会保存其他全部流程相关的细节数据,包括一些流程参数等。
流程历史数据配置的用法以及效果,将在“历史数据管理”章节进行详细讲解,如果读者想查看各个属性的效果,可以运行以下几个例子:
    codes44.3history-configsrcorgcrazyitactivitiActivity.java
    codes44.3history-configsrcorgcrazyitactivitiAudit.java
    codes44.3history-configsrcorgcrazyitactivitiFull.java
    codes44.3history-configsrcorgcrazyitactivitiNone.java
注:在运行这几个例子前,先将act数据库的全部表删除。
邮件服务器配置
Activiti支持邮件服务,当流程执行到某一个节点时,Activiti会根据流程文件配置(Email Task),发送邮件到相应的邮箱。以下为ProcessEngineConfiguration中提供的邮件服务器配置项:
     mailServerHost:邮件服务器地址,非必填,默认值为localhost。
     mailServerPort:SMTP发送邮件服务器端口,默认值为25。
     mailServerDefaultFrom:非必填,发送人的邮箱地址,默认值为activiti@activiti.org。
     mailServerUsername:邮箱登录用户名。
     mailServerPassword:邮箱登录密码。
     mailServerUseSSL:是否使用SSL协议通信,默认为false。
     mailServerUseTLS:是否使用TLS协议通信,默认为false。
使用SMTP协议发送邮件,需要知道邮件服务器地址、SMTP端口、邮箱登录用户名和密码,代码清单4-15中以网易邮箱为例子,列出如何设置这几个邮件配置项。
代码清单4-15:codes44.3mail esourcemail.xml
<bean id="processEngineConfiguration"
class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/act" />
<property name="jdbcDriver" value="com.mysql.jdbc.Driver" />
<property name="jdbcUsername" value="root" />
<property name="jdbcPassword" value="123456" />
<property name="mailServerHost" value="smtp.163.com"></property>
<property name="mailServerPort" value="25"></property>
<property name="mailServerDefaultFrom" value="yangenxiong@163.com"></property>
<property name="mailServerUsername" value="yangenxiong@163.com"></property>
<property name="mailServerPassword" value="123456"></property>
</bean>
关于邮件发送任务(Email Task)的使用,请参看流程任务章节。