Category Blogs

A Glance of BPMN 2.0 and Alfresco BPM Engine Activiti

Alfresco Activiti is a well-known open source BPM (Business Process Management) engine which may execute business processes depicted in BPMN 2.0. The authors of Alfresco Activiti developed jBPM for Red Hat previously, and after they left Alfresco in 2016, they forked Activiti code and created another open source workflow engine called Flowable. Later, Alfresco Activiti was re-branded as Alfresco Process Services (APS).

Before Activiti, the market of BPMN engines is already very crowded, Oracle, SAP, IBM and many others offer solutions. There are even more BPMN diagram tools, such as MS Visio,  LucidChart, MagicDraw, yEd and Sparx EA, etc...

Read More

PostgreSQL: Generating Generic Auditing Trigger

PostgreSQL, as one of the best open source object-relational DBMS, is quite popular today. However, it doesn’t provide built-in auditing function, which is required by most production systems.

Let’s see how we generate generic auditing function for a table in PostgreSQL schema. Then we should be able to generate auditing function for the entire schema easily.

Let’s assume we have an input parameter table name , and we have a pre-built auditing table, which contains all fields from source table, in line 5 below, plus all other auditing fields:

 CREATE TABLE schema_name.sample_audit
 (
 	audit_id bigint NOT NULL DEFAULT nextval('schema_name.sample_audit_id_seq'::regclass),
 	id bigint NOT NULL,
 	source table columns ........
Read More

Introducing Xonomy – An Advanced Open Source XML Editor

There are quite a few XML Editors on the market, but it’s really hard to find out one which is nicely implemented and can be used as an integration part of web-based application until we found Xonomy.

Xonomy is written in JavaScript by Michal Boleslav Měchura. It can be embedded in any web pages. It offers a series advanced features, such as syntax highlight, left-click menu, context-based customizable menu items, editable attribute value from picklist, etc. User may even use drag-n-drop to adjust the position of tree node. With all these features, it’s well-equipped as an advanced web-based editor with pre-defined constraints for tree structure, attribute, and attribute values.

In order to use Xonomy in a html page, three components are needed:

  • Xonomy library, including xonomy...
Read More