Upgrading from 2023 to 2026
This guide covers the migration from ARender 2023 to ARender 2026. The 2026 release introduces significant changes to the technical stack: Spring Boot 2 to Spring Boot 4, JDK 8 to JDK 25, the removal of WAR-based packaging, a new default PDF renderer (PDFOwl), and provider support exposed as a web service.
JDK requirements
ARender 2026 is compiled with JDK 17 due to GWT compilation constraints. However, ARender is fully qualified and tested at runtime with JDK 25.
JDK 25 is the recommended JDK for deploying ARender in production.
Prerequisites
Before starting the migration, ensure you meet the following prerequisites:
- Basic knowledge of Spring Boot.
- The ARender UI 2026 binary, downloaded and ready to deploy.
- The ARender Rendition 2026 binary, downloaded and ready to install.
- Your specific configurations from the ARender 2023 deployment.
Migrating ARender Rendition
Before installing ARender Rendition 2026, perform the following steps:
-
Stop and remove the Rendition service.
On Windows:
sc stop ARenderRenditionService
.\removeService.batOn Linux with systemd:
systemctl stop ARenderRenditionEngineService.service
./removeService.shOn Linux with initd:
service ARenderRenditionEngineService stop
./removeService.sh -
Install Rendition 2026. Follow the standard Rendition installation instructions for version 2026.
-
Transfer properties. Migrate your 2023 configuration to 2026 using the property change tables below. Review each section carefully, as several properties have been renamed or deleted.
-
Configure Rendition 2026. After transferring properties, apply any additional configuration specific to your environment.
Migrating ARender Web UI
-
Stop the application server where ARender UI 2023 is deployed.
-
Install ARender Web UI 2026. Follow the standard Web UI installation instructions for version 2026. Note that WAR packaging is no longer available; the deployment is Spring Boot only.
-
Transfer properties. Migrate your 2023 configuration using the property change tables below.
-
Configure Web UI 2026. Apply any additional customizations for your deployment.
Rendition property changes
The following tables list all property changes across the four Rendition microservices. Many changes are shared across services because they originate from the Spring Boot 2 to Spring Boot 4 migration.
Document Service Broker
Deleted properties (application.properties)
| 2023 property | Description |
|---|---|
management.metrics.export.statsd.enabled | Enables or disables exporting metrics using the StatsD protocol |
management.metrics.export.statsd.step | Sets the reporting interval for StatsD metrics |
management.metrics.export.statsd.host | Specifies the StatsD server hostname |
management.metrics.export.statsd.port | Defines the port used to send metrics to the StatsD server |
Renamed properties (application.properties)
| 2023 property | 2026 property | Description |
|---|---|---|
management.endpoint.prometheus.enabled | management.endpoint.prometheus.access | Controls access level to the Prometheus actuator endpoint |
management.endpoint.metrics.enabled | management.endpoint.metrics.access | Defines whether and how the metrics actuator endpoint can be accessed |
management.metrics.export.elastic.enabled | management.elastic.metrics.export.enabled | Enables or disables exporting metrics to Elasticsearch |
management.metrics.export.elastic.step | management.elastic.metrics.export.step | Sets the interval at which metrics are pushed to Elasticsearch |
management.metrics.export.elastic.index | management.elastic.metrics.export.index | Specifies the Elasticsearch index used to store exported metrics |
management.metrics.export.elastic.host | management.elastic.metrics.export.host | Defines the Elasticsearch host where metrics are sent |
management.metrics.export.datadog.enabled | management.datadog.metrics.export.enabled | Enables or disables exporting metrics to Datadog |
management.metrics.export.datadog.api-key | management.datadog.metrics.export.api-key | API key used to authenticate with Datadog |
management.metrics.export.datadog.step | management.datadog.metrics.export.step | Defines the frequency at which metrics are sent to Datadog |
management.metrics.export.datadog.uri | management.datadog.metrics.export.uri | Specifies the Datadog API endpoint URI |
management.metrics.export.cloudwatch.enabled | management.cloudwatch.metrics.export.enabled | Enables or disables exporting metrics to CloudWatch |
management.metrics.export.cloudwatch.namespace | management.cloudwatch.metrics.export.namespace | Defines the CloudWatch namespace where metrics appear |
management.metrics.export.cloudwatch.step | management.cloudwatch.metrics.export.step | Defines the frequency at which metrics are sent to CloudWatch |
management.metrics.export.cloudwatch.batchSize | management.cloudwatch.metrics.export.batchSize | Defines the maximum number of metrics sent in a single API request to CloudWatch |
management.metrics.export.cloudwatch.region | management.cloudwatch.metrics.export.region | Specifies the AWS region where metrics are sent |
rest.client.max.in.memory.size | rest.client.max-in-memory-size | Configure a limit on the number of bytes that can be buffered (in bytes) |
rest.client.max.connections | rest.client.max-connections | The maximum number of connections before starting pending acquisition |
rest.client.pending.acquire.timeout | rest.client.pending-acquire-timeout | The maximum time after which a pending acquire must complete (in milliseconds) |
rest.client.pending.acquire.max.count | rest.client.pending-acquire-max-count | The maximum number of registered requests for acquire to keep in a pending queue. Set "-1" for no limit. |
rest.client.max.idle.time | rest.client.max-idle-time | Duration after which the channel will be closed when idle (in milliseconds). Set "-1" for no limit. |
rest.client.max.life.time | rest.client.max-life-time | Duration after which the channel will be closed (in milliseconds). Set "-1" for no limit. |
rest.client.read.timeout | rest.client.read-timeout | The maximum time to read a response through the network (in milliseconds) |
rest.client.write.timeout | rest.client.write-timeout | The maximum time to write a request through the network (in milliseconds) |
Modified properties (application.properties)
| Property | Value in 2023 | Value in 2026 | Description |
|---|---|---|---|
micro-services.pdf-renderer | JNIPdfEngine | PDFOwl | Specifies which PDF renderer to use: JNIPdfEngine or PDFOwl |
New properties (application.yaml)
| 2026 property | Description |
|---|---|
arender.security.enabled | Enables the use of JWT as OAuth 2.0 bearer token |
keycloak.base-url | The Keycloak base URL |
keycloak.realm | The ARender realm name on Keycloak |
keycloak.realm-url | The ARender realm URL on Keycloak |
spring.security.oauth2.resourceserver.jwt.issuer-uri | Specifies the URI of the trusted JWT issuer |
registry.default-provider | Specifies the default provider to use if none of the defined providers match |
registry.providers.filenet.base-url | Defines the base URL of the FileNet provider application |
registry.providers.filenet.whitelisted-params | Defines the query parameters authorized to build FileNet document ID |
registry.providers.alfresco.base-url | Defines the base URL of the Alfresco provider application |
registry.providers.alfresco.whitelisted-params | Defines the query parameters authorized to build Alfresco document ID |
Document Converter
Deleted properties (application.properties)
| 2023 property | Description |
|---|---|
redact.flattenText | Former redact feature |
management.metrics.export.statsd.enabled | Enables or disables exporting metrics using the StatsD protocol |
management.metrics.export.statsd.step | Sets the reporting interval for StatsD metrics |
management.metrics.export.statsd.host | Specifies the StatsD server hostname |
management.metrics.export.statsd.port | Defines the port used to send metrics to the StatsD server |
Renamed properties (application.properties)
The Document Converter shares the same metrics property renames as the Document Service Broker (Prometheus, Elasticsearch, Datadog, CloudWatch). See the table above.
Document Renderer
Deleted properties (application.properties)
| 2023 property | Description |
|---|---|
management.metrics.export.statsd.enabled | Enables or disables exporting metrics using the StatsD protocol |
management.metrics.export.statsd.step | Sets the reporting interval for StatsD metrics |
management.metrics.export.statsd.host | Specifies the StatsD server hostname |
management.metrics.export.statsd.port | Defines the port used to send metrics to the StatsD server |
Renamed properties (application.properties)
The Document Renderer shares the same metrics property renames as the Document Service Broker (Prometheus, Elasticsearch, Datadog, CloudWatch). See the table above.
Document Text Handler
Deleted properties (application.properties)
| 2023 property | Description |
|---|---|
management.metrics.export.statsd.enabled | Enables or disables exporting metrics using the StatsD protocol |
management.metrics.export.statsd.step | Sets the reporting interval for StatsD metrics |
management.metrics.export.statsd.host | Specifies the StatsD server hostname |
management.metrics.export.statsd.port | Defines the port used to send metrics to the StatsD server |
Renamed properties (application.properties)
The Document Text Handler shares the same metrics property renames as the Document Service Broker (Prometheus, Elasticsearch, Datadog, CloudWatch). See the table above.
Web UI property changes
Client properties (arender-default.properties)
Deleted properties
| 2023 property | Description |
|---|---|
topPanel.documentMenu.downloadCSVAnnotations | Activate the top panel button to download the current document annotations as CSV |
Modified properties
| Property | Change |
|---|---|
topPanel.download.buttons.beanNames | The downloadAnnotationsCSVButton value has been removed from the comma-separated list |
Bean changes (toppanel-configuration.xml)
Deleted beans
| 2023 bean ID |
|---|
downloadAnnotationsCSVButton |
Summary of key changes
| Area | Change |
|---|---|
| JDK | 8 to 25 (compiled with 17) |
| Spring Boot | 2.7.x to 4.x |
| Packaging | WAR removed, Spring Boot JAR only |
| PDF renderer | Default changed from JNIPdfEngine to PDFOwl |
| Metrics (StatsD) | Removed across all Rendition services |
| Metrics (Prometheus, Elasticsearch, Datadog, CloudWatch) | Property prefix restructured from management.metrics.export.<provider>.* to management.<provider>.metrics.export.* |
| Actuator endpoints | .enabled suffix changed to .access |
| REST client properties | Dot-separated names changed to hyphen-separated names |
| Security | New OAuth 2.0 / JWT / Keycloak properties added to the Document Service Broker |
| Providers | New provider properties for FileNet and Alfresco |
| CSV annotation export | Removed from Web UI |