I'm pleased to announce first version of Activiti Plugin for Liferay. This version has many limitations, but already allowed to use Activiti (in some simple cases) instead of default Kaleo workflow Engine.
Download and Use
You can download activiti-web from our Files, or build it by yourself from sources got from svn. Sources should be built in plguins SDK.
To use it you should be familiar with Liferay and it's workflow functionality.
Some sample processes may be found in svn - to deploy they should be packaged into BAR (business archive) - one process definition into one BAR. It is possible to do by build-samples ant target.
What is implemented
With this version you can:
- Deploy BAR (Business Archive) with BPMN 2.0 process definition;
- Assign specific process definition to some asset type via Workflow Configuration;
- Start new process by adding or editing (submitting for publishing) specific Asset;
- Assign user tasks to specific users (by userId) or Site Roles (like Administrator);
- Manage User Tasks from standard Liferay UI;
- Use Activiti "Script Task" to perform JavaScript inside Liferay (actually use any public Liferay API) - for example see SingleApproverByScript.bpm20.xml sample;
What is not implemented yet
Actually many things, major are:
- Only mysql database supported. Probably it will work with others, but in this case you shoiuld change db type by yourself in META-INF/activiti-spring.xml; Activiti is not supported DB autodetection - looks like need to be added by ourself;
- Since I do not found way (yet) to write own assignment handler for User Tasks, it is not possible to assign User Tasks to group roles (like Community Content Reviewer or Organization Administrator);
- BPMN 2.0 looks like is not supported output transitions from user tasks - each task has only one output transition, and flow navigation are performed by special gates. As result, each user task for now has only one output transition: "Done". For example, in "Review Asset" task, reviewer for now can only "Done" task, what will produce acceptance - there is not way to choose - reject or approve. Looks like such functionality will require a lot more job;
- Process History is not working at all. Activiti does not supporte commenting (looks like should be done externally), as well as process history logging are quite limited, so, this need more job to make it working like Liferay expected.
You see - still many things to do - so, of course current version is not for any production usage - it looks like more as prototype for people, who are interesting in this project.
Any comments or suggestions are only welcomed!