Jump To Close Expand all Collapse all Table of contents Development Guide I. Overview Expand section "I. Overview" Collapse section "I. Overview" 1. About This Guide Expand section "1. About This Guide" Collapse section "1. About This Guide" 1.1. Audience 1.2. Prerequisites 2. Red Hat JBoss BRMS and Red Hat JBoss BPM Suite Architecture Expand section "2. Red Hat JBoss BRMS and Red Hat JBoss BPM Suite Architecture" Collapse section "2. Red Hat JBoss BRMS and Red Hat JBoss BPM Suite Architecture" 2.1. Red Hat JBoss Business Rules Management System Expand section "2.1. Red Hat JBoss Business Rules Management System" Collapse section "2.1. Red Hat JBoss Business Rules Management System" 2.1.1. Red Hat JBoss BRMS Key Components 2.1.2. Red Hat JBoss BRMS Features 2.2. Red Hat JBoss Business Process Management Suite Expand section "2.2. Red Hat JBoss Business Process Management Suite" Collapse section "2.2. Red Hat JBoss Business Process Management Suite" 2.2.1. Red Hat JBoss BPM Suite Key Components 2.2.2. Red Hat JBoss BPM Suite Features 2.3. Supported Platforms and APIs 2.4. Use Cases Expand section "2.4. Use Cases" Collapse section "2.4. Use Cases" 2.4.1. Use Case: Business Decision Management in Insurance Industry with Red Hat JBoss BRMS 2.4.2. Use Case: Process-Based Solution in Loan Industry 3. Apache Maven Expand section "3. Apache Maven" Collapse section "3. Apache Maven" 3.1. Maven Repositories 3.2. Using the Maven Repository in Your Project 3.3. Maven Project Configuration File 3.4. Maven Settings File 3.5. Dependency Management 3.6. Integrated Maven Dependencies 3.7. Uploading Artifacts to Maven Repository 3.8. Deploying Red Hat JBoss BPM Suite Artifacts to Red Hat JBoss Fuse 4. Install and Set up Red Hat JBoss Developer Studio Expand section "4. Install and Set up Red Hat JBoss Developer Studio" Collapse section "4. Install and Set up Red Hat JBoss Developer Studio" 4.1. Installing Red Hat JBoss Developer Studio Plug-ins 4.2. Configuring Red Hat JBoss BRMS/BPM Suite Server 4.3. Importing Projects from Git Repository into Red Hat JBoss Developer Studio 4.4. Kie Navigator II. All About Rules Expand section "II. All About Rules" Collapse section "II. All About Rules" 5. Rule Algorithms Expand section "5. Rule Algorithms" Collapse section "5. Rule Algorithms" 5.1. PHREAK Algorithm 5.2. Rule Evaluation With PHREAK Algorithm 5.3. Rete Algorithm Expand section "5.3. Rete Algorithm" Collapse section "5.3. Rete Algorithm" 5.3.1. ReteOO 5.4. Switching Between PHREAK and ReteOO 6. Getting Started with Rules and Facts Expand section "6. Getting Started with Rules and Facts" Collapse section "6. Getting Started with Rules and Facts" 6.1. Creating and Executing Rules Expand section "6.1. Creating and Executing Rules" Collapse section "6.1. Creating and Executing Rules" 6.1.1. Creating and Executing Rules Using Plain Java 6.1.2. Creating and Executing Rules Using Maven 6.1.3. Creating and Executing Rules Using Red Hat JBoss Developer Studio 6.1.4. Creating and Executing Rules Using Business Central 6.2. Execution of Rules Expand section "6.2. Execution of Rules" Collapse section "6.2. Execution of Rules" 6.2.1. Agenda 6.2.2. Agenda Processing 6.2.3. Conflict Resolution 6.2.4. AgendaGroup 6.2.5. setFocus() 6.2.6. ActivationGroup 6.3. Inference Expand section "6.3. Inference" Collapse section "6.3. Inference" 6.3.1. The Inference Engine 6.3.2. Inference Example 6.4. Truth Maintenance 6.5. Using Decision Tables in Spreadsheets Expand section "6.5. Using Decision Tables in Spreadsheets" Collapse section "6.5. Using Decision Tables in Spreadsheets" 6.5.1. OpenOffice Example 6.5.2. Rules and Spreadsheets 6.5.3. The RuleTable Keyword 6.5.4. The RuleSet Keyword 6.5.5. Data-Defining Cells 6.5.6. Rule Table Columns 6.5.7. Rule Set Entries 6.5.8. Rule Attribute Entries in Rule Set Area 6.5.9. The RuleTable Cell 6.5.10. Column Types 6.5.11. Conditional Elements 6.5.12. Action Statements 6.5.13. Metadata Statements 6.5.14. Interpolating Cell Data Example 6.5.15. Tips for Working Within Cells 6.5.16. The SpreadsheetCompiler Class 6.5.17. Using Spreadsheet-Based Decision Tables 6.5.18. Lists 6.5.19. Revision Control 6.5.20. Tabular Data Sources 6.6. Dependency Management for Guided Decision Tables, Scorecards, and Rule Templates 6.7. Logging Expand section "6.7. Logging" Collapse section "6.7. Logging" 6.7.1. Configuring Logging Level 7. Complex Event Processing Expand section "7. Complex Event Processing" Collapse section "7. Complex Event Processing" 7.1. Introduction to Complex Event Processing 7.2. Events Expand section "7.2. Events" Collapse section "7.2. Events" 7.2.1. Event Declaration 7.2.2. Event Metadata 7.3. Clock Implementation in Complex Event Processing Expand section "7.3. Clock Implementation in Complex Event Processing" Collapse section "7.3. Clock Implementation in Complex Event Processing" 7.3.1. Session Clock 7.3.2. Available Clock Implementations 7.4. Event Processing Modes Expand section "7.4. Event Processing Modes" Collapse section "7.4. Event Processing Modes" 7.4.1. Cloud Mode 7.4.2. Stream Mode 7.5. Event Streams Expand section "7.5. Event Streams" Collapse section "7.5. Event Streams" 7.5.1. Declaring and Using Entry Points 7.5.2. Negative Pattern in Stream Mode 7.6. Temporal Operations Expand section "7.6. Temporal Operations" Collapse section "7.6. Temporal Operations" 7.6.1. Temporal Reasoning 7.6.2. Temporal Operations 7.6.3. After 7.6.4. Before 7.6.5. Coincides 7.6.6. During 7.6.7. Finishes 7.6.8. Finishes By 7.6.9. Includes 7.6.10. Meets 7.6.11. Met By 7.6.12. Overlaps 7.6.13. Overlapped By 7.6.14. Starts 7.6.15. Started By 7.7. Sliding Windows Expand section "7.7. Sliding Windows" Collapse section "7.7. Sliding Windows" 7.7.1. Sliding Time Windows 7.7.2. Sliding Length Windows 7.8. Memory Management for Events Expand section "7.8. Memory Management for Events" Collapse section "7.8. Memory Management for Events" 7.8.1. Explicit Expiration 7.8.2. Inferred Expiration 8. Working With Rules Expand section "8. Working With Rules" Collapse section "8. Working With Rules" 8.1. About Rule Files Expand section "8.1. About Rule Files" Collapse section "8.1. About Rule Files" 8.1.1. Rule File 8.1.2. Structure of Rule Files 8.2. Operating on Facts Expand section "8.2. Operating on Facts" Collapse section "8.2. Operating on Facts" 8.2.1. Accessing Working Memory 8.3. Using Rule Keywords Expand section "8.3. Using Rule Keywords" Collapse section "8.3. Using Rule Keywords" 8.3.1. Hard Keywords 8.3.2. Soft Keywords 8.3.3. List of Soft Keywords 8.4. Adding Comments to Rule File Expand section "8.4. Adding Comments to Rule File" Collapse section "8.4. Adding Comments to Rule File" 8.4.1. Single Line Comment Example 8.4.2. Multi-Line Comment Example 8.5. Error Messages in Rules Expand section "8.5. Error Messages in Rules" Collapse section "8.5. Error Messages in Rules" 8.5.1. Error Message Format 8.5.2. Error Message Description 8.6. Packaging Expand section "8.6. Packaging" Collapse section "8.6. Packaging" 8.6.1. Import Statements 8.6.2. Using Globals 8.6.3. From Element 8.6.4. Using Globals with E-Mail Service 8.7. Functions in Rules Expand section "8.7. Functions in Rules" Collapse section "8.7. Functions in Rules" 8.7.1. Importing Static Method Example 8.7.2. Calling Function Declaration Example 8.7.3. Type Declarations 8.7.4. Declaring New Types 8.7.5. Declaring New Fact Type Example 8.7.6. Declaring New Fact Type Additional Example 8.7.7. Using Import Example 8.7.8. Generated Java Classes 8.7.9. Generated Java Class Example 8.7.10. Using Declared Types in Rules Example 8.7.11. Declaring Metadata 8.7.12. Working with Metadata Attributes 8.7.13. Declaring Metadata Attribute with Fact Types Example 8.7.14. @position Attribute 8.7.15. @position Example 8.7.16. Predefined Class Level Annotations 8.7.17. @key Attribute Functions 8.7.18. @key Declaration Example 8.7.19. Creating Instance with Key Constructor Example 8.7.20. Positional Arguments 8.7.21. Positional Argument Example 8.7.22. @position Annotation 8.7.23. Example Patterns 8.8. Backward-Chaining Expand section "8.8. Backward-Chaining" Collapse section "8.8. Backward-Chaining" 8.8.1. Backward-Chaining Systems 8.8.2. Cloning Transitive Closures 8.8.3. Defining Query 8.8.4. Transitive Closure Example 8.8.5. Reactive Transitive Queries 8.8.6. Queries with Unbound Arguments 8.8.7. Multiple Unbound Arguments 8.9. Type Declaration Expand section "8.9. Type Declaration" Collapse section "8.9. Type Declaration" 8.9.1. Declaring Metadata for Existing Types 8.9.2. Declaring Metadata for Existing Types Example 8.9.3. Declaring Metadata Using Fully Qualified Class Name Example 8.9.4. Parametrized Constructors for Declared Types Example 8.9.5. Non-Typesafe Classes 8.9.6. Accessing Declared Types from Application Code 8.9.7. Declaring Type 8.9.8. Handling Declared Fact Types Through API Example 8.9.9. Type Declaration Extends 8.9.10. Type Declaration Extends Example 8.9.11. Traits 8.9.12. Traits Example 8.9.13. Core Objects and Traits 8.9.14. @traitable Example 8.9.15. Writing Rules with Traits 8.9.16. Rules with Traits Example 8.9.17. Hidden Fields 8.9.18. Two-Part Proxy 8.9.19. Wrappers 8.9.20. Wrapper Example 8.9.21. Wrapper with isA Annotation Example 8.9.22. Removing Traits 8.10. Rule Attributes Expand section "8.10. Rule Attributes" Collapse section "8.10. Rule Attributes" 8.10.1. Timer Attribute Example 8.10.2. Timers 8.10.3. Cron Timer Example 8.10.4. Calendars 8.10.5. Quartz Calendar Example 8.10.6. Registering Calendar 8.10.7. Left Hand Side 8.10.8. Conditional Elements 8.10.9. Rule Without Conditional Element Example 8.11. Patterns Expand section "8.11. Patterns" Collapse section "8.11. Patterns" 8.11.1. Pattern Example 8.11.2. Pattern Matching 8.11.3. Pattern Binding 8.11.4. Pattern Binding with Variable Example 8.11.5. Constraints 8.12. Elements and Variables Expand section "8.12. Elements and Variables" Collapse section "8.12. Elements and Variables" 8.12.1. Property Access on Java Beans (POJOs) 8.12.2. POJO Example 8.12.3. Working with POJOs 8.12.4. POJO Fallbacks 8.12.5. Fallback Example 8.12.6. Java Expressions 8.12.7. Comma-Separated Operators 8.12.8. Comma-Separated Operator Example 8.12.9. Binding Variables 8.12.10. Binding Variable Examples 8.12.11. Unification 8.12.12. Unification Example 8.12.13. Options and Operators in Red Hat JBoss BRMS 8.12.14. Operator Precedence 8.12.15. Fine Grained Property Change Listeners 8.12.16. Fine Grained Property Change Listener Example 8.12.17. Working with Fine Grained Property Change Listeners 8.12.18. Using Patterns with @watch 8.12.19. @watch Example 8.12.20. Using @PropertySpecificOption 8.12.21. Basic Conditional Elements 8.12.22. Conditional Element forall 8.12.23. forall Examples 8.12.24. Conditional Element from 8.12.25. from Examples 8.12.26. Conditional Element collect 8.12.27. Conditional Element accumulate 8.12.28. Conditional Element eval 8.12.29. eval Conditional Element Examples 8.12.30. Right Hand Side 8.12.31. RHS Convenience Methods 8.12.32. Convenience Methods Using Drools Variable 8.12.33. Convenience Methods Using kcontext Variable 8.12.34. Modify Statement 8.12.35. Query Examples 8.12.36. QueryResults Example 8.12.37. Queries Calling Other Queries 8.12.38. Queries Calling Other Queries Example 8.12.39. Unification for Derivation Queries 8.13. Searching Working Memory Using Query Expand section "8.13. Searching Working Memory Using Query" Collapse section "8.13. Searching Working Memory Using Query" 8.13.1. Queries 8.13.2. Live Queries 8.13.3. ViewChangedEventListener Implementation Example 8.14. Domain Specific Languages (DSLs) Expand section "8.14. Domain Specific Languages (DSLs)" Collapse section "8.14. Domain Specific Languages (DSLs)" 8.14.1. DSL Editor 8.14.2. Using DSLs 8.14.3. DSL Example 8.14.4. About DSL Parser 8.14.5. About DSL Compiler 8.14.6. DSL Syntax Examples 8.14.7. Chaining DSL Expressions 8.14.8. Adding Constraints to Facts 8.14.9. Tips for Developing DSLs 8.14.10. DSL and DSLR Reference 8.14.11. DSL Entry Description 8.14.12. Debug Options for DSL Expansion 8.14.13. DSL Definition Example 8.14.14. Transformation of DSLR File 8.14.15. String Transformation Functions 8.14.16. Stringing DSL Transformation Functions 9. Using Red Hat JBoss Developer Studio to Create and Test Rules Expand section "9. Using Red Hat JBoss Developer Studio to Create and Test Rules" Collapse section "9. Using Red Hat JBoss Developer Studio to Create and Test Rules" 9.1. Red Hat JBoss Developer Studio Drools Perspective 9.2. Red Hat JBoss BRMS Runtimes Expand section "9.2. Red Hat JBoss BRMS Runtimes" Collapse section "9.2. Red Hat JBoss BRMS Runtimes" 9.2.1. Defining a Red Hat JBoss BRMS Runtime 9.2.2. Selecting a Runtime for Your Red Hat JBoss BRMS Project 9.2.3. Changing the Runtime of Your Red Hat JBoss BRMS Project 9.2.4. Configuring the Red Hat JBoss BRMS Server 9.3. Exploring Red Hat JBoss BRMS Application 9.4. Creating a Red Hat JBoss BRMS Project 9.5. Using Textual Rule Editor 9.6. Red Hat JBoss BRMS Views 9.7. Debugging Rules Expand section "9.7. Debugging Rules" Collapse section "9.7. Debugging Rules" 9.7.1. Creating Breakpoints III. All About Processes Expand section "III. All About Processes" Collapse section "III. All About Processes" 10. Getting Started with Processes Expand section "10. Getting Started with Processes" Collapse section "10. Getting Started with Processes" 10.1. The Red Hat JBoss BPM Suite Engine 10.2. Integrating BPM Suite Engine With Other Services 11. Working with Processes Expand section "11. Working with Processes" Collapse section "11. Working with Processes" 11.1. BPMN 2.0 Notation Expand section "11.1. BPMN 2.0 Notation" Collapse section "11.1. BPMN 2.0 Notation" 11.1.1. Business Process Model and Notation (BPMN) 2.0 Specification 11.1.2. BPMN 2.0 Process Example 11.1.3. Supported Elements and Attributes in BPMN 2.0 Specification 11.1.4. Loading and Executing a BPMN2 Process Into Repository 11.2. What Comprises a Business Process Expand section "11.2. What Comprises a Business Process" Collapse section "11.2. What Comprises a Business Process" 11.2.1. Process Nodes 11.2.2. Process Properties 11.2.3. Defining Processes Using XML 11.3. Activities Expand section "11.3. Activities" Collapse section "11.3. Activities" 11.3.1. Tasks 11.3.2. Subprocesses 11.4. Data 11.5. Events Expand section "11.5. Events" Collapse section "11.5. Events" 11.5.1. Start Events 11.5.2. End Events 11.5.3. Intermediate Events Expand section "11.5.3. Intermediate Events" Collapse section "11.5.3. Intermediate Events" 11.5.3.1. Catching Intermediate Events 11.5.3.2. Throwing Intermediate Events 11.6. Gateways Expand section "11.6. Gateways" Collapse section "11.6. Gateways" 11.6.1. Gateway Types Expand section "11.6.1. Gateway Types" Collapse section "11.6.1. Gateway Types" 11.6.1.1. Event-Based Gateway 11.6.1.2. Parallel Gateway 11.6.1.3. Inclusive Gateway 11.6.1.4. Data-Based Exclusive Gateway 11.7. Variables 11.8. Assignment 11.9. Action Scripts 11.10. Constraints 11.11. Timers 11.12. Multi-Threading Expand section "11.12. Multi-Threading" Collapse section "11.12. Multi-Threading" 11.12.1. Multi-Threading 11.12.2. Engine Execution 11.12.3. Job Executor for Asynchronous Execution 11.12.4. Using Job Executor in Embedded Mode 11.12.5. Hello World Example with Embedded Job Executor 11.12.6. Using Job Executor in Business Central 11.12.7. Multiple Sessions and persistence 11.12.8. Asynchronous Events 11.12.9. Technical exceptions Expand section "11.12.9. Technical exceptions" Collapse section "11.12.9. Technical exceptions" 11.12.9.1. Technical exception examples Expand section "11.12.9.1. Technical exception examples" Collapse section "11.12.9.1. Technical exception examples" 11.12.9.1.1. Service Task handlers 11.12.9.1.2. Exception handling classes 11.12.9.1.3. Exception service 11.12.9.1.4. Handling errors with Signals 11.12.9.1.5. Extracting information from WorkflowRuntimeException 11.13. Process Fluent API Expand section "11.13. Process Fluent API" Collapse section "11.13. Process Fluent API" 11.13.1. Using the Process Fluent API to Create Business Process 11.13.2. Process Fluent API Example 11.14. Testing Business Processes Expand section "11.14. Testing Business Processes" Collapse section "11.14. Testing Business Processes" 11.14.1. JbpmJUnitBaseTestCase 11.14.2. Configuring Persistence 11.14.3. Testing Integration with External Services 12. Human Tasks Management Expand section "12. Human Tasks Management" Collapse section "12. Human Tasks Management" 12.1. Human Tasks 12.2. Using User Tasks in Processes 12.3. Data Mapping 12.4. Task Lifecycle 12.5. Task Permissions Expand section "12.5. Task Permissions" Collapse section "12.5. Task Permissions" 12.5.1. Task Permissions Matrix 12.6. Task Service Expand section "12.6. Task Service" Collapse section "12.6. Task Service" 12.6.1. Task Service and Process Engine 12.6.2. Task Service API 12.6.3. Interacting with the Task Service 12.6.4. Accessing Task Variables Using TaskEventListener 12.6.5. Task Service Data Model 12.6.6. Connecting to Custom Directory Information Services 12.6.7. LDAP Connection Expand section "12.6.7. LDAP Connection" Collapse section "12.6.7. LDAP Connection" 12.6.7.1. Connecting to LDAP 12.7. Task Escalation and Notifications Expand section "12.7. Task Escalation and Notifications" Collapse section "12.7. Task Escalation and Notifications" 12.7.1. Configuring a Custom Implementation of Email Notification Events 12.8. Retrieving Process and Task Information 12.9. Advanced Queries with QueryService Expand section "12.9. Advanced Queries with QueryService" Collapse section "12.9. Advanced Queries with QueryService" 12.9.1. QueryResultMapper 12.9.2. QueryParamBuilder 12.9.3. Implementing QueryParamBuilder 12.9.4. QueryService in Embedded Mode 12.9.5. Advanced Queries Through Intelligent Process Server 12.10. Process Instance Migration 13. Persistence and Transactions Expand section "13. Persistence and Transactions" Collapse section "13. Persistence and Transactions" 13.1. Process Instance State Expand section "13.1. Process Instance State" Collapse section "13.1. Process Instance State" 13.1.1. Runtime State 13.1.2. Binary Persistence 13.1.3. Data Model Description 13.1.4. Safe Points 13.2. Audit Log Expand section "13.2. Audit Log" Collapse section "13.2. Audit Log" 13.2.1. Audit Data Model 13.2.2. Audit Data Model Description 13.2.3. Storing Process Events in a Database 13.2.4. Storing Process Events in a JMS Queue 13.2.5. Auditing Variables 13.2.6. Building and Registering Custom Indexers 13.3. Transactions 13.4. Implementing Container Managed Transaction 13.5. Using Persistence Expand section "13.5. Using Persistence" Collapse section "13.5. Using Persistence" 13.5.1. Adding Dependencies 13.5.2. Manually Configuring Red Hat JBoss BPM Suite Engine to Use Persistence 14. Using Red Hat JBoss Developer Studio to Create and Test Processes Expand section "14. Using Red Hat JBoss Developer Studio to Create and Test Processes" Collapse section "14. Using Red Hat JBoss Developer Studio to Create and Test Processes" 14.1. Red Hat JBoss BPM Suite Runtime Expand section "14.1. Red Hat JBoss BPM Suite Runtime" Collapse section "14.1. Red Hat JBoss BPM Suite Runtime" 14.1.1. Red Hat JBoss BPM Suite Runtime 14.1.2. Setting the Red Hat JBoss BPM Suite Runtime 14.1.3. Configuring Red Hat JBoss BPM Suite Server 14.2. Importing And Cloning Projects from Git Repository into Red Hat JBoss Developer Studio 14.3. Components of Red Hat JBoss BPM Suite Application 14.4. Creating Red Hat JBoss BPM Suite Project 14.5. Converting Existing Java Project to Red Hat JBoss BPM Suite Project 14.6. Creating Processes in Red Hat JBoss Developer Studio 14.7. Modeling and Validating Processes in Red Hat JBoss Developer Studio 14.8. Audit View Expand section "14.8. Audit View" Collapse section "14.8. Audit View" 14.8.1. File Logger 14.9. Synchronizing Red Hat JBoss Developer Studio Workspace with Business Central Repositories Expand section "14.9. Synchronizing Red Hat JBoss Developer Studio Workspace with Business Central Repositories" Collapse section "14.9. Synchronizing Red Hat JBoss Developer Studio Workspace with Business Central Repositories" 14.9.1. Importing Business Central Repository 14.9.2. Committing Changes to Business Central 14.9.3. Retrieving Changes from Business Central Repository 14.9.4. Importing Individual Projects from Repository 14.9.5. Adding Red Hat JBoss BPM Suite Libraries to Project Class Path 15. Case Management Expand section "15. Case Management" Collapse section "15. Case Management" 15.1. Introduction 15.2. Use Cases 15.3. case management in Red Hat JBoss BPM Suite 15.4. Starting a Case 15.5. Example Case Model IV. Intelligent Process Server and Realtime Decision Server Expand section "IV. Intelligent Process Server and Realtime Decision Server" Collapse section "IV. Intelligent Process Server and Realtime Decision Server" 16. The REST API for Intelligent Process Server Execution Expand section "16. The REST API for Intelligent Process Server Execution" Collapse section "16. The REST API for Intelligent Process Server Execution" 16.1. BRMS Commands 16.2. Managing Processes 16.3. Managing Process Definitions 16.4. Managing User Tasks Expand section "16.4. Managing User Tasks" Collapse section "16.4. Managing User Tasks" 16.4.1. Managing Task Instances 16.4.2. Managing Task Instance Data 16.5. Querying Process Instances 16.6. Querying Tasks 16.7. Advanced Queries for the Intelligent Process Server 16.8. Managing Job Execution 17. The REST API for Intelligent Process Server Administration Expand section "17. The REST API for Intelligent Process Server Administration" Collapse section "17. The REST API for Intelligent Process Server Administration" 17.1. Managed Intelligent Process Server Environment 17.2. Unmanaged Intelligent Process Server Environment 18. Intelligent Process Server UI Extension Expand section "18. Intelligent Process Server UI Extension" Collapse section "18. Intelligent Process Server UI Extension" 18.1. Using the Intelligent Process Server UI Extension 19. Intelligent Process Server Java Client API Overview Expand section "19. Intelligent Process Server Java Client API Overview" Collapse section "19. Intelligent Process Server Java Client API Overview" 19.1. Client Configuration Expand section "19.1. Client Configuration" Collapse section "19.1. Client Configuration" 19.1.1. JMS Interaction Patterns 19.2. Server Response 19.3. Inserting and Executing Commands 19.4. Listing Server Capabilities 19.5. Listing Containers 19.6. Handling Containers 19.7. Available Intelligent Process Server Clients 19.8. Listing Available Business Processes 19.9. Starting a Business Processes 19.10. QueryDefinition for Intelligent Process Server Using Java Client API V. KIE Expand section "V. KIE" Collapse section "V. KIE" 20. Java APIs Expand section "20. Java APIs" Collapse section "20. Java APIs" 20.1. KIE API Expand section "20.1. KIE API" Collapse section "20.1. KIE API" 20.1.1. KIE Framework 20.1.2. KIE Base 20.1.3. KIE Session Expand section "20.1.3. KIE Session" Collapse section "20.1.3. KIE Session" 20.1.3.1. Process Runtime Interface 20.1.3.2. Event Listeners Expand section "20.1.3.2. Event Listeners" Collapse section "20.1.3.2. Event Listeners" 20.1.3.2.1. Process Event Listeners 20.1.3.2.2. Rule Event Listeners 20.1.3.3. Loggers 20.1.3.4. Correlation Keys 20.1.3.5. Threads 20.1.3.6. Globals 20.1.4. KIE File System 20.1.5. KIE Module 20.1.6. KIE Container Expand section "20.1.6. KIE Container" Collapse section "20.1.6. KIE Container" 20.1.6.1. KIE Base Configuration 20.1.7. KIE Maven Plug-in 20.1.8. KIE Repository 20.1.9. KIE Scanner 20.1.10. Command Executor Expand section "20.1.10. Command Executor" Collapse section "20.1.10. Command Executor" 20.1.10.1. Marshalling Expand section "20.1.10.1. Marshalling" Collapse section "20.1.10.1. Marshalling" 20.1.10.1.1. XStream 20.1.10.2. Supported Commands Expand section "20.1.10.2. Supported Commands" Collapse section "20.1.10.2. Supported Commands" 20.1.10.2.1. BatchExecutionCommand 20.1.10.2.2. InsertObjectCommand 20.1.10.2.3. RetractCommand 20.1.10.2.4. ModifyCommand 20.1.10.2.5. GetObjectCommand 20.1.10.2.6. InsertElementsCommand 20.1.10.2.7. FireAllRulesCommand 20.1.10.2.8. StartProcessCommand 20.1.10.2.9. SignalEventCommand 20.1.10.2.10. CompleteWorkItemCommand 20.1.10.2.11. AbortWorkItemCommand 20.1.10.2.12. QueryCommand 20.1.10.2.13. SetGlobalCommand 20.1.10.2.14. GetGlobalCommand 20.1.10.2.15. GetObjectsCommand 20.1.11. KIE Configuration Expand section "20.1.11. KIE Configuration" Collapse section "20.1.11. KIE Configuration" 20.1.11.1. Build Result Severity 20.1.11.2. StatelessKieSession Expand section "20.1.11.2. StatelessKieSession" Collapse section "20.1.11.2. StatelessKieSession" 20.1.11.2.1. Sequential Mode 20.1.11.3. Marshalling 20.1.11.4. KIE Persistence 20.1.12. KIE Sessions Expand section "20.1.12. KIE Sessions" Collapse section "20.1.12. KIE Sessions" 20.1.12.1. Stateless KIE Sessions Expand section "20.1.12.1. Stateless KIE Sessions" Collapse section "20.1.12.1. Stateless KIE Sessions" 20.1.12.1.1. Configuring Rules in Stateless Session 20.1.12.1.2. Configuring Rules with Multiple Objects 20.1.12.2. Stateful KIE Sessions Expand section "20.1.12.2. Stateful KIE Sessions" Collapse section "20.1.12.2. Stateful KIE Sessions" 20.1.12.2.1. Common Use Cases for Stateful Sessions 20.1.12.2.2. Stateful Session Monitoring Example 20.2. Runtime Manager Expand section "20.2. Runtime Manager" Collapse section "20.2. Runtime Manager" 20.2.1. Usage Expand section "20.2.1. Usage" Collapse section "20.2.1. Usage" 20.2.1.1. Usage Scenario 20.2.1.2. Building Runtime Manager 20.2.2. Runtime Environment 20.2.3. Strategies Expand section "20.2.3. Strategies" Collapse section "20.2.3. Strategies" 20.2.3.1. Singleton Strategy 20.2.3.2. Per Request Strategy 20.2.3.3. Per Process Instance Strategy 20.2.4. Handlers and Listeners Expand section "20.2.4. Handlers and Listeners" Collapse section "20.2.4. Handlers and Listeners" 20.2.4.1. Registering Through Registerable Items Factory 20.2.4.2. Registering Through Configuration Files 20.2.4.3. Registering in CDI Environment 20.2.5. Control Parameters 20.2.6. Variable Persistence Strategy 20.3. KIE Services Expand section "20.3. KIE Services" Collapse section "20.3. KIE Services" 20.3.1. Deployment Service 20.3.2. Definition Service 20.3.3. Process Service 20.3.4. Runtime Data Service 20.3.5. User Task Service 20.3.6. Query Service Expand section "20.3.6. Query Service" Collapse section "20.3.6. Query Service" 20.3.6.1. Terminology 20.3.6.2. Query Result Mapper 20.3.6.3. Query Parameter Builder 20.3.6.4. Typical usage scenario 20.3.7. Process Instance Migration Service Expand section "20.3.7. Process Instance Migration Service" Collapse section "20.3.7. Process Instance Migration Service" 20.3.7.1. Migration report 20.3.7.2. Known limitations 20.3.7.3. Example 20.3.8. Form Provider Service 20.3.9. Executor Service 20.4. CDI Integration Expand section "20.4. CDI Integration" Collapse section "20.4. CDI Integration" 20.4.1. Configuring CDI Integration 20.4.2. Deployment Service as CDI Bean Expand section "20.4.2. Deployment Service as CDI Bean" Collapse section "20.4.2. Deployment Service as CDI Bean" 20.4.2.1. Saving and Removing Deployments from Database 20.4.2.2. Available Deployment Services 20.4.3. Runtime Manager as CDI Bean 21. Remote API Expand section "21. Remote API" Collapse section "21. Remote API" 21.1. REST API Expand section "21.1. REST API" Collapse section "21.1. REST API" 21.1.1. Knowledge Store REST API Expand section "21.1.1. Knowledge Store REST API" Collapse section "21.1.1. Knowledge Store REST API" 21.1.1.1. Job Calls 21.1.1.2. Organizational Unit Calls 21.1.1.3. Repository Calls 21.1.1.4. Maven Calls 21.1.2. Deployment REST API Expand section "21.1.2. Deployment REST API" Collapse section "21.1.2. Deployment REST API" 21.1.2.1. Deployment Calls 21.1.2.2. Asynchronous Calls 21.1.3. Process Image REST API 21.1.4. Runtime REST API Expand section "21.1.4. Runtime REST API" Collapse section "21.1.4. Runtime REST API" 21.1.4.1. Query Parameters Expand section "21.1.4.1. Query Parameters" Collapse section "21.1.4.1. Query Parameters" 21.1.4.1.1. Map Parameters 21.1.4.1.2. Pagination 21.1.4.1.3. Object Data Type Parameters 21.1.4.2. Runtime Calls Expand section "21.1.4.2. Runtime Calls" Collapse section "21.1.4.2. Runtime Calls" 21.1.4.2.1. Process Calls 21.1.4.2.2. Signal Calls 21.1.4.2.3. Work Item Calls 21.1.4.2.4. History Calls 21.1.4.3. Task Calls Expand section "21.1.4.3. Task Calls" Collapse section "21.1.4.3. Task Calls" 21.1.4.3.1. Task Operations 21.1.4.3.2. Content Operations 21.1.5. REST Query API Expand section "21.1.5. REST Query API" Collapse section "21.1.5. REST Query API" 21.1.5.1. URL Layout 21.1.5.2. Query Parameters Expand section "21.1.5.2. Query Parameters" Collapse section "21.1.5.2. Query Parameters" 21.1.5.2.1. Range and Regular Expression Parameters 21.1.5.2.2. Range Query Parameters 21.1.5.2.3. Regular Expression Query Parameters 21.1.5.3. List of Query Parameters 21.1.5.4. Query Output Format 21.1.6. Execute Operations Expand section "21.1.6. Execute Operations" Collapse section "21.1.6. Execute Operations" 21.1.6.1. Execute Operation Commands 21.1.7. REST API Summary 21.1.8. Control of REST API 21.2. JMS Expand section "21.2. JMS" Collapse section "21.2. JMS" 21.2.1. JMS Queue Setup 21.2.2. Example JMS Usage 21.3. SOAP API Expand section "21.3. SOAP API" Collapse section "21.3. SOAP API" 21.3.1. CommandWebService 21.4. EJB Interface Expand section "21.4. EJB Interface" Collapse section "21.4. EJB Interface" 21.4.1. EJB Interface Artifacts 21.4.2. Generating EJB Services WAR File 21.5. Remote Java API Expand section "21.5. Remote Java API" Collapse section "21.5. Remote Java API" 21.5.1. Common Configuration 21.5.2. REST Client Expand section "21.5.2. REST Client" Collapse section "21.5.2. REST Client" 21.5.2.1. Retrieving Potential Owners of Human Task 21.5.2.2. Calling Tasks Without Deployment ID 21.5.2.3. Custom Model Objects and Remote API 21.5.3. JMS Client 21.5.4. Supported Methods 21.6. Troubleshooting Expand section "21.6. Troubleshooting" Collapse section "21.6. Troubleshooting" 21.6.1. Serialization Issues 21.6.2. Insecure Task Operations A. Versioning information Legal Notice Settings Close Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Language and Page Formatting Options Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Part V. KIE Previous Next