JBoss jBPM

3 Day Course
Hands On
Official Curriculum
Code JB449

This course has been retired. Please view currently available Java Training Courses.


Collapse all

Introducing and positioning of BPM (1 topic)

  • We start with explaining the landscape of BPM, workflow and orchestration. What are the goals and how does it fit in the overall software development process. All the buzzwords are covered in depth as well as their relation. Briefly, we add some pointers to academic research and specifications and standardisation efforts in this area

Graph Oriented Programming (1 topic)

  • Graph Oriented Programming is the foundation of JBoss jBPM. This chapter explains how JBoss jBPM executes processes and compares it with techniques used by other engines. The graph execution algorithm turns out to be quite simple and it will help in understanding other BPM products

Process Modelling (1 topic)

  • A process language is usually just a set of node-types or workflow constructs that can be used in a graphical designer. JBoss jBPM has an open ended model and already supports two process languages: JPDL and BPEL. This module covers the JPDL nodes that are available for modelling your processes with jBPM. Also the JPDL advanced graph concepts like superstates, runtime actions, exception handling and timers are disclosed

JBoss jBPM Architecture (1 topic)

  • Students will learn the motivations behind the modular architecture of JBoss jBPM, its components and how to deploy them in various environments such as a web application or a clustered J2EE application server. Students will also learn how to plug in their own extensions straight into the jBPM engine. This module also covers how to plug in security, be it as a coupling to an existing security infrastructure or by making use of the JBoss jBPM identity component

Persistence (1 topic)

  • This will cover the jBPM API to store, retrieve and update process executions in the database. This module also covers caching and how to integrate jBPM database into transactions of your environment. The jBPM database updates can be combined in your own transactions or alternatively, a global transactions can be used to couple jBPM transactions with your operations like e.g. sending of asynchronous messages. Lastly this module will cover the jBPM API to use in a clustered deployment of jBPM

Context (1 topic)

  • Process variables contain the information that is maintained for the lifetime of the while process execution. Since this lifetime may span wait states, also the process variables need to be persistable. In this module we'll cover the API's a manipulate the process variables and show how to customize the way that the process variables are stored in the database

Task Management (1 topic)

  • Management of tasks for people is a crucial capability of the JBoss jBPM product. First of all we take a look at the relation between the process and the tasks: the task-node. Second, the assignment of tasks to people will be explained. Third, the optional jBPM organisation component will be covered that allows for support of group assignments and runtime actor expressions. As a final subtopic, we'll provide the concrete pointers to integrate the JBoss jBPM task lists with other applications

Web Forms (1 topic)

  • The web forms mechanism is an extension of the JBoss jBPM web application console that allows process developers to create a web interface for process participants in no time. This is extremely usefull for rapid prototyping and pilot projects. The process developer needs to add minimal information about the data in each task in the process. Step by step we'll show what information needs to be added and how this translates into the webapplication


The student must have the following skills: The student must have previous experience developing an Hibernate application. The student must know how to configure a simple SessionFactory for Hibernate, utilize a Hibernate Session and transactional demarcation and how to perform basic queries on Hibernate objects. Competency with Java application development. Previous exposure to the concepts of workflow and business process modeling (BPM) is not required Experience with JBoss Eclipse or the Eclipse IDE with the JBoss plugin is recommended but not required Basic notions of JUnit test framework is recommended.

Course PDF