jBPM API provides a set of very-high level services. These services help to embed the Business Process Management capabilities into our application. These services delivered a complete set of modules. These modules are as follows:
It has only API classes and interfaces.
It has the core implementation of the services which do not have any framework specific code.
CDI specific code is on top of Jbpm-kie-services
It provides remote capabilities to the interfaces.
EJB specific code is on top of Jbpm-kie-services
It supports time based operation. eg. Timer events, deadlines etc.
Interact with services over remote ejb invocation-currently available for JBoss only.
Some important services are:
Its main responsibility is to deploy or undeploy units. It gives the information of available deployment units and their RuntimeManager instances.
Syntax to create, deploy, retrieve and get runtime manager
It is used to scan process definition that parses the process and extracts important information from it. This information provides the input to the system to inform users about what is expected. Definition Service provides information about:
Process Services focused on runtime operations so use it only when there is need to alter process instance. It is used to give access to the execution environment that allows:
Runtime Data Services
This service refers to the runtime information of Process Instances. It is used as the main source of information.
User Task Services
This service is used to manage the individual user task from start to end. User Task Service allows: