Home » Author Archives: Joram Barrez

Author Archives: Joram Barrez

Joram is an all-around software engineer with a keen interest in anything that is slightly related to software development. After working with Ruby on Rails at the university, he became a java consultant specializing in jBPM which later led him to joining the jBPM project as JBoss employee. He left JBoss for starting the Activiti project together with Tom Baeyens (also ex-JBoss) at Alfresco .Besides Activiti, he is also heavily involved with iOS development and the workflow features for the Alfresco Mobile app.

Benchmarking the message queue based Activiti Async Executor

java-logo

A bit of history One thing that never ceases to amaze me is how Activiti is being used in some very large organisations at some very impressive scales. In the past, this has led to various optimizations and refactorings, amongst which was the async executor – replacement for the old job executor. For the uninitiated: these executors handle timers and async continuations in ...

Read More »

How the Secure Scripting in Activiti works

java-interview-questions-answers

One of the prominent features of the recent Activiti 5.21.0 release is ‘secure scripting’. The way to enable and use this feature is documented in detail in the Activiti user guide. In this post, I’ll show you how we came to its final implementation and what it’s doing under the hood. And of course, as it is my usual signature style, ...

Read More »

Multi-Tenancy with separate database schemas in Activiti

activiti-logo

One feature request we’ve heard in the past is that of running the Activiti engine in a multi-tenant way where the data of a tenant is isolated from the others. Certainly in certain cloud/SaaS environments this is a must. A couple of months ago I was approached by Raphael Gielen, who is a student at the university of Bonn, working ...

Read More »

Pluggable persistence in Activiti 6

activiti-logo

In the past years, we’ve often heard the request (both from community and our customers) on how to swap the persistence logic of Activiti from relational database to something else. When we announced Activiti 6, one of the promises we made was that we would make exactly this possible. People that have dived into the code of the Activiti engine will ...

Read More »

The performance impact of scripting in processes

java-logo

We often see people using the scripting (for example in a service task, execution listener, etc.) for various purposes. Using scripts versus Java logic makes often sense: It does not need to be packaged into a jar and put on the classpath It makes the process definition more understandable: no need to look into different files The logic is part of the process ...

Read More »

Activiti 6: An Evolution of the Core Engine

activiti-logo

This article describes the changes with regards to the Activiti core engine and how version 6 differs from version 5. All the material here, including the code examples  were presented back in June in Paris, but I believed it was good to also have it written down in blog form for people that don’t like watching Youtube movies (although I think ...

Read More »

My Five Rules for Remote Working

software-development-2-logo

A couple of weeks ago, there was a stir (again) about remote working and its succes and/or failure: it was reported that Reddit, the website where many people lose countless of hours, were forcing all their employees to move to SF. After a similar thing happened at Yahoo last year it made me think about why remote work is such a huge success for us ...

Read More »

Execute Custom queries in Activiti

activiti-logo

(This will probably end up in the user guide of the Activiti 5.15 release, but I wanted to share it already) The Activiti API allows for interacting with the database using a high level API. For example, for retrieving data the Query API and the Native Query API are powerful in its usage. However, for some use cases they might ...

Read More »

Advanced scripting in Activiti: Custom Configuration Injection

java-interview-questions-answers

The scripting task is probably one of the ‘oldest’ classes in the Activiti code base, but I think it is still underused by many. The (perceived?) downsides are of course performance (interpretation vs compilation) and less support from IDE perspective. However, the benefits (imo) outweigh this: Scripts are defined in the process xml itself. No more worries about versioning and ...

Read More »

The Activiti Performance Showdown

jboss-jbpm-logo

The question everybody always asks when they learn about Activiti, is as old as software development itself: “How does it perform?”. Up till now, when you would ask me that same question, I would tell you about how Activiti minimizes database access in every way possible, how we break down the process structure into an ‘execution tree’ which allows for ...

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Advanced Java Guide
  • Java Design Patterns
  • JMeter Tutorial
  • Java 8 Features Tutorial
  • JUnit Tutorial
  • JSF Programming Cookbook
  • Java Concurrency Essentials