Chapter 4. Working with the Activiti process engine
This chapter covers
- Setting up a development environment
- Understanding the Activiti API
- Implementing processes with plain Java
- Using Spring with Activiti
It’s time to take a look at the core asset of the Activiti platform, the Activiti process engine. We already looked at a simple example in chapter 1 and at the Activiti tool stack in chapter 3, but, in this chapter, we’ll discuss how you can use the Activiti Java API to interact with and use the process engine in a lot more detail.
To develop business process applications, you first have to set up a decent development environment, including a Maven configuration. We’ll cover this first. Then, we’ll take a look at the Activiti API, which will provide the necessary interfaces to start new processes, claim user tasks, and query the process engine for specific process instances, for example. After that, we’ll explore the Java service tasks of Activiti, which provide a way to implement BPMN 2.0 processes with plain Java logic. When there’s no need for web service interfaces or other external interfaces, the Java service tasks provide an easy-to-use framework to build processes. We’ll also discuss how to execute these Java service tasks asynchronously. Finally, we’ll look at how to apply Spring beans inside the BPMN 2.0 processes and even run the whole Activiti engine within a Spring container.