1. General Information




Java Persistence Api


Operating System

Windows or Linux

The system has to be able to run Java programs


minimum of 750 MB RAM

may vary

Disk Space

approx. 250 MB RAM

may vary


- MS-SQL Server 2008

- MySQL 5.6.0 or newer

- PostgreSQL

or an embedded H2 database

2. New Features

The following features have been added.



Systemd PID file now stored /run instead of inside the translationstudio directory.


Potential NPE when analysing request uids during page pool evaluation.


Discard translation requests with invalid data instead of retrying later.


New PONS connector added


Fix Azure connector not fetching supported languages


Remove orphaned monitored files in translation if the underlying connector configuration has been removed. Such elements cannot be queried anymore anyway.

Patched version 2.2.224 of H2 due to known (yet unaffected) security vulnerabilities


Replace deprecated stateless session queries with session JPA


Evaluate CMS secure connection flag for test connection


Upgraded libraries


Delete repository files that cannot be translated instead of deactivating them


SUMM AI connector added


Java17 migration


Configuration webapp added


Remove double spaces from XML file via event com.idmedia.translationstudio.events.RemoveDoubleSpacesInXmlTextEvent


DeepL connector can use glossaries


REST api provides connector configuration list


New events aded

Rest v2 endpoints updated

Hooks removed entirely from configuration


TMS projects and files containing entities produce readable display names.

Email notifications containing entities contain readable name.


Migrating java mailer dependencies.


Connectors may archive projects once all files have been downloaded.


Error mails include server instance name for transparency if having a multi-instance environment.

Improved chipher key length drastically for better protection of secrets.

Configuration files are split into different files per section for easier handling.

Remove navigation from translated xml file event.

Health monitor mail includes server instance name.


New event added to Create an additional file once all files have been uploaded to the connector via ICreateAdditionalFileAfterConnectorProjectFilesUploadedEvent


Clear temporary working import and export directories on startup.


DeepL connector queries available source and target langauges.


REST API update.


Updated REST api to modify monitored files in translation datasets (TMS checks).


Updated REST api.


Monitored files will also contain information about target TMS project name, file name and CMS pages.


Downloaded translated XMLs will be parsed to verify XML structure.


New event added to process all additional files from a list of translatable files to create a summary text that could be used to create a TMS project description.


Translation request will be evaluated and only be stored if the target connector project is available.

REST API updated.


Very old files in translation may be marked as obsolete to avoid infinite checks.


New events added.


Failed imports may be retried if eligible.


New event to allow checking an importable XML file before it is actually being imported.


Custom Error Notification for e-Spirit Cloud (TSCORE-797)


translationstudio diplays memory configuration in the logfile for clearer startup transparency.


Improved AI translations.


Events can be registered using startup xml.

Default event to group xml candidates by request


You can register connector event handler to customise a connector to your needs.

FragmentCreator support

Maximum number of pages/datasources per job can be configured per quota.


New Hook allows to access the process right after the XML files have been processed by a connector.


API changes


Rest endpoint added to simply ping the backend to programmatically check if it is running.

Java 11 migration completed.

Hooks can be configured using the configuration panel instead of using a dedicated xml file.

Jobs contain urgency information


Application settings moved to separate configuration xml to separate dynamic from static settings.

Additional load balancing settings added to the configuration panel.

Across project names can add the name(s) of the page(s) to be translated using a new pattern.

MemoQ project names can add the name(s) of the page(s) to be translated using a new pattern.

Versioning pattern changed from numeric to semantic pattern.

Set default TLS connection algorithm


It is possible to configure how detailed the translation status is to be stored.

PagePool datasets are removed after a job has been processed successfully.

FS-Report re-designed.

Translation status information are stored in a dedicated table instead of the pagepool table (separation of concerns).

Connectors create readable file names when uploading a translatable XML file.

Across connector configuration ignores archieved projects.

Across can apply filters in the connector (backend).

Across projects can be created using a custom naming pattern.

Across reuses its security token.

HTTP REST API validates header bearer everywhere.

GDPR Notice informs about encoded mail address in XML.

The online documentation also contains the simple XML format dokumentation.


translationstudio checks accessibility of the TMS before trying to submit files for translation.

Machine translation connectors import translated XML files again by default.

It is possible to select which information is to be shown on the dashboard.

FS-Report includes number of XML files in translationstudio’s import/error directory.

FS-Report shows detailed list of monitored file status update.

Debugging option: remove temporary export/import directories to evaluate xml files.

translationstudio documentation styling improved.

If the translationstudio FirstSpirit service component cannot be obtained due to class loading issues, a detailed log information will be given with a hint on how to solve the issue.

translationstudio workflows and templates use FS_CATALOG instead of deprecated FS_LIST input components (language mappings have to be updated again).


Editor Manual contains more specific and detailed information.

Improved documentation.

translationstudio requires an api-key in order to process any requests.

FS-Report includes monitored files in translation as well as metrics.

Projects can update translationstudio components automatically if configured.

Across connector documentation added.

SDL connector documentation added.

memoQ connector documentation added.


translationstudio verifies that a connector is on the classpath before transferring files with it.

New translation status allows to differentiate between files about to sent to a connector and those successfully forwarded by it.

Across connector provides a more detailed logging to analyse its progress.

translationstudio can be updated automatically in all projects if a technical properties file is used.

The custom input components used in a translation workflow form can be defined in a separate script form to avoid loss during an update process.

Improved API and tutorials to allow for custom developments.

Connector documentation includes all default connectors (Filesystem, AWS, DeepL, Google Translate).

Editor Manual contains more specific and detailed information.

3. Fixed Issues

The following issues have been fixed.



Fix error counter in transferrable files.


If a processable job contains XMLS that cannot be found on the filesystem anymore, they will be ignored.

By default, a translation will be submitted to a connector once instead of retrying 10 times.


Deadline in the past will be ignored when submitting files to a TMS via connectors.

If a connector transfer failed, job error counter might not have been increased creating infinite jobs.


Migrate txt-processor into cms library


Before querying any translation status, a test connection is established to only query if possible


Fixed machine translation configuration property falsely interpreted as string

Machine translation can ignore capacity requirements if not set


Fixed user id evaluation in translation request


Storing hook configuration again


Metric JSON fix


Fix encryption on mail settings patch.


Check if configuration has to be migrated.


Translating a single DOM sentence may cause it to be ignored (#70247).


Machine translation connector may crete empty translation candidates if the character limit is too low.


Machine translation evaluates html sentence structure and identifies simple sentences.

Machine translation linearizes translated text if the phrase order cannot be maintained or if the source structure was disrupted by the translation service.


Machine translation target language identification is case insensitive


Duplicate Base64 encoding of custom messages may have broken additional text file creation.


Custom admin email was not persisted permanently.


Added -Dlog4j2.formatMsgNoLookups=true to jvm.conf to address CVE-2021-44228 (precaution only). For more information, consult our Security Bulletins page.


Mail sending loads custom properties file to allow for a more detailed configuration to avoid legacy transport protocol issues.


Dateiname der CreatePreviewHook XSL Datei korrigiert (HELP-54041).


When sending the shutdown signal, the stop script will wait until the application has shutdown to avoid restart timing issues (Linux).

Windows service installation batch file provides accessible configuration options instead of a single one line command.

Windows service installation process fixed issue in which the service would not start properly.

Windows service start/stop processes log information to a log file for easy debugging in case of startup problems.


Pagebased notification endpoint XML result update.


translationstudio starts with specific max memory settings.


Hibernate queries migrated to JPA to eliminate deprecated method calls.


Plain text messages will explicitly set UTF-8 charset in mime type information.


Fixed issue which resulted in incorrect identification of rich-text nodes for machine translations (HELP-51975).


Fixed trailling space at the end of a machine translation sentence (HELP-51557)


Fixed miscalculation of allowed retry boundary of failed TMS uploads.


Empty sections caused import to stop and consider the file errorneous.


Translation status elements are identified based on source and target language correctly.


Special characters are encoded correctly by machine translation connectors and translation helpers.


Special character never brake translation request anymore.


Translatable xml files will not be processed infitely.

Files that cannot be transferred to a TMS will be marked as errorneous and not processed infitely.

DeepL does not split input text.


Machine translation will only log to log level FINE


REST response changed to plain text for immediate translation to avoid xml parsing


Machine translation format changes will not cause an error notification email.

Hooks configuration fixed.


More efficient way of loading user notification email addresses.

Avoid sending too many notification emails to users at once


Admin notification module: Potential NPE caught if an exception provides a NULL message.

Hibernate and Netty dependencies updated to latest available versions.

Unused dependencies removed.

API key creation issue fixed.

Send multiple notification emails instead of one if necessary.

Temporary download directory will only be created if there are actual files to be downloaded by a connector.

Improved memory management when sending e-Mails.


Potential email injection attacks fixed.

Potential XML external entity (XXE) injection fixed.

Potential XSLT External Entity (XXE) vulnerability fixed.

When connecting to Translation Memory Systems via HTTPS, translationstudio relies on the default keystore for certificate evaluation.

Connector project list in language mapping template sorts list alphabetically.

ContentCreator JavaScript status icon correctly shows source and target language for translated pages.

Translation workflow shows correct date for each translation status instead of date of first insertion.

Translation status updated (about to be forwarded to translator) based on job id may have included elements not actually being processed.

Avoid overloading of the file system, processors or memory of the operating system when extracting ZIP files recieved from TMS API calls or sycned folders by a Connector (CVE-2018-16131).

Better dependency management by avoiding jar dependencies in translationstudio jars.

Changed FirstSpirit MailService usage when evaluating ScheduledTask log errors to avoid potential spam marking (if at all).

Dataset fields of type String are updated if translated despite changed column name in data xml format in FS version 2020-03.


UTF-8 encoding problems fixed in immediate translation using DeepL.

If an import is being interrupted by the shutdown process, failed import attempts will not be stored.

Added explicit UTF-8 encoding when converting String to bytes and vice versa.

Potential charset error when decoding a REST answer fixed.

Language dependent imagemap components using an FS_CATALOG in a link template are processed correctly.

Added logging if the configuration cannot be sent to the backend application.

Custom messages with full UTF-8 charset support.

If a requestration request cannot be stored in the DB, the process pauses instead of logging errors.

Errorneous soap responses with invalid content-type text/html result in specific logging with possible fix instructions.

Encrypted mail addresses are stored in the XML file.

Notifications are sent based on particular XML instead of job id.

License Validator gibt fehlerhafte ERROR-Message im Log aus.

Language mapping templates use FS_CATALOG instead of deprecated FS_LIST component.


EasyConnector correctly names merged zip file also if based on one source zip file only.


Language dependent imagemap with nestes FS_CATALOG component correctly switches source and target languages to allow for a correct import.


Start/Stop Script checks for wrong process id and stops the translationstudio service irrespective of that (Linux).

Translatable XMLs that could not be found by the connector will be checked up to 10 times to avoid incorrect lookups.

If being shutdown, translationstudio does not update monitored file status information to avoid false status results caused by a request interruption.

translationstudio workflows and templates use FS_CATALOG instead of deprecated FS_LIST input components.

Status change notification mails will be sent to users again.

Specific information will be logged if a connector module is missing.


Across connector now times out if a connection is idle for too long

Words in XLIFF files will be counted (optionally)

EasyConnector executes shell commands when merging multiple zip files into a single one


Translation status of files monitored by a connector will have more detailed information available.

Monitored translations will not be removed from the database but flagged to allow for a more detailed analysis in case of errors and success.

translationstudio will remove any page reference from its temporary FirstSpirit database tickets to reduce irrelevant dependency information.

translationstudio’s REST API allows for a more transparent error handling.

Improved error handling in case a connector cannot find a translation to be monitored.

translationstudio’s FirstSpirit project component will detect if the schema used does not support schema sync.

translationstudio’s FirstSpirit component loads its dependencies not provided automatically if started via the FS Launcher.

Health report does not list system processes anymore

4. Update Information

4.1. Database Structure

When updating, all PagePool database entries will be migrated to a new translation status information table.

Upon success, now obsolete PagePool entries will be removed and only those entries kept which match the following criteria:

  • Translation state machtes state of "available for new job"

  • Job id field equals zero

Although the migration process will be started upon application start automatically, you may want to backup your database.

4.2. FirstSpirit Templates

translationstudio’s language mapping templates will be updated from the deprecated FS_LIST to FS_CATALOG input component automatically. Unfortunately, the existing values cannot be stored and will have to be edited and saved manually.

5. Known Issues

  1. Due to FS_LIST deprecation, translationstudio Version 4.2.0+ migrated from FS_LIST to FS_CATALOG. Therefore, all language mapping instances (global content pages) may have to be updated again manually.

  2. If translatable XML files contain FS_LISTs, you have to wait until they are imported again before changing the input components to FS_CATALOG.

  3. translationstudio requires page and section reference names to be lowercase alphanumeric and to (optionally) have a underscore character. This pattern will be used automatically when creating new pages or sections using ContentCreator or SiteArchitect. If you create sections or pages using the FirstSpirit API, you have to guarantee this pattern yourself. Elements not following this pattern will not be processed by translationstudio.

  4. Listable dataset fields created in FirstSpirit Version 4.x (i.e. CONTENTAREALIST etc.) will not be processed due to a change in their type attribute.

  5. Licenses issued for version 2.1.x or earlier cannot be read and a new license needs to be issued.

6. Acknowledgements

Due to the internal processing of FS_LIST and FS_CATALOG input components and potential non-existing fields in XML files using FirstSpirit’s filesystem synchronisation feature, it might be necessary to overwrite the target language xml file with the source’s original and replace its target fields. Therefore, changes made to the target language’s fields might be overwritten, e.g. manually added list entries. However, it is possible to restore previous versions using FirstSpirit’s version history.

7. Help

The Technical Support of the e-Spirit AG provides expert technical support to customers and partners covering any topic related to the FirstSpirit product. You can get and find more help concerning relevant topics in the FirstSpirit community.