cancel
Showing results for 
Search instead for 
Did you mean: 

Activiti community/commercial? standalone/intergrated edition?

nikes
Champ on-the-rise
Champ on-the-rise
Hello,

I am evaluating Activiti tool for implementing business processes.

I understood that Alfresco has 2 editions, community and enterprise. But confused with Activiti editions.

Questions:
1: Does Activiti standalone is available as as community as well as enterprise/commercial editions? If so, Where to find the latest versions for both editions 

2: Does Activiti integrated with Alfresco also comes with respective editions? Activiti community for Alfresco community and Activiti enterprise for Alfresco Enterprise?

How REST API differs in Accessing all above editions of Activiti (Standalone and Integrated with Alfresco)

Thanks in advance
3 REPLIES 3

afaust
Legendary Innovator
Legendary Innovator
Hello,

unfortunately, confusing naming, commercial products and integration/embedding can make this topic a bit difficult to handle.

Activiti is available in the following variants:
- <a href="http://activiti.org/">Activiti standalone process engine library</a> - open source
- Alfresco Community Edition with embedded Activiti process engine library - open source
- Alfresco Enterprise Edition with embedded Activiti process engine library - commercial (engine still covered by open source license)
- <a href="https://www.alfresco.com/products/business-process-management/alfresco-activiti">Alfresco Activiti</a> process server - commercial, built on top / around the Activiti process engine (engine still covered by open source license)

The base open source library includes a generic module for ReST API, but both Alfresco Community/Enterprise as well as Alfresco Activiti have built additional custom ReST APIs specific to their integration use cases, which typically are preferred over the low-level ReST APIs. E.g. Alfresco Community/Enterprise can embed multiple+different BPM engines and its API must abstract since some concepts like forms are handled externally to these engines.

In addition to <a href="http://activiti.org">Activiti home page</a> you might also want to check out <a href="http://docs.alfresco.com/">Alfresco documentation</a> for infos about the Alfresco products that embed or build upon the core Activiti library.

Regards
Axel

nikes
Champ on-the-rise
Champ on-the-rise
Thank you Axel for your time and detailed explanation.

About REST API, there are two ways to access workflow in Alfresco.
Question is, why two ways? In which scenario which REST API to use?


Alfresco webscripts for workflow:
http://docs.alfresco.com/4.2/references/RESTful-Workflow.html


Alfresco RESTFul API for workflow:
http://docs.alfresco.com/4.2/pra/1/concepts/act-procdefs.html


Following REST to be used only if its Standalone Activiti engine (Please correct if am wrong)

Activiti Standalone REST API
https://docs.alfresco.com/activiti/docs/dev-guide/1.4.0/#_activiti_engine_rest_api


I also see there is a difference in versioning for community and commercial Activiti editions:
Community version pattern: 5.X
Enterprise version pattern: 1.X (recent 1.4)

I also found book, "Manning Activiti in Action" published in 2012, however not sure how much relevant information it contains as compared to recent versions.

Thanks in advance for any further thoughts on this topic.

afaust
Legendary Innovator
Legendary Innovator
The 1.x version is only for the commercial Alfresco Activiti product. The commercial Alfresco Enterprise Edition currently has the latest version of 5.1.

Why different ReST APIs? Because there are different requirements that these APIs are there to meet.

For Alfresco Community / Enterprise it is recommended to use the "<a href="http://docs.alfresco.com/5.1/pra/1/topics/pra-welcome-aara.html">Alfresco ReST API</a>" (in addition to CMIS API for DMS functionality) as the primary entry point. It is a versioned API and abstracts from any internal specifics of a process engine.

The Alfresco webscripts for workflow are primarily meant to be used / consumed by the Share UI client. As such they make some assumptions about the interaction model and may not be very clean in terms of ReST concepts. Some of those webscripts may even be tagged with a lifecycle "internal" to indicate that they are not meant to be relied upon by external clients.

The Alfresco Activiti ReST API "only" has to provide access to its single process engine (and no additional funny business around documents, sites etc.) so it can be much more specific and low-level, since no one expects any higher level abstractions from it.


So - there are no use case scenarios when to use which API - it is just a matter of product/technology. If you talk with the embedded Activiti engine in Alfresco Community / Enterprise, you use the Alfresco ReST API. If you talk to the Alfresco Activiti product, you use its specific ReST API.

Regards
Axel