(Quick Reference)

5 Frequently Asked Questions - Reference Documentation

Authors: Stephan Albers, July Antonicheva

Version: 1.7-SNAPSHOT

5 Frequently Asked Questions

1. How to customize worklist page.

There are several ways to customize the worklist page. To enhance the worklist table with more columns - such as any process variable values etc., then configure the additional columns using the Spring ('additionalWorklistColumns' bean) :

<bean id="additionalWorklistColumns" class="java.util.ArrayList">
    <constructor-arg>
      <list>
        <value>productId</value>
        <value>name</value>
        <value>requesterName</value>
      </list>
    </constructor-arg>
  </bean>

Also, filtering is possible in the worklist. It helps in searching for process nodes with some known variable values.

Important - Filtering can slow down the loading of your worklist, if you have a lot of processes in the list.

If there are more then 500 processes in the worklist, get variables by splitting the parameter list into smaller sections and then combining the results. However, this requires time for execution and can slow down performance. So, by default, the filtering works well if there are no more entries than the maxRestrictedProcesses size. The behaviour can be changed by re-configuring some available Spring beans or even disabling the filtering functionality.

isWorklistFilterAvailable - if needed, this bean defines the filtering functionality and the default value is configured to TRUE

isWorklistFilterAvailable(java.lang.Boolean, Boolean.TRUE)

maxRestrictedProcesses - this bean contains the Integer value for common quantity of restricted processes used in the SQL 'in' clause (default value is '2000' entries)

maxRestrictedProcesses(java.lang.Integer, "2000")

Another way to customize worklist is to use your custom page with the same name and path : views/process/showWorklist.gsp

2. How to redirect to any custom page after sending an event.

Usually, after submitting the manual form, the user is redirected, by default, to the 'showProcessDetails' page. To customize this behaviour, specify the following values on your custom gsp page :

<input type="hidden" name="resultController" value="someControllerHere"/ >
 <input type="hidden" name="resultAction" value="someActionHere"/ >

Specify any additional values that should be submitted here :

<input type="hidden" name="userName" value="${someBean.userName}"/ >

3. How to create a custom page with elements of a standard generated form

If you like to use automitic form generation and don't want to create any special new form for variable values, use the grailsflow template for the custom page :

<gf:customizingTemplate template="/manualForms/variablesForm"
      model="[variables: nodeDetails.variables]" />

For additional node Information on your custom page, use grailsflow template nodeInfo:

<gf:customizingTemplate template="/manualForms/nodeInfo"
       model="[nodeDetails: nodeDetails]"/>

To assign a node to another user/role/group, use :

<gf:customizingTemplate template="/manualForms/eventForwarding"
        model="[currentAssignees: nodeDetails.assignees]"/>

4. If you don't want to have automatic starting for NodeActivatorJob and DueDateJob during application running

In that case there are properties that can be configured in your application (e.g. in Config.groovy):

grailsflow.scheduler.nodeActivator.autoStart = false    // disable auto starting for Engine Job
 grailsflow.scheduler.nodeDueDate.autoStart = false    // disable auto starting for Engine Job
 grailsflow.scheduler.eventsEmailCheck.autoStart = false    // disabled by default

Also it is possible to specify start delay and repeat interval for Grailsflow jobs:

grailsflow.scheduler.nodeActivator.startDelay = 60000         // starts in one minute after application startup

grailsflow.scheduler.nodeActivator.repeatInterval = 15000 // executes every 15 seconds

grailsflow.scheduler.nodeDueDate.startDelay = 60000 grailsflow.scheduler.nodeDueDate.repeatInterval = 60000 // executes every minute

grailsflow.scheduler.eventsEmailCheck.startDelay = 60000 // executes every minute

grailsflow.scheduler.eventsEmailCheck.repeatInterval = 60000 // executes every minute

5. How to configure E-mail settings for Grailsflow

The user can specify mail settings in Config.groovy. There are the following settings:

grailsflow.events.mail.enabled=false
grailsflow.events.mail.address="somebody@mail.xxx"
grailsflow.events.mail.host="mail.xxx"
grailsflow.events.mail.account="smith"
grailsflow.events.mail.password="pass"

6. How to configure my custom i18n translations for Grailsflow

It is possible to specify additional i18n bundles locations for Grailsflow translations in Config.groovy

grailsflow.i18n.locations = ["WEB-INF/grails-app/i18n/"]