The Artima Developer Community
Sponsored Link

Java Community News
Orchestrate Workflow with jBPM

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Frank Sommers

Posts: 2642
Nickname: fsommers
Registered: Jan, 2002

Orchestrate Workflow with jBPM Posted: May 26, 2006 8:40 AM
Reply to this message Reply
Summary
jBPM is JBoss' open source business process management tool. Among other features, jBPM provides a graphical designer to model and orchestrate tasks and workflows corresponding to business processes. In a recent JavaWorld article, Jeff Hanson shows how to manage complex and changing business requirements with jBPM.
Advertisement

An an enterprise application, processes corresponding to business tasks must often coordinate their work to achieve a given outcome. For instance, when submitting a purchase order, information requested from the user may depend on the kind of item ordered, as well as existing information about the user.

For simple applications, such conditional execution of tasks can be modeled with if-then branching defined in a central controller component. In more sophisticated applications, however, the process logic is likely to change with shifting business needs. The Business Process Execution Language (BPEL) provides a standard way to define more flexible workflows, and allows workflow definitions to interact with application logic. JBoss' open-source jBPM implements BPEL and provides a convenient Eclipse plugin to define workflows in a graphical environment.

In a recent JavaWorld article, Manage your business processes with JBoss jBPM, Jeff Hanson introduces jBPM, and illustrates its use with a simple example:

JBoss jBPM acts as an orchestration engine that sits in the middle of enterprise applications, enabling integration and coordination between different applications... Boss jBPM provides a sophisticated platform for designing and developing workflows and business process management systems. Its framework of APIs, domain-specific language, and graphical modeling tool enables developers and business analysts to communicate and operate using a common platform.

A process definition is based on a directed graph.... JBoss jBPM defines process definitions within files written using the JBoss process definition language. jPDL is a graphic-oriented programming (GOP) language based on a model of nodes, transitions, and actions. In this model, nodes are commands executed as they are encountered during the flow of a process definition. Transitions direct the flow of execution of a process definition, and actions perform specific logic as a node or transition event occurs.

Every node in a jBPM process graph can have an associated action. When the jBPM engine encounters a node, it executes that action's action handler. Such action handlers are simple methods that can invoke external systems as well:

public class MyActionHandler  implements ActionHandler {

  public void execute(ExecutionContext executionContext) {
    System.out.println("MyActionHandler has executed: " + executionContext);
  }
}

As such actions execute, jBPM maintains the process' state in the graph, and also logs process events.

Have you used jBPM or BPEL in your applications? What tools do you use to define complex business logic?

Topic: Orchestrate Workflow with jBPM Previous Topic   Next Topic Topic: Dealing with InterruptedException

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use