logoBack to home screen

ADx 2.3 (03/08/2020) Release Notes


This release introduces several key updates, including:

  • New export service allowing you to export all repository documents in one job.
  • New import service, allowing you to import documents from a folder (instead of pointing to the individual resource) within ADx UI (previously only import via REST was offered).
  • New UPDATE_WORKING_COPY option in the conversion Result Action menu has been introduced. As the name implies, the current working copy of the document is updated when you convert with this option. This can be used, for example, to watermark a document and then immediately see the changes in WebReader.
  • LDAP authentication is now supported.
  • In the Cache area, the job list UI have been improved. Metadata jobs are now listed under Metadata and are grouped by category: Export, Import, or Delete.

For a detailed list with corresponding documentation links, see New Features and Improvements.

New Features and Improvements

The following features are added in this release:

IssueTypePrioritySummaryDocumentation link
AD-1345StoryCriticalAdd page-specific watermark informationSee Converting Contents
AD-1130StoryCriticalWebReader: Option to print a documentN/A (print button is now available in WebReader)
AD-1315StoryMajorService to import from a folderSee Exporting and Importing Repository Contents
AD-1312StoryMajorServices to ensure metadata exportsSee Exporting and Importing Repository Contents
AD-1314StoryMinorServices to delete metadata exportsSee Exporting and Importing Repository Contents
AD-1313StoryMajorService to get repository statisticsNew Statistics action has been introduced. This action shows repository's content and cache statistics. These statistics include: number of contents, number of documents, size of representations in the repository, and others.
AD-1309StoryMajorRuntime property to adjust default for metadata exportSee New Runtime Properties
AD-527StoryMinorSee Changed Runtime Properties
AD-1252StoryMajorCreate repository ACL documentationSee Setting Access Control on Repositories
AD-1228TaskMinorNew property to set default for Fulltext IndexingSee New Runtime Properties
AD-1197StoryMinorRemove not needed properties from Fulltext Config SectionThe following properties were removed from repository configuration: Cascading Attachment, Cluster Sniff, Max Result Window, Node Name. They are no longer configurable.
AD-1031StoryMajorAdd hostname and version info to backup scriptsFor more details, see Using Backup and Restore Scripts.


You can install this release from the provided package. Please follow the Installation Instructions if you're installing from scratch.

Updating Conversion and ADx

For information on how to update previously installed Conversion and ADx, see the following:

Important! After updating to ADx 2.3, it's required to re-synchronize your existing repositories.

Database Adaptation

Run the following statements in your ADx system database. If you use a separate system database for Conversion nodes, run the statements there, too:

ALTER TABLE tf_id_users ADD UNIQUE (user_name);
ALTER TABLE tf_id_groups ADD UNIQUE (group_name);
ALTER TABLE tf_id_roles ADD UNIQUE (role_name);

These statements must be executed in existing production ADx environments in order to add a constraint to user names, group names, and role names, forcing them to be unique. Without this adaptation, there could be an issue with duplicate users/groups/roles in ADx.

Configuration changes

This release introduces new runtime properties and changes to some of the existing runtime properties:

New Runtime Properties


PropertyDescriptionDefault value
ADX_DEFAULT_REPOSITORY_METADATA_EXPORT_ENABLEDWhen set to true, metadata export is enabled when you create a repository.false
ADX_DEFAULT_REPOSITORY_FULLTEXT_ENABLEDDefault value for the fulltext indexing activation of a new repository or the Default repository.true
ADX_DEFAULT_JOB_REVIVE_BATCH_SIZEThe number of Jobs that should be revived in a single run (previously it was hardcoded 100).1000

Runtime properties related to LDAP authentication were also added in this release. These properties don't have to be configured unless you want to use LDAP authentication and they are not in the settings file by default. For a full list of LDAP-related properties, see LDAP Runtime Properties.


Properties related to font substitution during conversion have been introduced in this release.

PropertyDescriptionDefault value
CONV_ASPOSE_FONT_FOLDERSList of paths to folders containing font files, as in CONV_ASPOSE_FONT_FOLDERS: "mnt/c/path/to/folder1, mnt/c/path/to/folder2".null (property not written)
CONV_ASPOSE_ALLOW_FONT_SUBSTITUTIONSThis property controls what to do if the font of a converted document is not available. false results in a conversion error, true results in the font being replaced.null (property not written)

Changed Runtime Properties


It is important that each repository uses its own content and cache paths. To reduce the configuration effort, runtime properties ADX_DEFAULT_STORAGE_CONTENT_PATH and ADX_DEFAULT_STORAGE_CACHE_PATH now support the variable repositoryName. The string '{repositoryName}' is replaced with the technical name of the respective repository. This way, each repository gets its own path automatically, and there is no need to manually adapt the path when creating a new repository.

Properties related to communication between ADx and remote Conversion have had their names changed as explained below.

PropertyDescriptionDefault value
ADX_DEFAULT_STORAGE_CONTENT_PATHExample: ADX_DEFAULT_STORAGE_CACHE_PATH: "${TRIBEFIRE_INSTALLATION_ROOT_DIR}/../repository-resources/{repositoryName}/content"tmp/adx-storage/demo
ADX_DEFAULT_STORAGE_CACHE_PATHExample: ADX_DEFAULT_STORAGE_CACHE_PATH: "${TRIBEFIRE_INSTALLATION_ROOT_DIR}/../repository-resources/{repositoryName}/cache"tmp/adx-storage/demo

Removed Runtime Properties


Known Issues

A list of problems we're still working on.

Known Issues ADx

https://jira.braintribe.com/browse/AD-321CRITICALAdd missing indices
https://jira.braintribe.com/browse/AD-348MAJORADx Admin: Repository Modification-Status not updated on Update
https://jira.braintribe.com/browse/AD-342MINORHibernate warnings in the log files
https://jira.braintribe.com/browse/AD-341MINORJava warnings during for Java 9 and later
https://jira.braintribe.com/browse/AD-311MINOROracle - DbLockManager prints Oracle constraint message

Reimporting an Existing Repository Requires UI Reload

In some cases, when reimporting an existing repository, repository properties are not rendered correctly. To make sure properties are rendered correctly, refresh your browser after each import.

Cannot migrate legacy contents simultaneously

Due to cache database being shared between repositories, it's not possible for now to run multiple migration jobs from a single legacy repository at the same time. You need to wait for the previous migration to finish before running a new one.

Known Issues Conversion

https://jira.braintribe.com/browse/AD-338CRITICALIntroduce roles for conversion
https://jira.braintribe.com/browse/AD-337MAJORMake TF Conversion workbench consistent to ADx
https://jira.braintribe.com/browse/AD-501MAJORtf-conversion user has the admin role assigned
 https://jira.braintribe.com/browse/EXTDOCS-71MINORFix wrong encoding on opening resource in Browser

Minor Warnings

StatusLogger Error

The following error currently appears in ADx console output. It doesn't affect ADx functionality or performance.

ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. 
  Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.

Tomcat Shutdown Warning

The following warning is sometimes thrown by Tomcat when stopping the service:

Tomcat did not stop in time.
PID file was not removed.
To aid diagnostics a thread dump has been written to standard out.
Tribefire Host stopped.

This happens when shutdown takes longer than Tomcat expects. Shutdown may take several minutes, which will result in this message being printed out. This warning could appear on both Conversion and ADx.

Java Warnings

When using Java 9 or later, the following warning may appear in application logs and also during installation procedure:

WARNING: An illegal reflective access operation has occurred
WARNING	: Illegal reflective access by com.braintribe.model.processing.itw.asm.AsmClassLoaderWrapper$1 (file:/path/to/instant-type-weaving-1.0.28.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int)
WARNING: Please consider reporting this to the maintainers of com.braintribe.model.processing.itw.asm.AsmClassLoaderWrapper$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

Ticket: https://jira.braintribe.com/browse/AD-341

Hibernate Warnings

The log files may contain Hibernate-related warnings. They can be identified based on the fully qualified class which starts with org.hibernate, as in:

WARNING org.hibernate.tuple.entity.EntityMetamodel 'HHH000084: Entity [com.braintribe.model.user.User] is abstract-class/interface explicitly mapped as non-abstract; be sure to supply entity-names' [TribefireServices-2.0:tribefire-services#initialize,ApplicationLoader:/tribefire-services#initialize]

Ticket: https://jira.braintribe.com/browse/AD-342

These warnings do not affect the functionality of the application and can be ignored. We are working on a fix.