Daisy documentation
 PreviousHomeNext 
8.6 Workflow access controlBook Index8.7.2 The “workflow” user

8.7 Workflow deployment

This section describes some deployment and management topics concerning workflow.

8.7.1 jBPM persistence (database tables)

jBPM stores all its persistent state in database tables. These tables are installed in the same database as those of the Daisy repository server. This avoids the work of setting up an additional database, and means no extra effort is required for backup.

The database tables are automatically created when the repository server starts up for the first time. After creation, this fact is recorded in the daisy_system table by adding an entry named jbpm_schema_version containing the jBPM version number. Since creating the schema can take quite some time, a warn message is printed to the log before and after doing it, and also to standard out. To force the recreation of the jBPM tables, drop all tables whose name starts with "JBPM_" and execute this statement on the database:

delete from daisy_system where name = 'jbpm_schema_version'

jBPM uses hibernate for persistence. When using MySQL, the created tables are InnoDB tables (this is achieved by configuring an appropriate hibernate dialect), which is important to guarantee consistency of the tables. The database connections for hibernate are taken from the same connection pool as used by the rest of Daisy.

8.7.1.1 Deployment of default/sample process definitions

When the jBPM tables are first created, Daisy will also deploy some default (or sample, if you wish) processes.

The source for the samples can be found in the Daisy source tree at:

services/workflow/server-impl/src/processes

or in the .zip files embedded inside daisy-workflow-server-impl-<version>.jar.

It is possible to trigger re-installation of the sample workflows through the Admistration console of the Daisy Wiki (and hence through the Daisy Work flow API). This can be useful when installing a new Daisy version.

 PreviousHomeNext 
8.6 Workflow access control8.7.2 The “workflow” user