Release note: See v2026.4.0.
ARender 2026.4.0 is a minor release of the 2026 line. It upgrades Hazelcast and reports password-protected and corrupted documents with a dedicated HTTP status. Because of the Hazelcast upgrade, a clustered deployment cannot be upgraded node by node: stop every Web-UI and Document Service Broker instance before starting the new version, whatever version you upgrade from. No data migration is needed.
⚙️ Customization and Configuration
New Properties
arender.data.analytics.token(default: empty). Applies to the Web-UI and sets the Mixpanel project the product analytics are sent to. When empty, the analytics go to the Uxopian project, as before.arender.data.analytics.enabled=falsestill disables them. See Product analytics.
If you ship your own full copy ofarender-hmi-configuration.xml, thedataReporterbean now has atokenproperty bound to${arender.data.analytics.token}.
Changed and Deprecated Properties
tools.ffmpeg.options(Rendition, Document Converter). The default now ends with-aac_coder,fast, which makes audio conversion two to three times faster with the ffmpeg version shipped in the 2026 converter image. See the Rendition properties.
Action required: if you override tools.ffmpeg.options, add ,-aac_coder,fast to the end of your value. Otherwise audio conversion stays slow.
- Labels (Web-UI). The new labels
documentIsPasswordProtectedanddocumentIsCorruptedhold the messages shown for a document that cannot be opened. ThesearchLoadinglabel is no longer used. If you ship your own label files, add the two new keys to translate these messages.
No properties were renamed in this release.
Deleted Properties
No properties were deleted in this release.
📦 Product
Technical Changes and Security
- Hazelcast upgraded to 5.7.
A Hazelcast 5.7 member cannot join a cluster of an earlier version: every earlier ARender version embeds an older Hazelcast (5.5 for 2026.x, 4.2 for 2023.x). Hazelcast clustering is used when several Web-UI instances share their cache or their HTTP sessions (arender.server.session.hazelcast.enabled=true), and when several Document Service Broker instances run together.
Action required: stop every Web-UI and Document Service Broker instance of the cluster, then start the 2026.4.0 instances. Do not upgrade them one by one. The cache and the HTTP sessions held in Hazelcast are lost, so users reopen their documents. See Viewer caching.
Kubernetes Deployments
- Scale the viewer and the broker to
0beforehelm upgrade. The charts keep the defaultRollingUpdatestrategy. When Hazelcast clustering is on (replicaCountof 2 or more, orautoscale.enabled: true, forviewerorrendition.broker), new pods cannot join the old cluster and restart in a loop.helm upgraderestores the replica count set in your values. See Kubernetes (Helm) → Upgrade.
Behavior Changes
-
HTTP
422for password-protected and corrupted documents. When the Rendition cannot open a document because it is password-protected or corrupted, the Document Service Broker now answers422on the layout, page image and text calls. The body is anExceptionCapsulewhoseerrorCodeisPASSWORD_PROTECTEDorCORRUPTED. Before this release, these documents answered500, and protected archives were refused at upload. An archive is now uploaded normally, and its failure is reported on the first layout call. An unsupported format still answers406. See Broker API → Error responses.
Action required: if you call the Rendition REST API directly, treat422as a final error and exclude it from your retry policies. -
Protected and corrupted documents logged at
INFO. The broker logs these documents asDocument refusedatINFOlevel instead ofERROR. Alerts based onERRORlog lines no longer fire for them. See Troubleshooting. -
Alfresco ticket checked on every opening (ARender Classic, CMIS connector). With user-delegated authentication (
arender.server.alfresco.userempty), the connector asks Alfresco on every opening whether thealf_ticketcan read the document, even when the document is already in the ARender cache. An expired or invalid ticket now makes the opening fail. See the Alfresco integration guide. -
Annotation default style applied (ARender Classic). The default bold, italic and underline style set in the configuration for comments and free text annotations is now applied, and the toolbar shows it. Before this release, it was ignored. If your configuration sets these defaults, new annotations now use them.
💻 API
JavaScript API Changes
askChangePage(type, offset, position, centerPosition)(ARender Classic). The new optional fourth argument places the target position at the top of the view when it isfalse, like an internal hyperlink click. Without it, the position is centered, as before. See the JavaScript API.
Java API Changes
DocumentErrorCodeandDocumentCorruptedException(client API). The newDocumentErrorCodeenum (PASSWORD_PROTECTED,CORRUPTED,UNSUPPORTED_FORMAT,UNKNOWN) classifies why a document could not be opened.ExceptionCapsuleandConversionOrder(rendition API) carry a new optionalerrorCodefield.DocumentService.getAdvancedSearchPageRangeResult(rendition API). New default method: customDocumentServiceimplementations compile unchanged.GenericEventHandler.onEvent(ARender Classic, GWT). The method now receives theGwtEvent<?>itself instead of its class name.
Action required: update any custom GWT code that implementsGenericEventHandler. JavaScript listeners registered withregisterGenericEventListenerare not affected and still receive the event class name.