Skip to main content
Version: v2026.0.0

Custom integration files

ARender ships two empty XML files dedicated to custom Spring bean configuration. Because these files are always empty in each new release, they prevent merge conflicts during upgrades and keep your customizations cleanly separated from the default ARender XML.

Files and scope

FileScopeDescription
configurations/arender-custom-integration.xmlClient side (GUI)Override or declare Spring beans that control the viewer UI layer.
configurations/arender-custom-server-integration.xmlServer sideOverride or declare Spring beans for server-side behavior (document providers, security filters, custom services).

Both files are imported by ARender at startup through Spring's XML import mechanism. Any bean you define or override in these files takes effect without modifying internal ARender XML.

How Spring Boot loads these files

At startup the ARender Spring Boot application imports both XML files from the configurations/ directory. The import path is resolved relative to the working directory of the application (the directory containing the JAR). In Docker containers this is /home/arender/.

The loading sequence is:

  1. ARender's internal Spring XML context is initialized.
  2. arender-custom-integration.xml is imported into the client-side context.
  3. arender-custom-server-integration.xml is imported into the server-side context.
  4. Beans defined in these files override any bean with the same id from the internal context.

Practical guidelines

  • Always use the custom integration files for bean overrides instead of editing internal ARender XML. This guarantees a clean upgrade path.
  • Keep one file per scope. Put client-side beans in arender-custom-integration.xml and server-side beans in arender-custom-server-integration.xml. Mixing scopes causes beans to load in the wrong context.