Chapter 6. Pageflows and business processes

Chapter 6. Pageflows and business processes

6.1. Pageflow in Seam
6.1.1. The two navigation models
6.1.2. Seam and the back button
6.2. Using jPDL pageflows
6.2.1. Installing pageflows
6.2.2. Starting pageflows
6.2.3. Page nodes and transitions
6.2.4. Controlling the flow
6.2.5. Ending the flow
6.3. Business process management in Seam
6.4. Using jPDL business process definitions
6.4.1. Installing process definitions
6.4.2. Initializing actor ids
6.4.3. Initiating a business process
6.4.4. Task assignment
6.4.5. Task lists
6.4.6. Performing a task

JBoss jBPM is a business process management engine for any Java SE or EE environment. jBPM lets you represent a business process or user interaction as a graph of nodes representing wait states, decisions, tasks, web pages, etc. The graph is defined using a simple, very readable, XML dialect called jPDL, and may be edited and visualised graphically using an eclipse plugin. jPDL is an extensible language, and is suitable for a range of problems, from defining web application page flow, to traditional workflow management, all the way up to orchestration of services in a SOA environment.

Seam applications use jBPM for two different problems:

Don't get these two things confused ! They operate at very different levels or granularity. Pageflow, conversation and task all refer to a single interaction with a single user. A business process spans many tasks. Futhermore, the two applications of jBPM are totally orthogonal. You can use them together or independently or not at all.

You don't have to know jDPL to use Seam. If you're perfectly happy defining pageflow using JSF or Seam navigation rules, and if your application is more data-driven that process-driven, you probably don't need jBPM. But we're finding that thinking of user interaction in terms of a well-defined graphical representation is helping us build more robust applications.

Please refer to the jBPM documentation for a more thorough overview of the sophisticated features that jBPM provides for managing complex business processes.