You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.
Table of contents
Description
This component contains a process DAO implementation for storing the process engine data. It is used by the worklist container to display open tasks.
This worklist container implementation uses the ProcessCaseDao to query for process engine data in which filtering is already done in the database and therefore the performance of the worklist container is greatly improved in comparison with the default worklist. This container uses the same container parameters as the Worklist implementation of the Blueriq SDK.
This worklist implementation does NOT use the mapping from the Process module to the PCA module. This is done to increase performance.
Requirements
This component persists data in a database, that must be provided. See platform support for the supported databases.
Installation
In order to use this component, the process-sql-store profile must be active. More information on how to configure the application using Spring Profiles can be found here : External application configuration with Spring Profiles
Add the artifact with groupId "com.blueriq"
and artifactId "blueriq-component-process-sql-store"
as a dependency to your Blueriq runtime POM file if you want to depend on it.
Configuration
The name of the datasource is process-sql-store.
Database
Scripts to create the required database content are provided for the supported databases.
For customers that are upgrading, if the database scheme was already created in a previous version, check to see if there are database upgrade scripts provided for any of the intermediate versions in the Upgrade Instructions.
Configuration
Use the following steps to configure the datasource:
- Install the driver for your database. See Configuring JDBC database drivers for information on how to do this.
- Provide the connection details for the datasource. There are two options for this: using JDBC or JNDI.
Using JDBC datasource : this is configured in the
application-
file. When configuring external datasources, theexternaldatasources
.propertiesexternaldatasources
profile should be enabled.application-externaldatasources.propertiesblueriq.datasource.<datasource-name>.url=<JDBC url> blueriq.datasource.<datasource-name>.username=<username> blueriq.datasource.<datasource-name>.password=<password> blueriq.datasource.<datasource-name>.driverClassName=<driver-class>
Using JNDI datasource : this can be configured in the
application-
file. When configuring JNDI datasources thejndidatasources
.propertiesjndidatasources
profile should be enabled.blueriq.datasource.<datasource-name>.jndiName=<JNDI url>
- Provide the appropriate Hibernate settings in the same properties file as step 2.
blueriq.hibernate.<datasource-name>.dialect=<database-dialect> blueriq.hibernate.<datasource-name>.use_nationalized_character_data=true blueriq.hibernate.<datasource-name>.hbm2ddl.auto=validate # validate is the only supported value here
Example configuration
Below are configuration examples which contain a JDBC url, driver-class and dialect for each supported database.
blueriq.datasource.<datasource-name>.url=jdbc:oracle:thin:@<host>:<port>/<servicename> blueriq.datasource.<datasource-name>.username=<username> blueriq.datasource.<datasource-name>.password=<password> blueriq.datasource.<datasource-name>.driverClassName=oracle.jdbc.driver.OracleDriver blueriq.hibernate.<datasource-name>.dialect=org.hibernate.dialect.OracleDialect blueriq.hibernate.<datasource-name>.hibernate.use_nationalized_character_data=true blueriq.hibernate.<datasource-name>.hbm2ddl.auto=validate
blueriq.datasource.<datasource-name>.url=jdbc:sqlserver://<host>:<port>;databaseName=<database>;trustServerCertificate=true blueriq.datasource.<datasource-name>.username=<username> blueriq.datasource.<datasource-name>.password=<password> blueriq.datasource.<datasource-name>.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver blueriq.hibernate.<datasource-name>.dialect=org.hibernate.dialect.SQLServer2012Dialect blueriq.hibernate.<datasource-name>.hibernate.use_nationalized_character_data=true blueriq.hibernate.<datasource-name>.hbm2ddl.auto=validate
blueriq.datasource.<datasource-name>.url=jdbc:postgresql://<host>:<port>/<database> blueriq.datasource.<datasource-name>.username=<username> blueriq.datasource.<datasource-name>.password=<password> blueriq.datasource.<datasource-name>.driverClassName=org.postgresql.Driver blueriq.hibernate.<datasource-name>.dialect=org.hibernate.dialect.PostgreSQLDialect blueriq.hibernate.<datasource-name>.hibernate.use_nationalized_character_data=true blueriq.hibernate.<datasource-name>.hbm2ddl.auto=validate
Case insensitive searching
SQL Server is case insensitive by default. This makes it possible to search Case Data in a case insensitive way in this database. By default Oracle and PostgreSQL are case sensitive, wich means searching in Case Data is also case sensitive in these databases.
We created the possibility to enable case insensitive searching on case sensitive databases. For more information on how to enable it see: How to enable case insensitive search on case data for Oracle & PostgreSQL.