Flowable
Install
Warning
Flowable servers must stay on Ubuntu 22.04 LTS (see Ubuntu 24.04 LTS for more information)
Warning
The SMTP settings for the mail server are not configured, but do not rush to put them right. Flowable tasks send emails in the background and we don’t want customers receiving duplicate or out of date emails!
Ubuntu 22.04 LTS
Warning
Flowable servers must stay on Ubuntu 22.04 LTS (see Ubuntu 24.04 LTS for more information)
Ubuntu 24.04 LTS
Warning
Flowable does not work on Tomcat 10 (Ubuntu 24.04 LTS), so we need something for our development machines.
I updated the Salt states to manually install Tomcat 9 into /var/lib/tomcat
for Ubuntu 24.04 LTS. This is only for development machines which need to
reproduce the live server environment:
sudo tail -f /var/lib/tomcat/logs/catalina.out
Podman
Warning
Live Flowable servers must stay on Ubuntu 22.04 LTS (for now)
For development on Ubuntu 24.04 LTS, we can use the Podman container.
Download flowable-rest.yaml:
podman kube play flowable-rest.yaml
podman pod start flowable-rest
podman pod stop flowable-rest
podman pod restart flowable-rest
podman pod logs -f flowable-rest
podman pod rm flowable-rest
Login with kermit
, kermit
.
Useful links
Issues
value too long
I spent several hours diagnosing a value too long
error e.g:
workflow.activiti.ActivitiError:
'ActivitiError, 500 error: for url:
http://localhost:8080/flowable-rest/service/runtime/tasks/10a5a39-8ea7-11ee:
{"message": "Internal server error",
"exception":
### "Error updating database. Cause: org.postgresql.util.PSQLException:
ERROR: value too long for type character varying(255)
### The error may exist in org/flowable/task/service/db/mapping/entity/HistoricTaskInstance.xml
### The error may involve org.flowable.task.service.impl.persistence.entity.HistoricTaskInstanceEntityImpl.insertHistoricTaskInstance-Inline
### The error occurred while setting parameters
### SQL: insert into ACT_HI_TASKINST (
ID_, REV_, TASK_DEF_ID_, PROC_DEF_ID_, PROC_INST_ID_, EXECUTION_ID_,
SCOPE_ID_, SUB_SCOPE_ID_, SCOPE_TYPE_, SCOPE_DEFINITION_ID_,
PROPAGATED_STAGE_INST_ID_, NAME_, PARENT_TASK_ID_, DESCRIPTION_,
OWNER_, ASSIGNEE_, START_TIME_, CLAIM_TIME_, END_TIME_, DURATION_,
DELETE_REASON_, TASK_DEF_KEY_, FORM_KEY_, PRIORITY_, DUE_DATE_,
CATEGORY_, TENANT_ID_, LAST_UPDATED_TIME_
) values ( ?, 1, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )
### Cause: org.postgresql.util.PSQLException:
ERROR: value too long for type character varying(255)"}'
I checked the Postgres logs (SQL Logging) but this didn’t help because the parameters are not written if the query fails.
I also checked the data in the python code and none of it was over 255 characters.
The documentTitle
field was 179 characters long:
The next task in the workflow had a fairly long
name
which also used thedocumentTitle
e.g.Please review ${documentTitle} etc etc...
When combined, the
name
is too long (over 255 characters)
For more information, see https://www.kbsoftware.co.uk/crm/ticket/6958/