Author

Daniel Meyer

Mar 11, 2015

Camunda meets Cassandra @Zalando: Community Meeting Write-up

Jorn Horstman, André Hartmann and Lukas Niemeier from Zalando Tech visited us yesterday evening to present their prototype for running Camunda engine on Apache Cassandra. They published their slides. Zalando is a “multinational e-commerce company that specializes in selling shoes, clothing and other fashion and lifestyle products online“. 2014 they had a revenue of €2.3 billion and currently have 8,500 employees (Source: Wikipedia). AND: they are Camunda enterprise edition subscribers and use Camunda process engine for processing their orders. Whenever you buy something in their online shop, a process instance is kicked off in Camunda process engine. Zalando’s current Architecture Zalando’s system needs to scale horizontally. Currently Zalando’s order processing runs on PostgreSQL database. They partition their order and process engine…

By Daniel Meyer

Camunda BPM 7.3.0-alpha2 released

A new alpha release of our open source BPM and Workflow platform is available for download. The highlights of this release are: Process Engine and Rest API Native JSON and XML Variable Value Types Improved Sorting: specify multiple sort parameters in Rest API, sort task by variable value Historic Job Log Support for databases: Oracle 12c Partially Order Historic Activity Instances by occurrence Cockpit UI improvements Advanced Process Instance Search (enterprise feature) Tasklist Sort by multiple parameters Sort by variable value Admin Browse Users by Group JavaScript SDK Add group resource Support local variables The full release notes can retrieved from Jira. The known issues as well. You can download Camunda, run it with Docker or add it to your…

By Daniel Meyer

Data mapping and transformation with Camunda Spin and Java 8

Working with text based data formats such as Xml and JSON is a common requirement when implementing BPMN processes.    Since version 7.2 Camunda provides an optional library which is called Camunda Spin. Spin is a lightweight wrapper library which provides a easy to use API when working with text based data formats such as XML and JSON.   In this post I show how the Camunda Spin can be used for implementing data transformations and mapping in combination with the Java 8 Stream processing API and contrast this to the classical Java 6 / 7 way of doing it.    Example The example we use is how to transform a list of The Big Bang Theory episodes (provided as…

By Daniel Meyer

Gracefully Cancelling a Process Instance

Cancelling a running process instance in Camunda is easy:   DELETE /process-instance/{id} or, using Java API: RuntimeService.deleteProcessInstance(String, String) this will simply delete the process instance and remove it from the database. Sometimes this is exactly what you need. However: what if you want to cancel the process instance gracefully? Gracefully in the sense that the effects it has had on the outside world are undone? The answer to this is compensation. In this post I discuss two ways to implement compensation. Internal Compensation Modeling compensation inside the process itself: The compensation undoes the effects of the process so far. This is usually modeled in a way where you attach a compensation handler to those service tasks which have effects on…

By Daniel Meyer

Camunda BPM 7.3.0-alpha1 released

The first alpha release in the 7.3 branch is ready! This is what’s inside: New Documentation Case Management Getting Started Tutorial (Docs) Multi Tenancy (Docs) Process Engine Features Namespaces in XPath (CAM-2342) Typed Variable API in CDI Module (CAM-3152, contribution by Michael Scholz) Support for CMMN Manual Activation Rule (CAM-3169) Use BPMN Call Activity for starting a CMMN Case Instance (CAM-3353) Bugfixes Multi Instance (CAM-986, contribution by Ronny Bräunlich) Variable Serialization (CAM-3167, CAM-3174, CAM-3176, CAM-3179) Cockpit Maintenance Upgrade to Bootstrap 3 (See “Known Issues” below) Switched from Angular UI to Angular Bootstrap (See “Known Issues” below) Support for requirejs-angular-define deprecated Features Improved startup time: All Javascript resources are now minified (including plugins) Advanced Process Instance Search (CAM-2697, enterprise edition only) Camunda Tasklist Features Create a standalone…

By Daniel Meyer

Camunda BPM 7.2.0 Final Released

Today we announce the official release of Camunda BPM 7.2.0 Final. This version constitutes the latest production-ready release of Camunda BPM platform and will be supported with patch updates in the the Camunda Enterprise Subscription. Camunda BPM is open source, you can download the distribution from camunda.com and inspect the sources on GitHub. Highlights of 7.2.0 Final This blogpost provides a summary of the highlights of the 7.2.0 Release. The complete release notes can be found in JIRA. New Tasklist This version ships a completely redesigned Tasklist. The Tasklist is a single page Java Script application which is developed as part of the Camunda BPM community Edition (Open Source). If you are interested in the source code of Camunda Tasklist,…

By Daniel Meyer

Camunda BPM platform 7.2.0-alpha6 released

6 weeks after the last release we release Camunda BPM 7.2.0-alpha6. The release ships Tasklist Flexible layout with collapsible / expandable areas Enhanced Forms Support Embedded Forms Check Box, Select box, Date Picker Advanced Scripting Working with JSON-Serialized Java Objects Save partially filled in form to local Storage AngularJS interoperability Generated Forms External Forms List of Tasks Search by process / task / case variable Navigate through list using Keyboard Process Diagram is displayed (with bpmn.io) Display the value of Process / Case Variables in the list of tasks Support for CMMN Human Tasks Bugfixes Process Engine / REST API CMMN-Based Case Management History for Case Instances and Case Activity Instances Sentries Variable Listeners Transformer Extensions New Typed Variable API…

By Daniel Meyer

Camunda BPM 7.2.0-alpha5 released

Camunda BPM 7.2.0-alpha5 has been released. This alpha release contains Tasklist: Task Filters Improved embedded Forms Many Bugfixes Process Engine: New Persistence layer minimizing Deadlock Issues Persistent Task Filters Improved Deployment Duplicate Filtering Serialize Java Object Variables with JAX-B Many bugfixes CMMN Milestones XSLT as Template Engine (Enterprise Edition Only) WildFly Distribution Documentation Variables Expression Language All in all, 120 issues were closed. See complete Release Notes in Jira. Download Camunda BPM 7.2.0-alpha5 now! Note that this may be the last alpha version before the 7.2.0-Final release which is due November 30st.

By Daniel Meyer

Try All Features of Camunda