Published on 28/01/2025
This version requires the following software versions as prerequisites :
- ARender : 2023.4.0
- Redis : 6.2.12
- OpenSearch : 1.3.19
Upgrade notes 2025.0
Version upgrade
From a version greater than or equal to 2.7
No data migration is required. The FlowerDocs architecture has been simplified by removing some components: Camunda, FlowerDocs Management and OpenSearch Dashboards. In line with the integration recommendations for ARender, the ARender HMI application is no longer embedded in the FlowerDocs GUI and can be isolated on a dedicated server.
The FlowerDocs - ARender connector is deployed outside the application, making it easier to update corrective versions.
From a version prior to 2.6
You will need to upgrade to version 2.7 before upgrading to 2025.0. Previous versions are based on an Elasticsearch 5.2 engine and require data to be migrated to the new OpenSearch engine. Documentation to follow : here
Architecture
Removed components
- Camunda
- OpenSearch Dashboards
- FlowerDocs Management
- Mail Editor
Modified components
- OpenSearch : Upgrade from 1.3.4 to 1.3.19
- ARender : Upgrade from 4.8.x to 2023.4.0
- Java : FlowerDocs Core and GUI must be launched with JDK 11. JDK version 1.8 is no longer supported.
- FlowerDocs Starter Client : Spring Boot version upgrade from 2.5.14 to 2.7.18
- Plume : Upgrade from 2.0.2 to 2.0.3
Added components
- The ARender graphical interface is now an application in its own right and is no longer embedded in the FlowerDocs GUI. This additional component must be installed by following the documentation here
Customisation and configuration
Configuration
Configuration properties to be removed
- The
gui.register.enabledproperty has been removed - The
spring.datasource.urlproperty has been removed - The
text.extractor.max.sizeproperty has been removed following the change of text extraction engine - The
showNodeContentsetting for virtual folders no longer exists. If this property is referenced in yourGUIConfigurationdocuments, it should be removed. - The settings for the
FloatingButtonPresentershortcut button and the associated JavaScript API no longer exist. If this type of button is referenced in yourGUIConfigurationdocuments, it must be deleted. The existing shortcuts must be added to the+button in the FlowerDocs menu bar as in the documentation. here The ARender display configuration properties have been modified following the separation of display calls between documents and versions.
- The
gui.client.arender.params.docproperty used to define the parameter to be used for document viewing is removed in favour of the newgui.client.arender.params.currentproperty. Its default value iscurrentId. - The
gui.client.arender.params.versionproperty is used to view a version via the version tab opened from the history. Its default value isversionId. For integrators overloading the
arenderConfigbean, delete this line:<property name="documentIdParameter" value="${gui.client.arender.params.doc:docId}" />and add the following lines:<property name="documentIdParameter" value="${gui.client.arender.params.current:currentId}" /> <property name="versionIdParameter" value="${gui.client.arender.params.version:versionId}" />
- The
The
filetag in thescope.xmlfile must be deleted, as the Scope object no longer carries a file.It is no longer necessary to set the
management.metrics.export.datadog.enabledproperty for the FlowerDocs Core application to start up.
Obsolete / replaced configuration properties
- Following the change of architecture with ARender HMI, the property
arender.rendition.nodesmust no longer be filled in the filegui.propertiesbut inarender-custom-server.properties. - In documents of class
OperationHandlerRegistrationwhich correspond toScriptOperationHandler, the value of the followingOperationHandlertag is deprecated:com.flower.docs.bpm.core.operation.ScriptOperationHandler. The new value to use iscom.flower.docs.core.tsp.operation.script.ScriptOperationHandler. - The combination of
ADD_CONTENTandDELETE_CONTENTpermissions is deprecated in favour ofUPDATE_CONTENT. - The
READ_OBFUSCATIONpermission is deprecated. Only theOBFUSCATEpermission is used. - The data model associated with Camunda should be deleted as it is no longer in use:
- Document classes :
BPMNDiagram,CMMN,DMN,EmailServer - Tag classes :
Protocol,Host,Port
- Document classes :
Product
Technical changes
- FontAwesome : Upgrade from 6.1.1 to 6.5.2
- Spring Boot : Upgrade from 2.5.14 to 2.7.18
- Spring : Version upgrade from 5.3.20 to 5.3.37
Changes in behaviour
Redis
- Redis is now mandatory even for development environments.
Integration
- The Nashorn JavaScript engine is replaced by GraalJS
- For the
ScriptOperationHandlerif theequalsfunction has been used to compare Strings then the comparison must be replaced by==. - For
ScriptOperationHandlerfunctions, if theDate.now()function has been used, replace the call withString.valueOf(new Date().getTime()).
- For the
Performances
- The FlowerDocs cache is no longer purged automatically when configuration documents are updated
- Configuration objects (data model,
OperationHandler,ScriptGUIConfiguration,CSS) are no longer stored in Redis. A key enabling cache synchronisation between several FlowerDocs applications is stored in Redis in order to improve performance.
ARender
- The properties for displaying annotations in ARender are the default. Font colours and sizes may differ from those in previous FlowerDocs versions.
- Modification actions are not displayed when a version is opened
- Rotation annotations are created with a new
acl-rotationACL, so that annotation rights are separated from page rotation rights.
Delete
- The swagger call URL
/core/swagger-ui.html, the new URL to use is:/core/swagger-ui/index.html. - The
AddDisplayToSearchOperationHandlerOperationHandler
API
Changes in behaviour
- The modification and deletion services on a document return an
F01500exception if the input identifier does not correspond to the current version. - Text extraction for full-text indexing is now carried out via the ARender rendition, replacing the Apache Tika library.
Added methods
- The
VersionDAOinterface has a newgetVersionmethod. This method can be used to retrieve a specific version of a document - Add the REST endpoint for retrieving document versions:
/core/rest/documents/{documentId}/versions/{versionId}. - Added REST endpoint for indexing and de-indexing manual content:
/core/rest/documents/{id}/files/{file}/content/index. - Added REST endpoint for renaming files:
/core/rest/documents/{id}/files/{fileId}/name.
Removed methods
- The
ReportingServiceservice no longer exists- The
ReportingService.reportmethod used to create facts should be replaced byFactService.create. - The
ReportingService.getFactByObjectIdmethod for retrieving facts should be replaced byFactService.get.
- The
- The following
ScopeServicemethods no longer exist:getRules,setRules,getAll. - The
ScopeDAO.getAllmethod no longer exists
New depreciation
- FlowerDocs SOAP APIs are deprecated.
Events
Changes in behaviour
- The
registerForComponentChangemethod is no longer called when a version is opened.
Data
Scripting requirements and API calls
- The scope must be updated with the
default-scopescope provided in theflower-template-2025.0.zipdeliverable in order to update the minimum data model for FlowerDocs to function correctly. - Unused OpenSearch indexes must be deleted manually:
{scope}-flower-docs-content,{scope}-flower-docs-version,{scope}-flower-docs-report.kibana
An example of a call via cURL for the FD scope : curl -XDELETE "http://localhost:9200/fd-flower-docs-content"