Alfresco Activiti BPM 1.2 with Share Connector

Activiti BPM with Share Connector

Mehmet Demirel

Alfresco Activiti BPM 1.2 with Share Connector


As most of you know that Alfresco has released Activiti BPM 1.2 with Share connector recently, this blog will give you quick overview of Activiti features & setting up activiti into share with single sign on (SSO). Previous version 1.1 was released with the features below:

  • Kick start for new workflow processes using step & BPMN editor.
  • Easy workflow creation using drag & drop workflow components.
  • Advance Form creation using drag & drop form fields, dynamic value retrieval using REST & field visibility configurations.
  • Stencil creation with customized workflow components (i.e. custom service tasks, user tasks etc..)
  • Creating new apps with one or more processes, publish & share among the users.
  • New connectors to Alfresco One, Alfresco Cloud & Google Drive repositories.
  • User & Organization (Groups) management in Multi tenant environment.
  • Administration interface & Analytic reports

Even though version 1.1 was released with cool features, version 1.2 will be the existing release for alfresco one users, because they introduced share-connector for Activiti, which enables users to use the processes & forms which created in Activiti app, inside the share interface.


 

Another important message is Share-connector supports Alfresco versions from 4.0, 4.1, 4.2 to 5.0. The rest of this blog will provide step-by-step guide to setup Activiti 1.2 with Share-connector.

 

Step-by-step guide

The softwares which are used in this step-by-step guide are :

  • Activiti BPM share connector version 1.2.1
  • Alfresco One version 5.0.1
  • OpenLDAP as Authentication subsystem
  • Postgres as Database
  • Nginx as Proxy server
  • Java 1.7
  • Mac OSX 10.9.4 as Operating system

 

Installation

Open LDAP

  • Install Open LDAP on port 389
  • Set below Ldap parameters (If you are using different values of below, don't forget to update related configurations in Alfresco & Activiti Ldap property files)

               - suffix as “dc=alfresco,dc=com”
               - rootdn as “cn=admin,dc=alfresco,dc=com”
               - password as 'secret'

  • Add users & groups as you want under dn: dc=alfresco,dc=com (Import our demo users and group for quick setup Demo users & groups )

Postgres

  • Install Postgres on port 5442 for Activiti. (If you are running Postgres on different port don't forget to update related configurations in Activiti property file)
  • Create database name called 'activiti'

 

Activiti BPM share connector.

  • Download the share connector latest trial version from http://www.alfresco.com/products/activiti/trial
  • Extract the zip file
  • Install Apache tomcat for Activiti on port 8080
  • To avoid our of memory exception, set JAVA_OPTS in <activiti-tomcat>/bin/setenv.sh

                  - #!/bin/sh
                  - JAVA_OPTS="-XX:MaxPermSize=512M -Xms512M -Xmx8192M"
                  - export JAVA_OPTS

  • Copy below files from extracted location to tomcat

                  - <ExtractedLocation>/tomcat/webapps/share#activiti-app.war to <activiti-tomcat>/webapps
                  - <ExtractedLocation>/tomcat/lib/activiti.lic to <activiti-tomcat>/lib
                  - <ExtractedLocation>/tomcat/lib/transform.lic to <activiti-tomcat>/lib

 

Alfresco One

                  - <ExtractedLocation>/amps/activiti.alfresco.repo-<version>.amp to <AlfrescoDir>/amps/
                  - <ExtractedLocation>/amps_share/activiti.alfresco.share-<version>.amp t0 <AlfrescoDir>/amps_share/

  • Apply amps by run

                   - <AlfrescoDir>/bin/apply_amps.sh

 

Nginx

  • Install Nginx on port 80
  • Proxy pass /share/activiti-app/ to http://127.0.0.1:8080/share/activiti-app
  • Proxy pass /share/ to http://127.0.0.1:8090/share
  • Refer demo nginx.conf to verify your configurations.

 


 

Configurations 

Ldap configurations in Alfresco

  • Create directory <AlfrescoDir>/tomcat/shared/classes/alfresco/extension/subsystems/Authentication/ldap/ldap1
  • Copy ldap-authentication.properties to above directory. If your have different Ldap configurations in the installation, you have to set them accordingly
  • Add/modify below lines in <AlfrescoDir>/tomcat/shared/classes/alfresco-global.properties

 


 

Ldap configurations in Activiti

  • Open <activiti-tomcat>/webapps/share#activiti-app/WEB-INF/classes/META-INF/activiti-app/activiti-ldap.properties
  • Edit with Ldap parameters as in activiti-ldap.properties. If your have different Ldap configurations in the installation, you have to set them accordingly.

 

Postgres configurations in Activiti

  • Open <activiti-tomcat>/webapps/share#activiti-app/WEB-INF/classes/META-INF/activiti-app/activiti-app.properties
  • Edit with Postgres parameters as below. If your have different Postgres configurations in the installation, you have to set them accordingly.


SSO configurations in Alfresco

  • Create a file <AlfrescoDir>/tomcat/shared/classes/activiti-alfresco-share-integration.properties
  • Add Activiti url as    activiti.domain=http://127.0.0.1:8080

 

SSO configurations in Activiti

  • Open <activiti-tomcat>/webapps/share#activiti-app/WEB-INF/classes/META-INF/activiti-app/activiti-app.properties
  • Add/Modify the Share authentication url as

security.rememberme.share.authenticationUrl = http://localhost:8090/share/proxy/alfresco/activiti/alfresco/components/authenticate

 

After you installed & configured successfully, you can start the applications in the same order of installation and access them.

Alfresco Share by http://localhost/share

 


 

Activiti app by http://localhost/share/activiti-app

 


 

Now you can see the Activiti processes & forms inside Share -> Tasks -> My Tasks.

 


 

The original My Tasks dash-let is still available, making it possible to list old internal workflows but also receive new site invitations.

 


 

Also creation & deployment of new process workflow is now easy using Activiti.

Create a new process called 'Zaizi Demo' in Activiti Kickstart using step editor.

 


 

Include above process into 'Alfresco Share' App.

 


 

Save & publish the app. Now you can see your new process 'Zaizi Demo' in your Start workflow page in Share.

 


 

Hope you got some cool ideas in your mind on using Activiti with Alfresco. Enjoy!

 

References :

http://docs.alfresco.com/activiti/topics/welcome.html

http://blogs.alfresco.com/wp/another-bpm-step-forward-for-alfresco

README.md from installation zip file