The Imixs-Workflow Project is now joining Docker. We provide a first image for a Wildfly application server container. This image will be used as a base for Imixs-Workflow projects like Imixs-Office-Workflow.
Imixs-Workflow 3.7.0 – Final Release
These days we released the latest version of Imixs-Workflow 3.7.0. The new release contains the following enhancements and bugfixes:
- Enhancement: RestClient supports fileupload (Post request)
- Enhancement: XMLItem supports Map and List values
- Enhancement: EntityTableWriter supports formating item values
- Enhancement: WorkflowKernel enhanced logging for followup activities
- Enhancement: FieldMapping of BPMN models supports now static mapping of user groups
- Enhancement: Removed TinyMCE support
- Bugfix: ItemCollection setItemValue – handle list with null values throws exception
- Bugfix: FileUpload Controller is now thread/session safe
- Bugfix: EntityService saveEntity fixed wrong datastsructure durng multiple updates in one transaction
- Bugfix: new Pug-In Exception when item tag is not closed in activity result
You can download the latest version from the Maven repository or GitHub.
BPMN modeling for martians!
Version 1.2.4 of the Eclipse BPMN2 Modeller Plug-In is now available for Eclipse Mars. The new release provides a lot of improvements and bug fixes. See the New & Noteworthy page for what’s new in Eclipse BPMN2 Modeller. The latest version can be installed from the Updatesite.
Version 1.2.4 can be installed together with the Imixs-BPMN Plug-In which is providing extensions to deploy a BPMN 2.0 model into the Imixs-Workflow Engine. Imixs-Workflow is an open source workflow engine for human-centric business process management (BPM) based on the Java EE technology stack. Read more about Imixs-Workflow here.
Imixs-BPMN- new Update available
Today we released a new minor update of the Imixs-BPMN Modelling Plugin for BPMN 2.0. This update contains some layout improvements and also updates to the latest Mars release 1.2.3 of the BPMN2 Plugin.
The new Imixs-BPMN Plugin now also provides a new feature to model schedule events by defining a time-period/delay in workdays. This new modelling feature will be supported with the next upcoming release of Imixs-Workflow 3.7.0.
The plugin can be installed from the Eclipse Marketplace or from the Imixs Update Site:
http://www.imixs.org/org.imixs.eclipse.bpmn2.updatesite/
The latest BPMN2 Plugin for Eclipse Mars can be installed from:
http://download.eclipse.org/bpmn2-modeler/updates/mars/1.2.3
Imixs-Workflow Version 3.6. released
This week we released the new version 3.6 of Imixs-Workflow. Version 3.6.1 includes several bug fixes and new features:
- The AccessPlugin is now no longer merging the acl settings from process and activity entities
- The OwnerPlugin supports now updating owner settings on task level
- The ldap- and mail-plugins are moved into the new Imixs-Adapter project
- New Lucene-Plugin provides an improved concurrency behavior
- BPMNModelHandler did no longer import extensions with the property txtname
- ModelService – findEnvironmentEntity – bugfix query implementation
- LoginController supports now a better testing of user roles
- Support Java 8 Compatibility (Scriptengine-Switch from Rhino to Nashorn)
- BPMN Parser is now supporting collaboration diagrams with multiple workflow groups
The new release is also part of the latest version of Imixs-Office-Workflow.
Imixs Provides New Maven Repository
The Imixs-Workflow project now provides a new public Maven Repositoy on GitHub. The repository is part of the Imixs-Workflow subprojects which are hosted under GitHub/imixs.
The artefacts deployed into the imixs-mvn-repo are mainly used for the open source workflow platform ‘Imixs-Office-Workflow‘. All new artefacts which are not available on the maven central repository will be deployed into the public repository. Artefacts will be available from the current version 2.5 and future versions.
The public repository can be configured into a maven project as follows:
<repositories>
<repository>
<id>imixs-mvn-repo</id>
<url>https://raw.githubusercontent.com/imixs/imixs-mvn-repo/master/</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
Running Imixs-Workflow in a Docker Container
For the development of a business application, which meets the needs of a human-centric workflow, it is a good choice to use the Imixs-Workflow Engine to separate the business and workflow logic. On the other hand the separation of services is one of the core concepts of a modern microservice architecture. With the new Imixs-Microservice project, Imixs-Workflow provides a Docker image, which is containing the Imixs-Workflow Engine running in a WildFly Java EE server. This Docker image can act as a black box for any modern business application. In this architecture, the Imixs-Workflow is responding to RESTful API calls from any core business application.
The Docker Image
The Docker image, provided by the Imixs-Microservice project, can be used out of the box for testing purpose or as a template for a custom docker image to be used in a productive environment. Once the container is started from this image, a custom business process model can be developed and deployed into the workflow engine via the Rest Service API. The project provides a example workflow. This BPMN 2.0 model was designed with the Imixs-BPMN Modeller:
This workflow is a simple example how to track tickets by a support team in a call-centre or a customer-support. After a new ticket was created it is assigned to a support team. Each member of a support team can accept the ticket for further processing. The ticket can be reassigned to the team or closed by solving the ticket.
The following JSON request object shows how a new process instance for the ticket workflow looks like when using the RESTful API :
{"item":[ {"name":"$modelversion","value":{"@type":"xs:string","$":"my-model-definition-0.0.2"}}, {"name":"$processid","value":{"@type":"xs:int","$":"2000"}}, {"name":"$activityid","value":{"@type":"xs:int","$":"1"}}, {"name":"namteam","value":[ {"@type":"xs:string","$":"admin"}, {"@type":"xs:string","$":"eddy"}, {"@type":"xs:string","$":"anna"} ]}, {"name":"_subject","value":{"@type":"xs:string","$":"Some usefull data.."}} ]}
After this JSON object was send to the Rest Service by a POST request, the Imixs-Workflow engine creates a new process instance assigned to the task ‘New Ticket’ and triggers the Event ‘Submit’ to assign the ticket to the support team. The process instance is stored into a Postgres Database.
Each member of the team can now request a task list with all open tickets assigned to himself.
curl --user admin:adminadmin http://localhost:8080/imixs-microservice/workflow/worklist
Each workitem included in the result provides a set of attributes managed by the Imixs-Workflow engine. This information can be used to track the status of each ticket.
Using the Imixs-BPMN modelling tool each event can be modelled with a custom behaviour. For example using the Imixs Mail Plug-In a e-mail notification can be send automatically to the support team after a new ticket arrived. Imixs-Workflow provides a set of plug-ins to fit the needs of typical human-centric business tasks.
Access Control and User Management
One of the core features of a human-centric-workflow engine is the routing and user management of process instances. Each process instance running in the Imixs-Workflow engine is assigned to a dedicated list of owners and a read- and write-access-list.
Using this access control list (ACL), it is possible to manage also complex business tasks by managing the visibility of a process instance within an organisation. The ACL of a running process instance maps to the role- and user management provided by the Java EE Application server. The Imixs-Microservice provides a integrated user service which can be used to add new users or changing there access level within the workflow engine.
Conclusion
Running Imixs-Workflow as a black box workflow server is an exciting approach which can bring a new point of view to a modern microservice architecture. Providing a Docker file the Imixs-Microservice can be deployed and started easily, thus the configuration of a own server environment is no longer necessary. This is also a good starting point to develop a Docker container for productive environments.
Read more about the Imixs-Microservice on the project documentation.
Imixs-Workflow – Support of Nashorn JavaScript Engine
With the next release of Imixs-Workflow (3.6.0) the open source workflow engine will support JDK 8 and the new JavaScript Engine Nashorn. The JavaScript engine supports the ECMAScript 5.1 specification. This allows to use new features when executing scripts from the Imixs RulePlugin. The Imixs RulePlugin is part of the workflow engine and allows the execution of business rules defined in a BPMN model. You can find more about the Imixs RuleEngine here. Read also the Rhino Mogration Guide for more details about the new capabilities of the Nashorn Script Engine included in JDK 8.
Merry Christmas – Imixs-Workflow Version 3.5.0 Released
Today – just before Christmas 😉 – we published the latest version of the open source workflow engine ‘Imixs-Workflow’.
The new release includes an improved BPMN parser. The new parser supports BPMN 2.0 link events and also shared events. Shared events can be used to reduce the complexity of large BPMN models. Examples about the new BPMN 2.0 modelling capabilities can be found here.
Also the Imixs-Rest API was improved within this release. The internal JSON parser becomes more robust in parsing native JSON values which makes the usage easier for cross-platform environments.
Finally the Imixs RulePlugin includes a nice improvement: the RulePlugin can now evaluate the object ‘nextTask’, which can be used to evaluate complex business rules with decision maps.
The latest release is available in the maven central repository and the work on the next release 3.6.0 has already begun.
The Imixs project wishes all members of the community Merry Christmas!
* * *
Digital Fleet Management with Imixs-Workflow
Vehicles and mobility gain an increasing importance in the modern economy – a trend despite of digitalisation and networking. Many sectors of the economy use vehicles as an essential resource in the value creation process. Not only in the logistic industry the fleet management becomes increasingly important for companies. Digital fleet management saves costs and optimizes the usage of company cars. One example is the car-sharing in ecologically-thinking enterprises. So, business processes around mobility are playing an important role in the chain of economic value added. Continue reading “Digital Fleet Management with Imixs-Workflow”