Product Version 2022 Spring


This page provides an overview of the new features provided with the major release and the expected preliminary results provided in our release candidates during the ongoing building process. The Release Candidate are for non-productive use only.

Find our docker images and Helm Charts linked here:
>> Version Tags Services

Table of Contents

Features

Here you will find some of the new release's highlights. Check out the Change Log for further information on all changes.

Please also pay attention to the Breaking Changes and some Update Instructions.

Core

Fail-safe AUTHENTICATION Service (KDDA)

It is now possible to operate multiple instances of the AUTHENTICATION service that use the same session state. Thus, in case one instance is not available for some reason, a parallel instance can step in and continue the running process without any interruption.
>> AUTHENTICATION Service - Running Multiple Instances

To allow the storage of individual user session states in the designated Redis database, the AUTHENTICATION service configuration must be adjusted:
>> Update Instructions 2022 Spring

Longer Tag Names

The length limit of the string tag names is extended to 128 characters.
>> Tagging

Validation of JSON Web Tokens

Internal requests within the yuuvis® Momentum cluster are authenticated via a valid JSON Web Token (JWT). The expiration date is now validated as well. Thus, it is no longer possible to authenticate with a token if its expiration date is exceeded.
>> Validating Internal JSON Web Tokens

Supported Authentication Providers

Keycloak version v15 is supported and is available via Docker image for test installations.
>> yuuvis® Momentum Requirements

Restoring Previous Object Versions (KDDA)

It is possible to restore an old version of an object via a new API endpoint.
>> POST /api/dms/objects/{objectId}/versions/{versionNr}/actions/restore

Custom Audit Entries

An endpoint allows for the creation of audit trail entries for individual objects.
>> POST /audit/api/dms/objects/custom

Changing the value for 'system:parentId'

If the value for the system:parentId property is changed, added or removed, an audit entry with the specific action code 340 is created in addition to the usual audit entry corresponding to a metadata update.
>> Audit Trail - an "Object's History"

Product Version Information

A new endpoint retrieves information on the installed product version.
>> GET /api/dms/info

Loggers for Webhooks

The input and output data for each webhook can be monitored via loggers.
>> 
Loggers for Webhooks

Timeouts for Webhooks

In order avoid system bottlenecks, the time a called webhook may take to process can be limited.
>> Configuring Webhooks

Authentication via Certificates within the Cluster

Services within the yuuvis® Momentum Kubernetes cluster can use certificates in order to internally send authenticated requests instead of conventional user name and password credentials.
>> /wiki/spaces/YMY/pages/320050690

Performance Optimization for CONFIGSERVICE

At runtime, the CONFIGSERVICE applies all changes to configuration files to its local resources first. At regular intervals of 5 minutes, the remote resources on the git server are synchronized. The procedure of collecting and summarizing changes reduces the number of commits that have to be managed by the CONFIGSERVICE in case of a high frequency of change requests.
>> CONFIGSERVICE

This leads to some breaking changes that have to be taken into consideration during the version update.
>> Breaking Changes

Client Services & Client Development

Web-API Gateway

Retrieving User Permissions (KDDA)

A new endpoint provided in the dms-controller retrieves the permissions of the currently logged-in user according to the assigned roles and their definition in the corresponding role set.
>> GET /api-web/api/dms/permissions

Retrieving User Information

For the retrieval of user account-specific data, the user-controller endpoints call the Tenant Management API instead of the USERSERVICE now. This enables the usage of the Web-API gateway in combination with other identity providers than Keycloak. User-specific configurations and contents are still managed via the USERSERVICE.
Note: The API-WEB service requires a running instance of the TENANT-MANAGEMENT service.
>> Breaking Changes

Retrieving Previous Object Versions (KDDA)

Metadata and binary content files of previous versions of a DMS object can be restored via a new endpoint.
>> GET /api-web/api/dms/objects/{id}/versions/{Nr}/actions/restore

New Swagger UI Version

The new Swagger UI provides the Spring Boot Actuator endpoint of the API-WEB service in order to directly retrieve monitoring information. The configuration file authentication-prod.yml configuration file has to be manually adjusted.
>> Breaking Changes

Performance Optimization

The schemata are cached to allow for a faster startup of client applications.

Search Conditions with Negation

The search endpoint allows for negation in conditions now. Thus, e.g., it is possible to search for objects for which a specific property does not have the value null.
>> Search via Web-API Gateway

USERSERVICE

Migration of User Information Endpoints

The USERSERVICE is now only responsible for the management of user-specific settings and contents. The retrieval of account-specific data belongs to the responsibility of the TENANT-MANAGEMENT service. Thus, the user information endpoints GET /userservice/api/users and GET /userservice/api/users/{userId} are removed from the USERSERVICE's API.
>> Breaking Changes

Developer Libraries

Session Management (KDDA)

In order to retrieve a DMS object via URL (e.g., a saved search, a bookmark or an e-mail), a valid authentication session has to be active in the user's browser. If no valid session is open, the user is redirected to a configurable log-in page. After successful authentication, the desired DMS object is retrieved. 

Availability of Object Types (KDDA)

  • The object creation dialog can be configured to offer only those object types for which the currently logged-in user has a creation permission.
    Note: The permission to create new objects is now enabled via a create permission within one of the roles defined via a role set. The YUUVIS_CREATE_OBJECT role does no longer allow object creation. You need to adjust your corresponding role set accordingly.
    >> Update Instructions 2022 Spring
  • The filter options to limit the hit list to objects of specified types offer only those object types for which the logged-in user has a reading access permission.
    >> Defining Roles for a Library-based Client

Task Management (KDDA)

  • The due date of a task can be displayed in the inbox view.
  • It is possible to configure custom confirm actions for a BPM task including an optional form that is offered after activation of the corresponding confirmation action. These so-called outcomes can be configured in static BPM form files as well as in dynamic ones.
    >> Connection of BPM Engine

Presentation of Object Properties (KDDA)

Restoring Previous Object Versions (KDDA)

Metadata and binary content files of previous versions of a DMS object can be restored via client application. A new endpoint of the Web-API gateway is called.
>> DmsService of Core Library

Navigation by Keyboard

The new commands library offers a QuickAccessComponent that simplifies the navigation through the application via keyboard.
>> Custom Client Build with Libraries

Office 365 Integration

The functionality provided by the OFFICE365 and DASHLET services is integrated via plug-in configuration in combination with the VIEWER Service in a library-based client. Thus, it is possible to offer preview and editing possibilities for Microsoft Office content files in your client application.
>> Integration of Office 365 Functionalities

yuuvis® Momentum client as reference implementation

  • All new features offered in our developer libraries are implemented in the client application for demonstration.
  • The standard column and filter configuration as well as its plug-ins cannot be managed any longer via the client application but via the Web-API Gateway instead.

>> Structure and Features of the Client

Tenant Management

Keycloak Version Update to v15

Our tenant management solutions use the Keycloak version v15.
>> Requirements for Tenant Management Services

Tenant Management API

Support of other Identity Providers than Keycloak

The Tenant Management API can be connected with other identity providers than Keycloak via a custom microservice. This connection allows only for reading user data but not for updating them. The Tenant Management API is called by the API-WEB service and the BPM-ENGINE service.
>> TENANT-MANAGEMENT Service

New Swagger UI Version

The new Swagger UI provides the Spring Boot Actuator endpoint of the TENANT-MANAGEMENT service in order to directly retrieve monitoring information. The authentication-prod.yml configuration file has to be manually adjusted.
>> Breaking Changes


Business Process Management (BPM)

BPM Engine

Task Delegation Management

The delegation-related functionality of the endpoint for applying actions to individual tasks is extended. Especially, the following actions allow to apply changes to variables as well:

  • delegate
  • resolve
    Note: The specified values for the variables are updated even if the final resolving process fails.

>> POST /bpm-engine/api/tasks/{taskId}

Release Candidates

The Release Candidates (Alpha) provide the preliminary results expected to be ready at the corresponding date.

The Release Candidates Alpha1-5 are for non-productive use only.

Alpha1 - 16 NOV 2021

Client Services & Client Development

Web-API Gateway
Retrieving User Permissions
  • A new endpoint GET ../api/dms/permission provided in the dms-controller retrieves the permissions of the currently logged-in user according to the assigned roles and their definition in the corresponding role set. (internal: BUD-425)
Developer Libraries
Session Management
  • If no valid session is open, a user requesting an object via URL is redirected first to the log-in page and then to the URL. (internal: BUD-449)
    If the session is timed out, the just used URL will be reopened after logging in.
Permissions of Object Types
  • The object creation dialog and the filter options offer only those object types for which the currently logged-in user has permission. (internal: BUD-9)
Task Management
  • The due date of a task is displayed in the task list of the inbox view.
  • The task list can be toggled between list and column mode.
Presentation of Object Properties
  • The box icons for boolean fields have been optimized for a better user experience. Instead of a box in a box for the undefined null value we are offering a crossed-out box.
  • A field of type boolean can be classified as a switch.
yuuvis® Momentum client as reference implementation
  • All new library features are introduced.

Alpha2 - 30 NOV 2021

Core

Fail-safe AUTHENTICATION Service
  • Multiple instances of the AUTHENTICATION service use the same session state. (internal: OKTO-5011)
Longer Tag Names
  • The length limit of the string tag names is extended to 128 characters. (internal: OKTO-5057)
Validation of JSON Web Tokens
  • The validation of the internal JSON Web Tokens now considers the expiration date as well. It is not possible to authenticate with a token anymore if its expiration date is exceeded. (internal: OKTO-5015)

Client Services & Client Development

Web-API Gateway

Retrieval of User Information
  • The Web-API Gateway uses the Tenant Management API idm-controller instead of the USERSERVICE to read user data. (internal: BUD-6)
New Swagger UI Version
  • The actuator endpoint is offered in the Swagger UI for the Web-API Gateway for monitoring purposes. (internal: BUD-289)
Performance Optimization
  • The schemata are cached to allow for a faster startup of client applications. (internal: BUD-515)
Search Conditions with Negation
  • The search endpoint allows for negation in conditions. (internal: BUD-423)
Developer Libraries
Restoring Previous Object Versions 
  • It is possible to restore an older version. (internal: BUD-20)
yuuvis® Momentum client as reference implementation
  • All new library features are introduced.

Tenant Management

Tenant Management API
New Swagger UI Version
  • The actuator endpoint is offered in the Swagger UI of the Tenant Management API for monitoring purposes. (internal: BUD-289)

Business Process Management (BPM)

BPM Engine

Task Delegation Management
  • An endpoint allows for updating variables and resolving for delegated tasks within a one single request. (internal: ERA-8284)

Alpha3 - 14 DEC 2021

Core

Supported Authentication Providers
  • The Keycloak version v15 is supported and is available via Docker image for test installations. (internal: OKTO-5075)
Product Version Information
  • A new endpoint retrieves information on the installed product version. (internal: OKTO-5051)

Tenant Management

Keycloak Version Update to v15

  • The Keycloak Proxy Service is adapted. (internal: ERA-8317)
  • The Tenant Management API Service is adapted. (internal: BUD-490)
  • The custom Keycloak themes are adapted. (internal: BUD-491)
Tenant Management API
List of roles
  • There is a new idm-controller that lists all roles of the tenant of the requesting user. This endpoint will serve the needs of the BPM-ENGINE Service. (internal: BUD-400)

Alpha4 - 11 JAN 2022

Core

Custom Audit Entries
  • An endpoint allows the creation of individual audit trail entries by custom microservices. (internal: OKTO-4936)
Restoring Previous Object Versions
  • It is possible to restore an old version of an object via API. (internal: OKTO-5079)
Loggers for Webhooks
  • The input and output data for each webhook can be monitored via loggers. (internal: OKTO-5088)

Client Services & Client Development

Web-API Gateway
Restoring Previous Object Versions
  • Metadata and binary content files of previous versions of a DMS object can be restored via a new endpoint. (internal: BUD-20)
Developer Libraries
Presentation of Object Properties
  • In the history, the tags are differentiated by name and status including localization. (internal: BUD-564, BUD-559)
  • You can set an old version as the current one. (internal: BUD-20)
  • You can copy and paste the cell values of a result list. (internal: BUD-593)
  • You can hide technical fields to be delivered with the standard form. (internal: BUD-487)
yuuvis® Momentum client as reference implementation
  • All new library features are introduced.

Alpha5 - 25 JAN 2022

Core

Changing the Value for 'system:parentId'
  • If the value for the system:parentId property is changed, added or removed, an audit entry with the specific action code 340 is created in addition to the usual audit entry corresponding to a metadata update. (internal: OKTO-4876)
Timeouts for Webhooks
  • In order avoid system bottlenecks, the time a called Webhook may take to process can be limited. (internal: OKTO-5086)

Tenant Management

Tenant Management API
Support of other Identity Providers than Keycloak
  • The Tenant Management API can be combined with other identity providers than Keycloak via a custom IDM Proxy Service. All endpoints of the Tenant Management API idm-controller will read user data via this microservice. (internal: BUD-524)
Developer Libraries
Task Management
  • A Taskflow example will be offered with all needed artifacts (process model, task forms, client plugin, localizations, catalog) to be manually deployed. After deploying these artifacts, a Taskflow can be started for each object and will be displayed in the Inbox's task aspect.
  • It is possible to configure custom confirm actions for a BPM task including an optional form that is offered after activation of the corresponding confirmation action. These so-called outcomes can be configured in static BPM form files as well as in dynamic ones. (internal: BUD-789).
Presentation of Object Properties
  • You can set up custom roles for users that should be allowed to see more advanced information in the object summary and history as well as in the 'My Processes' view. You can overwrite the YUUVIS_MANAGE_SETTINGS role that allows to save result list column and filter configurations. (internal: BUD-488)
  • Custom history entries are listed in the object details history aspect and can be filtered. (internal: BUD-715)
  • A title/name and a description property should be assigned to all objects that are managed via a library-based client as they are used in the object details header and the mixed result list. It is now possible to configure the properties in the main.json configuration file to be used for this purpose. (internal: BUD-819)

Navigation by Keyboard
  • The new QuickAccessComponent simplifies the navigation through the application via keyboard. (internal: BUD-560)
yuuvis® Momentum client as reference implementation
  • All new library features are introduced.

Final - 22 FEB 2022

Core

Authentication via Certificates within the Cluster
  • Services within the yuuvis® Momentum Kubernetes cluster can use certificates in order to internally send authenticated requests instead of conventional username and password credentials. (internal: OKTO-5064)

Postponed Features

These initially planned features could not be realized. Some of them are planned for the next version 2022 Summer.

Core

Deleting a Tenant (KDDA)

A tenant including all saved objects can be deleted from the yuuvis® Momentum system.

Client Services & Client Development

Developer Libraries

Presentation of Object Properties

A form field of type string and classification id:organization can be configured such that it is available only for users with a specified role.

yuuvis® architect

Selecting the Target Tenant

System integrators cannot only maintain tenant-specific resources of their own tenant but can select a target tenant now.

Schema Modeling

Administrators are supported to model schemata via the graphical user interface of yuuvis® architect. As a first step, is possible to edit the properties of existing schema files via a self-explanatory form. Alternatively, the XML structure can be edited via an ASCII editor.

  • Tenant administrators can load the deployed tenant schema, edit and save drafts, validate and deploy the drafts.
  • System integrators can maintain the global schema as well as the app schemata.
  • Deployed and draft schemata are shown next to each other for comparison. A difference mode marks the differences.
  • Draft schemata are stored via the CONFIG service.

Configuration Management

Administrators can set up the standard column and filter configuration for their client application as well as its plug-ins.

Tenant Management

Tenant Management API

Support of other Identity Providers than Keycloak

An example custom IDM Proxy Service demonstrates how to connect a different identity provider than Keycloak that supports the idm-controller endpoints. The example microservice connects the web identity management system Auth0.

Changelog

Bugfixes

Hotfixes

Below you will find information about the provided hotfixes. The latest status about the atrefacts can be bound here: "Version Tags Services".

 05 - 27.04.2022

Hotfixes for

componentversiondate
user-service1.6.14/19/22
tenant-management1.7.14/7/22
client3.0.24/5/22
keycloak-proxy 1.2.0-keycloak-15.1.14/22/22


Solved tickets

ticket number

description

component

support call

DB-6262

After updating the user-service cannot startyuuvis MOMENTUM user-service00034879
DB-6238Aufgaben im Eingangskorb können immer bestätigt werdenyuuvis MOMENTUM client00034659

BUD-1100

Missing German Swiss language support especially for the decimal separatorsyuuvis MOMENTUM client
ERA-8568Keycloak-Proxy also forwards the requests belonging to Keycloak-specific openid-connect extensionkeycloak-proxy
ERA-8555The proxy allows access to the account page of a realm userkeycloak-proxy
ERA-8554The proxy allows access to the console of a realmkeycloak-proxy
ERA-8553Keycloak proxy forwards requests with bearer token to correct Keycloak instancekeycloak-proxy
ERA-8631keycloak-proxy allows unautorized GET /auth/admin/realmskeycloak-proxy
 04 - 04.04.2022

Hotfixes for

componentversiondate
api-gateway4.10.0304.04.2022
archive4.10.0304.04.2022
audit4.10.0304.04.2022
authentication4.10.0304.04.2022
commander4.10.0304.04.2022
config4.10.0304.04.2022
contentanalyzer4.10.0304.04.2022
index4.10.0304.04.2022
organization4.10.0304.04.2022
registry4.10.0304.04.2022
repository4.10.0304.04.2022
search4.10.0304.04.2022
system4.10.0304.04.2022


Solved tickets

ticket number

description

component

support call
DB-6230Creating schema for a new tenant fails with 400 - not foundyuuvis MOMENTUM coreDIGPLTF-2217
 03 - 17.03.2022

Hotfixes for

componentversiondate
api-gateway4.10.217.03.2022
archive4.10.217.03.2022
audit4.10.217.03.2022
authentication4.10.217.03.2022
commander4.10.217.03.2022
config4.10.217.03.2022
contentanalyzer4.10.217.03.2022
index4.10.217.03.2022
organization4.10.217.03.2022
registry4.10.217.03.2022
repository4.10.217.03.2022
search4.10.217.03.2022
system4.10.217.03.2022


Solved tickets

ticket number

description

component

support call
OKTO-5167Configservice upgrade breaking tenant-management swagger-UI responseyuuvis momentum core
 02 - 17.03.2022

Hotfixes for

componentversiondate
repositirymanager4.1.015.03.2022


Solved tickets

ticket number

description

component

support call
DB-5951repositorymanager has inconsistent behavior with non-ASCII-Component IDs (e.g. with Umlauts)yuuvis momentum repository manager00026976
 01 - 07.03.2022

Hotfixes for

componentversiondate
api-gateway4.10.104.03.2022
archive4.10.104.03.2022
audit4.10.104.03.2022
authentication4.10.104.03.2022
commander4.10.104.03.2022
config4.10.104.03.2022
contentanalyzer4.10.104.03.2022
index4.10.104.03.2022
organization4.10.104.03.2022
registry4.10.104.03.2022
repository4.10.104.03.2022
search4.10.104.03.2022
system4.10.104.03.2022


Solved tickets

ticket number

description

component

support call
OKTO-5115Revision of ConfigService for frequent storage of resourcesyuuvis momentum core