The plugin comes with pre-filled configuration properties, but you need to set up a few custom environment variables to tailor it to your specific setup. Here are the key configuration steps:
Set the FLOWX_HTML_TEMPLATES_PDFFONTPATHS config to select the font used for generating documents based on PDF templates.
If you want to use specific fonts in your PDF templates, override the FLOWX_HTML_TEMPLATES_PDFFONTPATHS config. By default, Calibri and DejaVuSans are available fonts.
FLOWX_CONVERT_DPI: Sets the DPI (dots per inch) for PDF to JPEG conversion. Higher values result in higher resolution images. (Default value: 150).
After making these configurations, the fonts will be available for use within PDF templates.
Document Plugin uses Redis for caching. Configure Redis connection using the standard Redis environment variables.Quick reference:
Environment Variable
Description
Example Value
Status
SPRING_DATA_REDIS_HOST
Redis server hostname
localhost
Recommended
SPRING_DATA_REDIS_PORT
Redis server port
6379
Recommended
SPRING_DATA_REDIS_PASSWORD
Redis authentication password
-
Recommended
REDIS_TTL
Cache TTL in milliseconds
5000000
Optional
Both SPRING_DATA_REDIS_* and SPRING_REDIS_* variable prefixes are supported. The SPRING_DATA_REDIS_* prefix is the modern Spring Boot standard and is recommended for new deployments.
For advanced Redis deployment modes (Sentinel, Cluster) and SSL/TLS setup, see the Redis Configuration guide. Note that Sentinel and Cluster modes are only supported by the Events Gateway service.
MULTIPART_MAX_ENTITY_SIZE sets the maximum multipart upload size at the Undertow server level. This affects all file uploads handled by the document-plugin (not just email attachments). Configure this alongside the Spring multipart settings to ensure consistent upload limits.
When using the kafka-auth profile, the security protocol will automatically be set to SASL_PLAINTEXT and the SASL mechanism will be set to OAUTHBEARER.
After a UI Flow session document upload completes, the document-plugin sends the result to the process-engine so the session variables are updated automatically.
Environment Variable
Description
Default Value
KAFKA_TOPIC_UIFLOW_UPDATE_OUT
Topic for sending document upload results to process-engine for UI flow session variable updates
Strategy for file organization (NONE or PROCESS_DATE)
NONE
APPLICATION_FILESTORAGE_DELETIONSTRATEGY
Strategy for deleting files (delete, disabled, or deleteBypassingGovernanceRetention)
delete
APPLICATION_FILE_STORAGE_TEST_FILES_BUCKET
Custom bucket name for test files (overrides default -test-documents suffix)
-test-documents
APPLICATION_FILESTORAGE_DELETIONSTRATEGY:
disabled: This will disable entirely the deletion of temporary files from the temporary bucket, and the responsibility to delete and clean up the bucket will move in the ownership of the admins of the implementing project.
deleteBypassingGovernanceRetention: This will still delete the temporary files and further more will add in the delete request the header: x-amz-bypass-governance-retention:true , to enable deletion of governed files, in case the s3 configured user for document-plugin, will have the s3:BypassGovernanceRetention permission.
APPLICATION_FILE_STORAGE_TEST_FILES_BUCKET: This variable allows you to override the default -test-documents bucket suffix. You can configure a custom bucket name or use the same bucket as the main storage if needed. This is particularly useful when the client environment has restrictions on bucket naming conventions or doesn’t have permissions to create new buckets.
Symptoms: File uploads return errors or time out.Solutions:
Verify the S3/MinIO connection by checking APPLICATION_FILESTORAGE_S3_SERVERURL, APPLICATION_FILESTORAGE_S3_ACCESSKEY, and APPLICATION_FILESTORAGE_S3_SECRETKEY
Ensure the target bucket exists and the configured user has read/write permissions
Check that SPRING_SERVLET_MULTIPART_MAXFILESIZE and MULTIPART_MAX_ENTITY_SIZE are large enough for the files being uploaded
Verify network connectivity between the pod and the S3-compatible storage service
Document generation not working
Symptoms: HTML-to-PDF document generation fails or produces empty documents.Solutions:
Verify FLOWX_HTML_TEMPLATES_ENABLED is set to true
Check that the font paths in FLOWX_HTML_TEMPLATES_PDFFONTPATHS are valid and the font files exist at those paths
Ensure the Kafka topics for HTML generation (KAFKA_TOPIC_DOCUMENT_GENERATE_HTML_IN / OUT) are created and accessible
Verify MongoDB connectivity, as HTML templates are stored in MongoDB
Files not being deleted from temporary storage
Symptoms: The temporary S3 bucket grows continuously and files are not cleaned up.Solutions:
Check that APPLICATION_FILESTORAGE_DELETIONSTRATEGY is set to delete (not disabled)
If using governance-locked buckets, set the strategy to deleteBypassingGovernanceRetention and ensure the S3 user has the s3:BypassGovernanceRetention permission
Verify the temporary bucket name configured in APPLICATION_FILESTORAGE_S3_TEMPBUCKET matches the actual bucket
Check application logs for deletion errors or permission issues
PDF conversion fails
Symptoms: File conversion requests fail or return errors.Solutions:
Check that the source file format is in the supported list configured via ZIP_EXTRACTION_ALLOWEDEXTENSIONS
Verify FLOWX_CONVERT_DPI is set to a valid value (default 150)
Ensure the file is not corrupted and uses valid encoding
Check that the Kafka topics for file conversion (KAFKA_TOPIC_FILE_CONVERT_IN / OUT) are properly configured