Book Image

OSWorkflow: A guide for Java developers and architects to integrating open-source Business Process Management

Book Image

OSWorkflow: A guide for Java developers and architects to integrating open-source Business Process Management

Overview of this book

OSWorkflow is an open-source workflow engine written entirely in Java with a flexible approach and a technical user-base target. It is released under the Apache License. You can create simple or complex workflows, depending on your needs. You can focus your work on the business logic and rules. No more Petri Net or finite state machine coding! You can integrate OSWorkflow into your application with a minimum of fuss. OSWorkflow provides all of the workflow constructs that you might encounter in real-life processes, such as steps, conditions, loops, splits, joins, roles, etc.This book explains in detail all the various aspects of OSWorkflow, without assuming any prior knowledge of Business Process Management. Real-life examples are used to clarify concepts.
Table of Contents (13 chapters)
OSWorkflow
Credits
About the Author
About the Reviewers
Introduction

JobStores


The JobStore interface designed in Quartz is responsible for the persistence and retrieval of all job and trigger data. There are two built-in implementations of the JobStore interface, the RamJobStore and the JDBCJobStore.

The RamJobStore stores the job, trigger, and calendar data in memory, losing its contents after JVM restarts. On the other hand, JDBCJobStore uses the JDBC API to store the same data.

The JDBCJobStore uses a delegate to use specific functions of each database, for example, DB2, PostgreSQL, etc.

The JobStore configuration is located in the quartz.properties file. To set the JobStore, add the following line to the configuration file, if you want to use the RamJobStore:

org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore

The configuration of the JDBCJobStore is a little more complex as it involves datasources, transactions, and delegates:

To use local JDBC transactions, you only need to set the following parameters:

org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore...