Administrations-Changelog

Diese Seite zeigt Änderungen, die in den Releases der einzelnen Versionen enthalten sind und explizit für Administratoren relevant sind. Als Administrator werden Personen angesehen, die Updates am BPC durchführen und administrative Konfiguration im BPC durchführen.

Für die Auflistung aller Änderungen siehe Changelog.

BPC 4.1.28

Release date: 2026-01-16

The following components must be updated with this update: BPC modules | Karaf

Improvements

  • Unser Karaf startet über 10mal langsamer als ein Vanilla Karaf BPC-9395

    Affects: Karaf |

BPC 4.1.27

Release date: 2025-11-17

The following components must be updated with this update: BPC modules | Karaf | Java

Improvements

  • Beim deinstallieren von Bundles kommt es zu Exceptions BPC-10228

    Affects: BPC Core |

Security

  • mssql-jdbc:12.6.1 | CVE-2025-59250 BPC-10266

    The driver provided via pax-jdbc-mssql is no longer delivered.

    Please ensure that the MSSQL driver used has at least one of the following versions: 10.2.4, 11.2.4, 12.2.1, 12.6.5, 12.8.2, 12.10.2, 13.2.1

    If an older driver is being used, it should be replaced. Remove the old driver by deleting it from the deploy directory or by uninstalling pax-jdbc-mssql or the driver itself. Then install a current driver (without the pax-jdbc-mssql feature). See also: Databases

    Affects: Dokumentation | Karaf |

Bugs

  • Going to use the local/Karaf IDP as fallback not working BPC-9837

    If the configured identity provider is not reachable, it is no longer incorrectly logged that the local Karaf identity provider has been selected as a fallback. Instead, it is indicated that this could be enabled as a fallback.

    Affects: BPC Core | Dokumentation |

  • Keycloak: Geänderte "GET /groups" API Request ab Version 26+ BPC-10149

    Ein Fehler wurde behoben, dass der Endpunkt GET /cxf/bpc-core/im/organisations nicht mehr KeyCloak-Gruppen listet, die als Untergruppen definiert sind. Grund war eine Änderung im Verhalten von KeyCloak ab Version > 26.

    Affects: BPC Core |

  • bpc.env.sh DE_VIRTIMO_BPC_DECANTER_APPENDER_OPENSEARCH_DELETEENTRIESOLDERTHAN greift nicht BPC-10169

    In the central configuration file (bpc.env.sh), an error in the commented-out option DE_VIRTIMO_BPC_DECANTER_APPENDER_OPENSEARCH_DELETEENTRIESOLDERTHAN was fixed. Previously, activation did not work because the value must be enclosed in quotation marks. The Windows variant was not affected.

    Affects:

  • Replikation erkennt fälschlicherweise eine Endlosschleife BPC-10181

    Affects: BPC Core |

Dependency Updates

  • Update Karaf BPC-9960

    With this update, the Karaf version is upgraded to 4.4.8. It is necessary to update the modules bpc-be-core, bpc-be-analysis, bpc-be-forms, and bpc-be-monitor.

    For BPC module developers

    With the updated Karaf, we are delivering CXF 3.6.8 instead of 3.6.7, which provides Jackson in version 2.19.2.

    Please update the CXF version (3.6.8) and Jackson version (2.19.2) in your pom.xml. Check whether you have an Import-Package statement for this version. This must be added or adjusted if you use Jackson features such as the ObjectMapper class.

    <Import-Package>
    ...
    com.fasterxml.jackson.*;version="[2.17.2,3.0.0)",
    ...
    </Import-Package>
  • Update java BPC-10235

    Affects:

BPC 4.1.26

Release date: 2025-10-13

The following components must be updated with this update: BPC modules

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • HTTP proxy filters X-APIKey header BPC-10011

    Http calls via an Http-Proxy or Flow connection filter out the BPC Api-Key header (X-APIKey). Attention: This could affect existing BPC configurations, for example if an INUBIT process is triggered that in turn makes calls to the BPC API using the provided API key. (In this case, it would be better to store a fixed BPC API key in the INUBIT process.)

    Affects: BPC Core | Dokumentation |

Improvements

  • Boolsche Werte in Einstellungs-Tabelle besser darstellen und setzen BPC-9968

    For boolean values in the settings tables, a combo box is no longer displayed; instead, only the checkbox with the truth value is shown. The value can be changed by clicking, pressing the space bar, or pressing Enter.

    Affects: BPC Core |

Security

  • HTTP proxy filters X-APIKey header BPC-10011

    Http calls via an Http-Proxy or Flow connection filter out the BPC Api-Key header (X-APIKey). Attention: This could affect existing BPC configurations, for example if an INUBIT process is triggered that in turn makes calls to the BPC API using the provided API key. (In this case, it would be better to store a fixed BPC API key in the INUBIT process.)

    Affects: BPC Core | Dokumentation |

  • Default für filterSessionCookie auf true BPC-9926

    For new backend connections of the type HTTP-Proxy and Flow, the option Filter BPC Session is enabled by default.

    Affects: BPC Core | Dokumentation |

Bugs

  • Replikation in Endlosschleife BPC-10121

    It could happen that replication got stuck in a certain time window if this window bordered on the present and no records were found.

    Affects: BPC Core |

  • JavaScript Modifikatoren können nicht ausgeführt werden BPC-9993

    For existing Karaf installations, add the following value to KARAF/etc/custom.properties:

    # the base value is from config.properties and has been extended
    # by the packages 'jdk.internal.access' and 'jdk.internal.module'
    org.osgi.framework.bootdelegation = \
        com.sun.*, \
        javax.transaction, \
        javax.transaction.xa, \
        javax.xml.crypto, \
        javax.xml.crypto.*, \
        javax.security.cert, \
        jdk.nashorn.*, \
        sun.*, \
        jdk.internal.reflect, \
        jdk.internal.reflect.*, \
        org.apache.karaf.jaas.boot, \
        org.apache.karaf.jaas.boot.principal, \
        jdk.internal.access, \
        jdk.internal.module

    Affects: Data Analysis | Karaf |

BPC 4.1.25

Release date: 2025-08-21

The following components must be updated with this update: BPC modules

Improvements

  • Per Default die Gruppierung in den BPC Settings Tabellen aktivieren. BPC-9737

    The option for grouping settings is now initially enabled. It is recommended to use this view, as the settings are displayed together in a common context.

    Affects: BPC Core |

  • Status change: Automatic preselection of the target status BPC-9816

    For the process status change, it is now possible to configure the preselection of a value. The preselection is controlled via the configuration preselectState in the setting function_changeStateConfig.

    "preselectState": "_first": Always selects the first available value from the dropdown. "preselectState": "<search value>": Selects the first entry that contains the specified text (case-sensitive). Both raw values and display names (from Custom Renderer) can be used.

    If exactly one process is loaded and there are exactly two values to choose from, the status field automatically selects the status that does not correspond to the current status.

    Example configuration

    [
        {
            "dataIndex": "STATUS",
            "useDistinctValues": true,
            "preselectState": "Offen"
        },
        {
            "dataIndex": "VALID",
            "useDistinctValues": true,
            "preselectState": "no"
        },
        {
            "dataIndex": "STATUS2",
            "useRendererValues": true,
            "useDistinctValues": false,
            "preselectState": "_first"
        }
    ]

    Affects: Process Monitoring |

Bugs

  • Replikation stoppt bei Lücken > blockDayRange BPC-9606

    Affects: BPC Core |

  • Datenmodifikator-Editor speichert nicht immer aktuellsten Stand beim Speichern BPC-9613

    Affects: BPC Core |

  • Maintenance Modus lässt sich über UI aktivieren aber nicht wieder deaktivieren. Error: "Not allowed to set local server properties" BPC-9799

    If the BPC is operated in a cluster, it was sometimes not possible to deactivate maintenance mode via the GUI.

    Affects: BPC Core |

BPC 4.1.24

Release date: 2025-06-02

The following components must be updated with this update: BPC modules | Java

Security

  • Filter session cookie content from log file BPC-9533

    The logging configuration has been changed so that session tokens are masked. For new installations of Karaf, this happens automatically. For existing installations, please adjust the configuration file [KARAF]/etc/org.ops4j.pax.logging.cfg. Replace the old line

    log4j2.maskpasswords.pattern = %replace{${log4j2.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}{******}

    with the following lines

    # Chained replacement patterns to mask sensitive information
    # Filter out UUIDs as these are used as session cookies (keycloak+oidc)
    log4j2.maskuuids.pattern = %replace{${log4j2.pattern}}{(?i)([a-f0-9]{4})[a-f0-9]{4}(-[a-f0-9]{4}){3}-[a-f0-9]{8}(([a-f0-9]{4}))(?-i)}{$1****-****-****-****-********$3}
    # Filter out JWT Tokens that might contain session ids
    log4j2.maskjwt.pattern = %replace{${log4j2.maskuuids.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.[\\w-]+}{***(JWT)***}
    log4j2.maskunsecuredjwt.pattern = %replace{${log4j2.maskjwt.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.}{***(JWT)***}
    # Filter out 256bit (64 hex digits) UUIDs used for karaf session cookies and API keys
    log4j2.maskkarafsessioncookie.pattern = %replace{${log4j2.maskunsecuredjwt.pattern}}{[0-9a-fA-F]{64}}{******}
    # Filter out passwords
    log4j2.maskpasswords.pattern = %replace{${log4j2.maskkarafsessioncookie.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}{******}

    Since with Keycloak and OIDC the session tokens are UUIDs that are also used elsewhere, we log the first and last four characters here.

    Affects: BPC Core | Dokumentation | Karaf |

Bugs

  • PDF kann im Prozessmonitor nicht über INUBIT zum Download und für den Fileviewer angeboten werden BPC-9105

    If binary files were loaded via INUBIT or another backend system, it could happen that the files were corrupted when downloading or viewing them.

    Affects: Process Monitoring |

Dependency Updates

  • Update ExtJS BPC-9564

    Affects:

  • Update com.nimbusds:oauth2-oidc-sdk BPC-9669

    Affects:

BPC 4.1.23

Release date: 2025-04-08

The following components must be updated with this update: BPC modules

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • Restriction of the visibility of the gear icon for widget configuration in the dashboard BPC-9087

    Dashboard widgets now only display the configuration icon if the user is allowed to edit the dashboard. For this, they need the bpcDashboard_editDashboard permission. Users without this permission can no longer edit dashboard widgets. If editing options (e.g., for custom widgets) should still be offered, the corresponding permission must either be granted or the configuration must be provided through alternative means (e.g., via the widget header).

    Affects: Process Dashboard |

Improvements

  • In the monitor export, CustomRenderer and the `translate` formatter are applied BPC-9100

    Affects: Process Monitoring |

  • Berücksichtigung aller Renderer in Filter-Auswahlliste BPC-8112

    Affects: Process Monitoring |

  • Anzahl der selektierten Zeilen bei Statusänderungen anzeigen BPC-8673

    Affects: Process Monitoring |

  • Anzeige der Anzahl selektierter Prozesse/Zeilen BPC-8722

    In the setting moduleHeaderContent, the parameter showSelectionCounter in the metablock can be used to control whether the number of selected records is displayed.

    [
        {
          "id": "metadata",
          "config": {
            "showFilter": false,
            "showSorter": false,
            "showSelectionCounter" : true
            }
        }
    ]
  • Restriction of the visibility of the gear icon for widget configuration in the dashboard BPC-9087

    Dashboard widgets now only display the configuration icon if the user is allowed to edit the dashboard. For this, they need the bpcDashboard_editDashboard permission. Users without this permission can no longer edit dashboard widgets. If editing options (e.g., for custom widgets) should still be offered, the corresponding permission must either be granted or the configuration must be provided through alternative means (e.g., via the widget header).

    Affects: Process Dashboard |

  • BPC Start-Skript sollte nicht jeweils 30 Sekunden warten (nach OpenSearch Start und nach Karaf Start) BPC-9332

    The start script no longer waits 30 seconds after starting OpenSearch and Karaf. If problems occur where OpenSearch is not available in time, the Watchdog should be used.

    Affects:

  • BPC Start-Skript von Setup-Funktionen trennen BPC-9372

    The start script no longer makes any changes to the environment. Directories must be configured according to the installation instructions, and JAVA_HOME must also be configured correctly.

    Affects:

Bugs

  • ProzessStarter: "windowWidth" und "windowHeight" wirken sich nicht auf Fenster aus BPC-9042

    The ProzessStarter configuration for windowWidth and windowHeight now correctly affects the window.

    Affects: Process Monitoring |

  • Invalid operators for numeric column filters BPC-9082

    The selection of an operator for "number" filters has been restricted to the operator list. The default operator is defined as "=" and, additionally, the default operator can be changed in the filter configuration within the column configuration. See also Konfiguration der Monitor-Spalten

  • Recht bpcMonitor_editMonitorViews lässt sich nicht auf einzelne Modul-IDs einschränken BPC-9329

    The right bpcMonitor_editMonitorViews can be set for specific instances to create and modify views in certain monitors by appending the module ID at the end.

  • Änderung in karaf/etc/de.virtimo.bpc.core.cfg werden zur Laufzeit nicht umgesetzt BPC-9413

    Affects: BPC Core |

Documentation

BPC 4.1.22

Release date: 2025-03-10

The following components must be updated with this update: BPC modules | OpenSearch | OpenSearch Plugin

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

New features

Improvements

  • Optimized use of OpenSearch to avoid misleading warnings BPC-9175

    In the OpenSearch log, there are many logs such as "QueryGroup _id can’t be null, It should be set before accessing it." This is a known bug in OpenSearch that was introduced with version 2.18.0. We have reduced the output as much as we could from our side.

    Affects: BPC Core |

  • Default Charts im Analyse Modul kompatibel für das Dark Theme gestalten BPC-9293

    Note: If users already have existing installations of the default instance (BPC Default Reports) in the Analysis Module, it is recommended to set the chart background color to full transparency (RGBA alpha value: 0) under Chart Configuration → Settings → Background Color. This improves visualization when used with the Dark Theme.

    Affects: Data Analysis |

Bugs

  • Es werden keine OpenSearch Backups ausgeführt BPC-9334

    Snapshots whose names do not conform to the current naming scheme have blocked the execution of the backups.

    Affects: BPC Core |

  • HTTP Proxy setzt ungültige Header bei Verwendung von HTTP/2 BPC-9337

    If the HTTP proxy used an HTTP/2 connection, the pseudo-header ":status" was forwarded to the client. This leads to an error if interpreted strictly. For example, in this case, nginx reported a 502 Bad Gateway error to the client.

    Affects:

  • Deployment error BPC-9221

    If a deployment was carried out from a BPC with existing monitor views to a BPC that did not yet have any views, an error occurred.

    This error has been fixed.

    Affects: BPC Core |

  • Instanzspezifisches Recht zum Editieren von HTML Content BPC-9365

    A bug was fixed that prevented instance-specific HTML content editing rights from being granted via the role htmlcontent_editor_<MODULE-ID>.

    Affects: BPC Core |

Dependency Updates

BPC 4.1.21

Release date: 2025-02-10

The following components must be updated with this update: BPC modules | Karaf

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

  • Aktualisierung der TLS Härtung BPC-9256

    For the hardening of the TLS settings, properties were set in custom.java.security.

    If you are not yet using a custom.java.security file via Zentrale Konfigurationsdatei, you should do so.

    Existing custom.java.security files should be supplemented with the following entry:

    jdk.tls.disabledAlgorithms=X448, secp521r1, SHA1, include jdk.disabled.namedCurves

    Affects:

  • Custom Java Security Einstellungen via bpc.env für OpenSearch BPC-9259

    The bpc.env files now also set the security.properties for OpenSearch from the custom.java.security file. As a result, changes in the file affect both Karaf and OpenSearch.

    When using a bpc.env, it is recommended to update it. If not already present, the file custom.java.security should be added. The following must be added for this purpose.

    bpc.env.sh
    export OPENSEARCH_JAVA_OPTS="$OPENSEARCH_JAVA_OPTS -Djava.security.properties=../custom.java.security"
    bpc.env.cmd
    SET OPENSEARCH_JAVA_OPTS=%OPENSEARCH_JAVA_OPTS% -Djava.security.properties=..\\custom.java.security

    Affects: Dokumentation |

Improvements

  • Statische Settings BPC-8614

    With the BPC license, settings can now be protected from modification. This will primarily be used in our cloud installations (K8s). For example, we use the core setting 'backupRepository' to define the configuration of OpenSearch backups in an Amazon S3 bucket, and this should not be changeable via the BPC frontend.

    To achieve this, the XML can be extended with the list element NON_WRITEABLE_SETTINGS containing the IDs of the non-editable settings when creating the license.

    Excerpt from a sample license:

    <?xml version="1.0" encoding="UTF-8" ?>
    <license>
        <bpc>
            <licenseKeys>
            ...
            </licenseKeys>
            <licenseMaps>
            ...
            </licenseMaps>
            <licenseLists>
                <NON_WRITEABLE_SETTINGS>
                    <_core_noinstance_backupRepository/>
                    <_core_noinstance_identityProviderBackendConnection/>
                </NON_WRITEABLE_SETTINGS>
            </licenseLists>
        </bpc>
    </license>

    The settings (example: _core_noinstance_backupRepository) are the same as those used in the OpenSearch index 'bpc-configuration'.

    The structure is as follows: <ModuleId>_<InstanceId>_<SettingName>

    If it is a setting of a module and not of an instance/component, then the value noinstance is to be used for <InstanceId>. You can find the <SettingName> by displaying the "ID" column in the settings grid in the BPC frontend.

    Example: _core_noinstance_backupRepository

    • <ModuleId> = _core

    • <InstanceId> = noinstance

    • <SettingName> = backupRepository

    Affects: BPC Core |

  • Anzahl der Shards von neu anzulegenden OpenSearch Indices reduzieren BPC-9049

    We have reduced the number of shards in the Core_IndexTemplates setting to 1. This is also the default setting that Elasticsearch/OpenSearch has been using for new indexes for a few years. This only affects newly created indices. Indices that have already been created are not affected.

    Affects: BPC Core |

  • Reduktion der Zugriffe auf die OpenSearch Backup-API BPC-9189

    By optimizing access to the OpenSearch Backup API, fewer accesses to the data storage are performed. This reduces the corresponding costs, for example, when using Amazon S3.

    Affects: BPC Core | OpenSearch |

  • JSON Daten sollen nicht automatisch sortiert werden BPC-9227

    When saving JSON settings, attributes within objects were automatically sorted. This behavior has been disabled. This makes it possible to arrange the order according to your own criteria.

    Affects: BPC Core |

  • Custom Java Security Einstellungen via bpc.env für OpenSearch BPC-9259

    The bpc.env files now also set the security.properties for OpenSearch from the custom.java.security file. As a result, changes in the file affect both Karaf and OpenSearch.

    When using a bpc.env, it is recommended to update it. If not already present, the file custom.java.security should be added. The following must be added for this purpose.

    bpc.env.sh
    export OPENSEARCH_JAVA_OPTS="$OPENSEARCH_JAVA_OPTS -Djava.security.properties=../custom.java.security"
    bpc.env.cmd
    SET OPENSEARCH_JAVA_OPTS=%OPENSEARCH_JAVA_OPTS% -Djava.security.properties=..\\custom.java.security

    Affects: Dokumentation |

  • The BPC license filename should allow an additional .virtimo file extension for joining BPC & inubit licenses. BPC-7813

    The file name of the license can now also be license.xml.virtimo. Previously, it had to be license.xml.bpc. This makes it possible to use a license that is also a valid INUBIT license file at the same time.

    Affects: BPC Core |

  • Generierung des Config-JSON für das BPC Frontend beschleunigen BPC-9263

    The loading of the BPC configuration in the client is accelerated by the change.

Security

  • Aktualisierung der TLS Härtung BPC-9256

    For the hardening of the TLS settings, properties were set in custom.java.security.

    If you are not yet using a custom.java.security file via Zentrale Konfigurationsdatei, you should do so.

    Existing custom.java.security files should be supplemented with the following entry:

    jdk.tls.disabledAlgorithms=X448, secp521r1, SHA1, include jdk.disabled.namedCurves

    Affects:

Bugs

  • Data_Filter: Keine Platzhalter-Ersetzung bei roles und Verwendung von "#" BPC-9110

    The placeholder #user.loginName# is now correctly replaced in the Data_Filter when the dynamic filter # is used.

    Affects: Process Monitoring |

  • Umgang mit mehreren Session Cookies BPC-9164

    If the client sends multiple session cookies because several BPCs may be installed on the server, the appropriate session cookie is now taken into account.

    Affects: BPC Core |

  • Detail View Update Problem BPC-9252

    In cases with frequent changes to the data, errors could occur in the monitor when displaying detail views. As a result, the entire rendering of the application was disrupted and the page had to be manually reloaded.

    Affects: Process Monitoring |

  • Modul Upload führt zu OOM Exception BPC-9266

    Uploaded files are no longer kept entirely in memory. This reduces memory usage and prevents "OutOfMemoryException".

    Affects: BPC Core |

Dependency Updates

  • Update Karaf, CXF und Jackson BPC-9264

    We used CXF version 3.5.4 in our previous Karaf releases. This CXF version provides Jackson in version 2.14.3. Now we ship Karaf with CXF 3.6.5, which provides Jackson in the version 2.17.2.

    Please update the CXF version (3.6.5) in your pom.xml. And more important is to update also the used Jackson version (2.17.2). For this check if you have an Import-Package statement for it. This must be added or adjusted when you use Jackson functionality like the ObjectMapper class.

    Replace

    <Import-Package>
    ...
    com.fasterxml.jackson.*;version="[2.13.4,2.15.0)",
    ...
    </Import-Package>

    with

    <Import-Package>
    ...
    com.fasterxml.jackson.*;version="[2.17.2,3.0.0)",
    ...
    </Import-Package>

BPC 4.1.20

Release date: 2025-01-13

The following components must be updated with this update: BPC modules | OpenSearch | OpenSearch Plugin

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

Improvements

  • Reduced log level BPC-8660

    The log level for the BPC plugin in OpenSearch has been reduced from trace to info. This setting can be found in the file opensearch/config/log4j2.properties.

    Affects: OpenSearch |

  • Commit-Datum anstatt Build-Datum in Bundle Info BPC-9174

    In the bundle info, which can be accessed via the Karaf console, the time of the last change to the underlying source code is now displayed instead of the build time.

Bugs

  • PDF kann in der Monitor Detailansicht nicht angezeigt werden BPC-9104

    Affects: Process Monitoring |

Dependency Updates

BPC 4.1.19

Release date: 2024-12-16

The following components must be updated with this update: BPC modules | OpenSearch Plugin

New features

  • Aktualisierung der Einstellungen für IGUASU Instanztyp in Flow BPC-8863

    From IGUASU version 3.0.6, it is possible to jump directly from the BPC Flow Processor overview to the IGUASU processor. “Frontend URL” and “System ID” are now available in the Flow Manager. “URL” has been renamed to “Service URL.” Username and password are no longer required. Long descriptions of the processors are displayed in a shortened form, with the full text shown in the tooltip.

    Affects: BPC Core |

Improvements

  • OpenSearch Einstellung zum verschieben von Shards auf andere Nodes bei geringem Plattenplatz BPC-9011

    If the available disk space falls below defined thresholds, shards are redistributed to other nodes. It can also happen that indices are set to read-only to prevent the disk from filling up.

    The value of cluster.routing.allocation.disk.threshold_enabled is now true. This corresponds to the OpenSearch default value.

    Affects: OpenSearch |

  • Felder mit dem Typ "object" und "flat_object" sollen durch die Standardkonfiguration im Monitor korrekt dargestellt werden BPC-9144

    Fields that contain nested JSON objects receive "formatter": "jsonStringify" in the initial column configuration. This converts the contents into text and displays them in the monitor.

    Affects: Process Monitoring |

Bugs

  • Neu Verteilung von Replikationen im Cluster wird nicht immer ausgelöst BPC-8504

    A bug was fixed that caused individual replication jobs not to be correctly distributed across all available nodes when changes were made to the nodes in the BPC cluster.

    Affects: OpenSearch |

  • OpenSearch kann nicht per HTTP angesprochen werden BPC-8800

    Although the OpenSearch connection was configured with http, an attempt was made to establish the TLS context based on the configuration. However, if this configuration was incorrect, an error occurred.

    The configuration is now ignored, as it is not relevant for http connections.

    Nevertheless, it is recommended to use secure connections at this point.

    Affects: BPC Core |

  • Replikation und Tail Sync sorgen für inkonsistenten Datenbestand BPC-9088

    There were various problems when the time zone of the "last update column" in the database table is set to UTC: - The tail sync did not always delete all records. - Instead, it updated all records on each run. - The interaction with replication also became confused.

    Affects: BPC Core |

  • BPC prometheus Metrik bpc_module exportiert falsche Versionsinfos BPC-9119

    Affects: BPC Core |

Documentation

BPC 4.1.18

Release date: 2024-11-18

The following components must be updated with this update: BPC modules | OpenSearch | OpenSearch Plugin | Java

Update of the internal configuration

In this version there have been changes to the internal configuration of the BPC. This affects deployments between BPCs with different versions. Additional steps are also required when downgrading the BPC.

Further information can be found on the page Versionierung der internen BPC Konfiguration.

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

New features

Improvements

  • Unnötige Fehlerlogs mit MaintenanceModeEnabledException BPC-8784

    Affects: BPC Core |

Bugs

  • Beim Imitieren wird die Sprache des imitierenden Nutzers im imitierten Nutzer gespeichert BPC-8864

    When impersonating other users, the language can no longer be changed in the Keycloak profile of the impersonated user. For this to work, Keycloak must be correctly configured so that impersonator information is passed along via an active scope.

    Affects: BPC Core |

  • Removal of obsolete grid_showHeader configuration BPC-8912

    The configuration grid_showHeader is obsolete as it causes errors. The behavior of the header has been controlled for quite a while using the parameter moduleHeader_enabled.

Documentation

Dependency Updates

Other

  • Update Java BPC-9016

    Affects:

BPC 4.1.17

Release date: 2024-10-18

The following components must be updated with this update: BPC modules | Java

New features

  • LocalStorage soll beim BPC Update automatisch verworfen werden BPC-6268

    While loading the BPC, the version number of the Core Common Package (Fe-Core) is determined and stored in the local storage. If this version number differs from the one stored during the previous load, the local storage is cleared.

    Affects: BPC Core |

  • Referenz im Auditlog BPC-8824

    It is now possible to specify references to external resources when writing audit information. For example, it is possible to refer to the IGUASU instance that created the entry.

    Affects: BPC Core | Dokumentation |

Other

  • Update Java BPC-8962

    Affects:

BPC 4.1.16

Release date: 2024-09-23

The following components must be updated with this update: BPC modules | OpenSearch Plugin

Improvements

Bugs

  • Opensearch: BpcPlugin - ConcurrentModificationException BPC-8852

    Affects: OpenSearch |

BPC 4.1.15

Release date: 2024-08-26

The following components must be updated with this update: BPC modules | Karaf | OpenSearch

Security

Dependency Updates

BPC 4.1.14

Release date: 2024-07-02

The following components must be updated with this update: BPC modules

Improvements

  • Neuanmeldung bei IP Pinning Problemen ermöglichen BPC-8179

    If an IP pinning error occurs, you can now log in normally in the browser after reloading the page. The error will not be displayed again (unless the IP changes again).

    Affects: BPC Core |

BPC 4.1.13

Release date: 2024-06-04

The following components must be updated with this update: BPC modules

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • Maximum memory for Karaf is configured differently BPC-8542

    In current Karaf versions, Karaf-specific environment variables for setting JVM memory have been removed and must be replaced with an alternative.

    Linux

    Please replace in bpc.env.sh

    # Karaf
    export JAVA_MIN_MEM=128M
    export JAVA_MAX_MEM=512M

    with

    # Karaf
    export EXTRA_JAVA_OPTS="$EXTRA_JAVA_OPTS -Xms128m -Xmx512m"

    and adopt the values accordingly.

    Windows

    Please replace in bpc.env.cmd

    rem *** Karaf ***
    SET JAVA_MIN_MEM=128M
    SET JAVA_MAX_MEM=512M

    with

    rem *** Karaf ***
    SET EXTRA_JAVA_OPTS=%EXTRA_JAVA_OPTS% -Xms128m -Xmx512m

    and adopt the values accordingly.

    Affects: Dokumentation |

Improvements

  • Maximum memory for Karaf is configured differently BPC-8542

    In current Karaf versions, Karaf-specific environment variables for setting JVM memory have been removed and must be replaced with an alternative.

    Linux

    Please replace in bpc.env.sh

    # Karaf
    export JAVA_MIN_MEM=128M
    export JAVA_MAX_MEM=512M

    with

    # Karaf
    export EXTRA_JAVA_OPTS="$EXTRA_JAVA_OPTS -Xms128m -Xmx512m"

    and adopt the values accordingly.

    Windows

    Please replace in bpc.env.cmd

    rem *** Karaf ***
    SET JAVA_MIN_MEM=128M
    SET JAVA_MAX_MEM=512M

    with

    rem *** Karaf ***
    SET EXTRA_JAVA_OPTS=%EXTRA_JAVA_OPTS% -Xms128m -Xmx512m

    and adopt the values accordingly.

    Affects: Dokumentation |

BPC 4.1.12

Release date: 2024-05-06

The following components must be updated with this update: BPC modules

Bugs

  • Abweichungen in der Konsistenzprüfung der Replikation BPC-8494

    Affects: BPC Core |

Documentation

  • Typo bei der Einrichtung als Windows-Dienste BPC-8452

BPC 4.1.11

Release date: 2024-04-08

The following components must be updated with this update: BPC modules | OpenSearch | OpenSearch Plugin

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

Bugs

Dependency Updates

BPC 4.1.10

Release date: 2024-03-11

The following components must be updated with this update: BPC modules | Karaf

Update of the internal configuration

In this version there have been changes to the internal configuration of the BPC. This affects deployments between BPCs with different versions. Additional steps are also required when downgrading the BPC.

Further information can be found on the page Versionierung der internen BPC Konfiguration.

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • Karaf Log Monitor BPC-7550

    The additional component of Karaf called 'Decanter' is used to write the Karaf logs to the OpenSearch index 'bpc-logs'. With a new installation of Karaf, this component is already pre-installed and nothing needs to be done. If an existing Karaf installation cannot or should not be replaced, it can also be installed using the Karaf console (Internet connection required).

    virtimo@bpc [virtimo@bpc]()> feature:repo-add decanter
    virtimo@bpc [virtimo@bpc]()> feature:install decanter-collector-log

    Affects: BPC Core | Dokumentation | Karaf |

  • Kompilierung nach Java 17 BPC-8333

    Due to this change, the use of Java 17 is now mandatory and support for Java 11 has ended.

  • Update Karaf BPC-8353

    Karaf must be updated with this update.

    Affects: BPC Core | Karaf |

New features

  • Karaf Log Monitor BPC-7550

    The additional component of Karaf called 'Decanter' is used to write the Karaf logs to the OpenSearch index 'bpc-logs'. With a new installation of Karaf, this component is already pre-installed and nothing needs to be done. If an existing Karaf installation cannot or should not be replaced, it can also be installed using the Karaf console (Internet connection required).

    virtimo@bpc [virtimo@bpc]()> feature:repo-add decanter
    virtimo@bpc [virtimo@bpc]()> feature:install decanter-collector-log

    Affects: BPC Core | Dokumentation | Karaf |

  • Health-Endpunkt für Cluster-Master BPC-7915

    New status endpoint for querying the role of individual nodes in cluster operation. This endpoint can now be used to check whether a node has the "master" role or not. See also BPC API /cxf/bpc-core/status/clustermaster

    Affects: BPC Core | Dokumentation |

Improvements

Dependency Updates

  • Update Karaf BPC-8353

    Karaf must be updated with this update.

    Affects: BPC Core | Karaf |

BPC 4.1.9

Release date: 2023-12-15

The following components must be updated with this update: BPC modules | OpenSearch Plugin

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • Karaf Version auf Statusseite anzeigen BPC-8260

    An update of the OpenSearch plugin (os-bpc-plugin) is necessary.

    Affects: BPC Core | OpenSearch |

Improvements

  • Karaf Version auf Statusseite anzeigen BPC-8260

    An update of the OpenSearch plugin (os-bpc-plugin) is necessary.

    Affects: BPC Core | OpenSearch |

  • Dashboard module reduced on frontend BPC-8279

    For existing installations, the file bpc-be-dashboard.jar can be removed without replacement and deleted from the KARAF/deploy directory. The dashboard module now consists only of the file bpc-fe-dashboard.war.

BPC 4.1.8

Release date: 2023-11-21

The following components must be updated with this update: BPC modules

BPC 4.1.7

Release date: 2023-10-23

The following components must be updated with this update: BPC modules | OpenSearch | OpenSearch Plugin

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

Dependency Updates

BPC 4.1.6

Release date: 2023-09-25

The following components must be updated with this update: BPC modules | Karaf

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

  • Update Karaf BPC-8077

    Karaf must be updated with this update.

    Logging into the Karaf console via SSH is no longer allowed by default for users from the users.properties. To allow users to log in via SSH, add the ssh role to individual users in the KARAF/etc/users.properties file or add the role to the admingroup.

    Affects: BPC Core | Karaf |

  • Entfernen vom BPC default Public Key aus keys.properties BPC-8210

    Entries in the file KARAF/etc/keys.properties that you do not use for login with a public/private key can be removed.

    Affects: Karaf |

Security

  • Entfernen vom BPC default Public Key aus keys.properties BPC-8210

    Entries in the file KARAF/etc/keys.properties that you do not use for login with a public/private key can be removed.

    Affects: Karaf |

Dependency Updates

  • Update Karaf BPC-8077

    Karaf must be updated with this update.

    Logging into the Karaf console via SSH is no longer allowed by default for users from the users.properties. To allow users to log in via SSH, add the ssh role to individual users in the KARAF/etc/users.properties file or add the role to the admingroup.

    Affects: BPC Core | Karaf |

BPC 4.1.5

Release date: 2023-08-28

The following components must be updated with this update: BPC modules

BPC 4.1.4

Release date: 2023-08-14

The following components must be updated with this update: BPC modules | OpenSearch Plugin

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • OpenSearch Cluster Betrieb: Socket Timeouts im os-bpc-plugin BPC-8059

    If set, remove the following no longer needed os-bpc-plugin specific settings from conf/opensearch.yml.

    • os-bpc-plugin.opensearch.basicauth.username

    • os-bpc-plugin.opensearch.basicauth.password

    • os-bpc-plugin.trust_certificates

    • os-bpc-plugin.verify_hostnames

    • os-bpc-plugin.truststore.path

    • os-bpc-plugin.truststore.type

    • os-bpc-plugin.truststore.password

    If this is not done, OpenSearch will not start and will display the error "please check that any required plugins are installed, or check the breaking changes documentation for removed settings".

    Affects: Dokumentation | OpenSearch |

  • JSON Schema vom Backend laden und zur Validierung von JSON Settings verwenden BPC-6607

    Only relevant for module developers When using the BPC JsonEditor (xtype bpcJsonField or bpcCodeEditorWindow.json), the optional JSON schema is now passed via schema and no longer via jsonSchema.

    Affects: BPC Core |

  • ungewolltes trim bei Sprung BPC-7961

    The content of the Monitor jump column was previously trimmed (removal of spaces at the beginning and end) when filtering in the target monitor. This is no longer done, so that you can specifically filter for values with spaces at the beginning or end.
    If you use values with additional spaces in your Monitor jump column (e.g. also in connection with the separator) that do not match the target values in the target monitor, these may need to be removed.

    Affects: Process Monitoring |

New features

  • JSON Schema vom Backend laden und zur Validierung von JSON Settings verwenden BPC-6607

    Only relevant for module developers When using the BPC JsonEditor (xtype bpcJsonField or bpcCodeEditorWindow.json), the optional JSON schema is now passed via schema and no longer via jsonSchema.

    Affects: BPC Core |

Bugs

  • OpenSearch Cluster Betrieb: Socket Timeouts im os-bpc-plugin BPC-8059

    If set, remove the following no longer needed os-bpc-plugin specific settings from conf/opensearch.yml.

    • os-bpc-plugin.opensearch.basicauth.username

    • os-bpc-plugin.opensearch.basicauth.password

    • os-bpc-plugin.trust_certificates

    • os-bpc-plugin.verify_hostnames

    • os-bpc-plugin.truststore.path

    • os-bpc-plugin.truststore.type

    • os-bpc-plugin.truststore.password

    If this is not done, OpenSearch will not start and will display the error "please check that any required plugins are installed, or check the breaking changes documentation for removed settings".

    Affects: Dokumentation | OpenSearch |

  • ungewolltes trim bei Sprung BPC-7961

    The content of the Monitor jump column was previously trimmed (removal of spaces at the beginning and end) when filtering in the target monitor. This is no longer done, so that you can specifically filter for values with spaces at the beginning or end.
    If you use values with additional spaces in your Monitor jump column (e.g. also in connection with the separator) that do not match the target values in the target monitor, these may need to be removed.

    Affects: Process Monitoring |

BPC 4.1.3

Release date: 2023-07-03

The following components must be updated with this update: BPC modules

BPC 4.1.2

Release date: 2023-06-05

The following components must be updated with this update: BPC modules | OpenSearch Plugin

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

  • Im OpenSearch Cluster werden die Daten des os-bpc-plugin nicht zuverlässig zwischen den Nodes synchronisiert BPC-7768

    An update of OpenSearch or the os-bpc-plugin is required.

    Affects: BPC Core | OpenSearch |

Bugs

  • Im OpenSearch Cluster werden die Daten des os-bpc-plugin nicht zuverlässig zwischen den Nodes synchronisiert BPC-7768

    An update of OpenSearch or the os-bpc-plugin is required.

    Affects: BPC Core | OpenSearch |

BPC 4.1.1

Release date: 2023-05-08

The following components must be updated with this update: BPC modules | OpenSearch Plugin

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • Umbenennung der Funktion BpcCommon.Api.getInstanceUrl in BpcCommon.Api.getModuleUrl BPC-7902

    The name of the common function "getInstanceUrl" (introduced with BPC 4.1.0) is being replaced by "getModuleUrl".

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

Improvements

  • Umbenennung der Funktion BpcCommon.Api.getInstanceUrl in BpcCommon.Api.getModuleUrl BPC-7902

    The name of the common function "getInstanceUrl" (introduced with BPC 4.1.0) is being replaced by "getModuleUrl".

Dependency Updates

BPC 4.1.0

Release date: 2023-03-27

The following components must be updated with this update: BPC modules | Karaf | OpenSearch

Update of the internal configuration

In this version there have been changes to the internal configuration of the BPC. This affects deployments between BPCs with different versions. Additional steps are also required when downgrading the BPC.

Further information can be found on the page Versionierung der internen BPC Konfiguration.

Breaking Changes

You should read the descriptions in this section carefully. It may contain instructions that you must follow for an update.

  • ChildLog soll kein "eval" für Filter und Renderer verwenden BPC-5375

    To avoid scripting attacks, renderers can now no longer be defined as JavaScript in text form on the columns. Custom renderer functions can be referenced as described here. Formatting functions from Ext.util.Format can be used by specifying the formatter. See: column_configuration.

    Affects: Process Monitoring |

  • Umstellung auf OpenSearch BPC-5819

  • Update Karaf BPC-6709

    An update of the Karaf is mandatory for this BPC update.

    Customer themes and custom BPC modules must be adapted so that the Web-ContextPath and Webapp-Context in the manifest file must begin with a /. To achieve this usually the file build.gradle can be adapted. An example can be seen https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52 [https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52][here].

    In the configuration file [karaf]/etc/org.ops4j.pax.web.cfg parameters have been renamed:

    org.ops4j.pax.web.ssl.password -> org.ops4j.pax.web.ssl.keystore.password
    org.ops4j.pax.web.ssl.keypassword -> org.ops4j.pax.web.ssl.key.password
  • Unsere Backend API als Maven Modul BPC-6872

    We had to move some interfaces/classes from the de.virtimo.bpc.core to the de.virtimo.bpc.api package.

    If you compile your code for 4.0.8 or 4.1 and get errors, then please adjust the Java imports. In most cases you just have to replace .core. by .api.. Otherwise delete the import and let the IDE find it for you.

    And please be sure that you do not have <Import-Package> statements in your pom.xml to the following packages:

    • de.virtimo.bpc.core.exception

    • de.virtimo.bpc.auth.*

    • de.virtimo.bpc.core.es.querybuilder

  • Package der Util-Klassen aus dem 'util'-Modul anpassen BPC-6886

    In case you used BPC Core utils classes.

    Please adjust your Java import statements

    • OLD : de.virtimo.bpc.core.utils.*

    • NEW : de.virtimo.bpc.util.*

    And your pom.xml (<Import-Package>)

    • OLD : de.virtimo.bpc.core.utils;version="[4.0,5.0)",

    • NEW : de.virtimo.bpc.util;version="[4.0,5.0)",

  • BpcTrustStoreUtil ins util-Modul verschieben BPC-6924

    In case you used

    de.virtimo.bpc.core.utils.BpcTrustStoreUtil.setTo(…​)

    then please replace it with

    de.virtimo.bpc.util.BpcTrustStore.getInstance().setTo(…​)

    Affects: BPC Core |

  • Umbenennung von Attributen im Context der Plugin Hooks BPC-7379

    For BPC developers Plugins are passed a context when called. Two attributes in the context object have been renamed. moduleId became baseModuleId and instanceId became moduleId.

  • Notwendige Anpassung der Backend-Module bei Verwendung der BPC Annotations: @BpcUserSessionRequired, …​ BPC-7384

    Relevant for BPC Module Developers / Important for BPC Developers.

    This is only necessary, when you use one of the following annotations in your backend modules/bundles:

    • @BpcUserSessionRequired

    • @BpcRoleRequired

    • @BpcRightRequired

    • @BpcRoleOrRightRequired

    • @BpcHardcodedBasicAuthentication

    If this is the case, then please update your resources/OSGI-INF/blueprint/context.xml

    and replace

     <bean id="bpcJAXRSInvoker" class="en.virtimo.bpc.jaxrs.BpcJAXRSInvoker"/>

    with

     <bean id="bpcJAXRSInvoker" class="en.virtimo.bpc.jaxrs.BpcJAXRSInvoker" init-method="onStartup" destroy-method="onShutdown">     <argument ref="blueprintBundleContext"/>  </bean>

  • Starke Passwort Verschlüsselung BPC-7390

    JAAS Karaf Passwords

    For the passwords in the [karaf]/etc/users.properties a stronger encryption is used by default from this Karaf version on.

    If these passwords cannot be adjusted, then make the following adjustments to the [karaf]/etc/org.apache.karaf.jaas.cfg configuration file. This will revert to using the previous (weak) encryption.

     encryption.name = basic  encryption.algorithm = SHA-512

    JAAS JDBC passwords

    The Virtimo JAAS JDBC implementation now uses the password encryption settings of the file: [karaf]/etc/org.apache.karaf.jaas.cfg These do not match the previously used password encryption.

    So if JAAS JDBC was already used and the existing (weak) hashes should be used further, please create the following file: [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.cfg

    The following content sets the previous (weak) configuration:

    • until BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix = {CRYPT}
       encryption.suffix = {CRYPT}

      Unfortunately, all password hashes must then be supplemented with the prefix and suffix in the database table. Example: PasswordHash{CRYPT}PasswordHash{CRYPT}. As of BPC version 4.0.15 this adjustment is no longer necessary.

    • from BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix =
       encryption.suffix =

      Thus, as before, the passwords are stored in the database table without a prefix and suffix.

    To use a more secure hash algorithm like argon2, all user passwords must be recreated and thus reset.

    In both cases, restart the Karaf.

    Affects: BPC Core | Dokumentation | Karaf |

  • Content Security Policy BPC-7443

    A Content Security Policy(CSP) is set via HTTP header. This can affect custom modules, INUBIT WebApps or integrated third-party applications. To customize the CSP see Content Security Policy.

  • Apache CXF BPC-7546

    We used CXF version 3.5.4 in our previous Karaf releases. This CXF version provides Jackson in version 2.13.4. Now we ship Karaf with CXF 3.5.5, which provides Jackson in the version 2.14.1.

    Please update the CXF version (3.5.4 → 3.5.5) in your pom.xml. And more important is to update also the used Jackson version. For this check if you have an Import-Package statement for it. This must be added or adjusted when you use Jackson functionality like the ObjectMapper class.

    Replace

    <Import-Package>
      ...
      com.fasterxml.jackson.*;version="[2.11.0,2.14.0)",
      ...
    </Import-Package>

    with

    <import package>
      ...
      com.fasterxml.jackson.*;version="[2.13.4,2.15.0)",
      ...
    </Import-Package>
  • Weitere Dashboard (Widget) Zustände sollen lokal vorgehalten werden BPC-7809

    Dashboard setting Dashboard_Responsive(ID: module_isResponsive) and Dashboard_Layout(ID: layout_config) are omitted. Dashboards are now "responsive" by default and take advantage of the available space in their column. Widget can now be adjusted in height and width by the user. These changes are kept in the browser, but can also be saved to the dashboard by authorized users. Resetting local change is no longer possible on the widget, but is offered via a button in one of the toolbars. For the button to appear, the value "resetUserState" must be added to one of the settings ModuleHeader_Content, Toolbar_LeftContent or Toolbar_RightContent.

  • ReplicationInfoService durch einen Endpunkt ersetzen BPC-7822

    Replication status information is no longer displayed on the monitor. This status information will be added via plugin in a future release.

  • Unser 'Checker' und 'BpcService' Interface verschieben BPC-6864

    In case you used

    de.virtimo.bpc.core.utils.ServiceUtil.unregisterService(bundleContext, ServiceRegistration, Class);

    then please use

    de.virtimo.bpc.api.BpcService.unregister(bundleContext, ServiceRegistration, Class);

    instead.

    Affects: BPC Core |

  • Core Module wie die Benutzerverwaltung funktionieren in Untermenüs der Navigation nicht BPC-7784

    For BPC module developers

    There was an undocumented function that reacted globally, on all components with the attribute targetModule, to the event click. This passed the value of targetModule to the BpcCommon.Api.showModule method, triggering navigation to that module. This function has now been removed. If you have used the attribute targetModule, e.g. on buttons, for navigation, you have to set this up by a separate handler that only affects your components.

    Affects: BPC Core |

You should read the descriptions in this section carefully. These are recommended instructions that are advised during an update.

  • Relevante Karaf Konfigurationen aus Karaf Ordner "ziehen" BPC-6681

    A big request, when updating Karaf do not simply copy all etc files from the old installation to the new one. This may result in new Karaf options not being set and in the worst case the Karaf will not start.

    And if somehow possible, do not change any [karaf]/etc files manually and instead make the adjustments via bpc.env.sh (Linux/macOS) or bpc.env.cmd (Windows). This makes Karaf updates much easier and can be used in BPC versions >= 3.4. See Zentrale Konfigurationsdatei.

    Per override values of etc files most customizations can be done without editing an etc file.

    For example, if the path to the keystore and truststore files should be set differently: The definition of the paths are in the configuration file [karaf]/etc/org.ops4j.pax.web.cfg in the options org.ops4j.pax.web.ssl.keystore and org.ops4j.pax.web.ssl.truststore.

    Now to set the paths of the two options differently, two environment variables can be added in the bpc.env.sh:

     export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_KEYSTORE=/opt/bpc.env/ssl/virtimo_keystore.jks  export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_TRUSTSTORE=/opt/bpc.env/ssl/virtimo_truststore.jks

    Another example how to set the option en.virtimo.bpc.core.cfg in the [karaf]/etc/de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB:

     export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_MAINTENANCEMODE_FILESYSTEMLIMITINMB=4096

    One limitation will be fixed with the next Karaf update. The deploy directory ([karaf]/deploy) cannot currently be set by environment variable due to a "bug". This affects the felix.fileinstall.dir option in the [karaf]/etc/org.apache.felix.fileinstall-deploy.cfg configuration file.

    Three files should be copied or replaced with symbolic links depending on how they are used:

    • [karaf]/etc/users.properties

    • [karaf]/etc/org.ops4j.pax.logging.cfg

    • [karaf]/etc/en.virtimo.bpc.core.auth.jaas.jdbc.queries.cfg

    Of course, this is only necessary if they have been customized at all. The options in the two cfg files could also be set via environment variables, but then some environment variables would have to be set.

    Affects: Dokumentation |

  • Karaf Update BPC-7374

    An update of the Karaf is strongly recommended for security reasons.

    Affects: BPC Core | Karaf |

New features

  • Personalisierte Monitor Ansichten BPC-5331

    Monitor views created with a BPC version < 2.1.6 are no longer supported. To preserve these views, they must be opened and saved once in the "Manage Views" dialog. This process will save the views in the correct format.

Improvements

  • API Key ID BPC-6666

    Affects: BPC Core | Dokumentation |

  • Relevante Karaf Konfigurationen aus Karaf Ordner "ziehen" BPC-6681

    A big request, when updating Karaf do not simply copy all etc files from the old installation to the new one. This may result in new Karaf options not being set and in the worst case the Karaf will not start.

    And if somehow possible, do not change any [karaf]/etc files manually and instead make the adjustments via bpc.env.sh (Linux/macOS) or bpc.env.cmd (Windows). This makes Karaf updates much easier and can be used in BPC versions >= 3.4. See Zentrale Konfigurationsdatei.

    Per override values of etc files most customizations can be done without editing an etc file.

    For example, if the path to the keystore and truststore files should be set differently: The definition of the paths are in the configuration file [karaf]/etc/org.ops4j.pax.web.cfg in the options org.ops4j.pax.web.ssl.keystore and org.ops4j.pax.web.ssl.truststore.

    Now to set the paths of the two options differently, two environment variables can be added in the bpc.env.sh:

     export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_KEYSTORE=/opt/bpc.env/ssl/virtimo_keystore.jks  export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_TRUSTSTORE=/opt/bpc.env/ssl/virtimo_truststore.jks

    Another example how to set the option en.virtimo.bpc.core.cfg in the [karaf]/etc/de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB:

     export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_MAINTENANCEMODE_FILESYSTEMLIMITINMB=4096

    One limitation will be fixed with the next Karaf update. The deploy directory ([karaf]/deploy) cannot currently be set by environment variable due to a "bug". This affects the felix.fileinstall.dir option in the [karaf]/etc/org.apache.felix.fileinstall-deploy.cfg configuration file.

    Three files should be copied or replaced with symbolic links depending on how they are used:

    • [karaf]/etc/users.properties

    • [karaf]/etc/org.ops4j.pax.logging.cfg

    • [karaf]/etc/en.virtimo.bpc.core.auth.jaas.jdbc.queries.cfg

    Of course, this is only necessary if they have been customized at all. The options in the two cfg files could also be set via environment variables, but then some environment variables would have to be set.

    Affects: Dokumentation |

  • Unsere Backend API als Maven Modul BPC-6872

    We had to move some interfaces/classes from the de.virtimo.bpc.core to the de.virtimo.bpc.api package.

    If you compile your code for 4.0.8 or 4.1 and get errors, then please adjust the Java imports. In most cases you just have to replace .core. by .api.. Otherwise delete the import and let the IDE find it for you.

    And please be sure that you do not have <Import-Package> statements in your pom.xml to the following packages:

    • de.virtimo.bpc.core.exception

    • de.virtimo.bpc.auth.*

    • de.virtimo.bpc.core.es.querybuilder

  • Package der Util-Klassen aus dem 'util'-Modul anpassen BPC-6886

    In case you used BPC Core utils classes.

    Please adjust your Java import statements

    • OLD : de.virtimo.bpc.core.utils.*

    • NEW : de.virtimo.bpc.util.*

    And your pom.xml (<Import-Package>)

    • OLD : de.virtimo.bpc.core.utils;version="[4.0,5.0)",

    • NEW : de.virtimo.bpc.util;version="[4.0,5.0)",

  • BpcTrustStoreUtil ins util-Modul verschieben BPC-6924

    In case you used

    de.virtimo.bpc.core.utils.BpcTrustStoreUtil.setTo(…​)

    then please replace it with

    de.virtimo.bpc.util.BpcTrustStore.getInstance().setTo(…​)

    Affects: BPC Core |

  • Umbenennung von Attributen im Context der Plugin Hooks BPC-7379

    For BPC developers Plugins are passed a context when called. Two attributes in the context object have been renamed. moduleId became baseModuleId and instanceId became moduleId.

  • Weitere Dashboard (Widget) Zustände sollen lokal vorgehalten werden BPC-7809

    Dashboard setting Dashboard_Responsive(ID: module_isResponsive) and Dashboard_Layout(ID: layout_config) are omitted. Dashboards are now "responsive" by default and take advantage of the available space in their column. Widget can now be adjusted in height and width by the user. These changes are kept in the browser, but can also be saved to the dashboard by authorized users. Resetting local change is no longer possible on the widget, but is offered via a button in one of the toolbars. For the button to appear, the value "resetUserState" must be added to one of the settings ModuleHeader_Content, Toolbar_LeftContent or Toolbar_RightContent.

  • ReplicationInfoService durch einen Endpunkt ersetzen BPC-7822

    Replication status information is no longer displayed on the monitor. This status information will be added via plugin in a future release.

  • Unser 'Checker' und 'BpcService' Interface verschieben BPC-6864

    In case you used

    de.virtimo.bpc.core.utils.ServiceUtil.unregisterService(bundleContext, ServiceRegistration, Class);

    then please use

    de.virtimo.bpc.api.BpcService.unregister(bundleContext, ServiceRegistration, Class);

    instead.

    Affects: BPC Core |

Security

  • ChildLog soll kein "eval" für Filter und Renderer verwenden BPC-5375

    To avoid scripting attacks, renderers can now no longer be defined as JavaScript in text form on the columns. Custom renderer functions can be referenced as described here. Formatting functions from Ext.util.Format can be used by specifying the formatter. See: column_configuration.

    Affects: Process Monitoring |

  • Starke Passwort Verschlüsselung BPC-7390

    JAAS Karaf Passwords

    For the passwords in the [karaf]/etc/users.properties a stronger encryption is used by default from this Karaf version on.

    If these passwords cannot be adjusted, then make the following adjustments to the [karaf]/etc/org.apache.karaf.jaas.cfg configuration file. This will revert to using the previous (weak) encryption.

     encryption.name = basic  encryption.algorithm = SHA-512

    JAAS JDBC passwords

    The Virtimo JAAS JDBC implementation now uses the password encryption settings of the file: [karaf]/etc/org.apache.karaf.jaas.cfg These do not match the previously used password encryption.

    So if JAAS JDBC was already used and the existing (weak) hashes should be used further, please create the following file: [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.cfg

    The following content sets the previous (weak) configuration:

    • until BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix = {CRYPT}
       encryption.suffix = {CRYPT}

      Unfortunately, all password hashes must then be supplemented with the prefix and suffix in the database table. Example: PasswordHash{CRYPT}PasswordHash{CRYPT}. As of BPC version 4.0.15 this adjustment is no longer necessary.

    • from BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix =
       encryption.suffix =

      Thus, as before, the passwords are stored in the database table without a prefix and suffix.

    To use a more secure hash algorithm like argon2, all user passwords must be recreated and thus reset.

    In both cases, restart the Karaf.

    Affects: BPC Core | Dokumentation | Karaf |

  • Content Security Policy BPC-7443

    A Content Security Policy(CSP) is set via HTTP header. This can affect custom modules, INUBIT WebApps or integrated third-party applications. To customize the CSP see Content Security Policy.

Bugs

  • Core Module wie die Benutzerverwaltung funktionieren in Untermenüs der Navigation nicht BPC-7784

    For BPC module developers

    There was an undocumented function that reacted globally, on all components with the attribute targetModule, to the event click. This passed the value of targetModule to the BpcCommon.Api.showModule method, triggering navigation to that module. This function has now been removed. If you have used the attribute targetModule, e.g. on buttons, for navigation, you have to set this up by a separate handler that only affects your components.

    Affects: BPC Core |

Dependency Updates

  • Update Karaf BPC-6709

    An update of the Karaf is mandatory for this BPC update.

    Customer themes and custom BPC modules must be adapted so that the Web-ContextPath and Webapp-Context in the manifest file must begin with a /. To achieve this usually the file build.gradle can be adapted. An example can be seen https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52 [https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52][here].

    In the configuration file [karaf]/etc/org.ops4j.pax.web.cfg parameters have been renamed:

    org.ops4j.pax.web.ssl.password -> org.ops4j.pax.web.ssl.keystore.password
    org.ops4j.pax.web.ssl.keypassword -> org.ops4j.pax.web.ssl.key.password
  • Karaf Update BPC-7374

    An update of the Karaf is strongly recommended for security reasons.

    Affects: BPC Core | Karaf |

  • Apache CXF BPC-7546

    We used CXF version 3.5.4 in our previous Karaf releases. This CXF version provides Jackson in version 2.13.4. Now we ship Karaf with CXF 3.5.5, which provides Jackson in the version 2.14.1.

    Please update the CXF version (3.5.4 → 3.5.5) in your pom.xml. And more important is to update also the used Jackson version. For this check if you have an Import-Package statement for it. This must be added or adjusted when you use Jackson functionality like the ObjectMapper class.

    Replace

    <Import-Package>
      ...
      com.fasterxml.jackson.*;version="[2.11.0,2.14.0)",
      ...
    </Import-Package>

    with

    <import package>
      ...
      com.fasterxml.jackson.*;version="[2.13.4,2.15.0)",
      ...
    </Import-Package>

Other

  • Umstellung auf OpenSearch BPC-5819

  • Notwendige Anpassung der Backend-Module bei Verwendung der BPC Annotations: @BpcUserSessionRequired, …​ BPC-7384

    Relevant for BPC Module Developers / Important for BPC Developers.

    This is only necessary, when you use one of the following annotations in your backend modules/bundles:

    • @BpcUserSessionRequired

    • @BpcRoleRequired

    • @BpcRightRequired

    • @BpcRoleOrRightRequired

    • @BpcHardcodedBasicAuthentication

    If this is the case, then please update your resources/OSGI-INF/blueprint/context.xml

    and replace

     <bean id="bpcJAXRSInvoker" class="en.virtimo.bpc.jaxrs.BpcJAXRSInvoker"/>

    with

     <bean id="bpcJAXRSInvoker" class="en.virtimo.bpc.jaxrs.BpcJAXRSInvoker" init-method="onStartup" destroy-method="onShutdown">     <argument ref="blueprintBundleContext"/>  </bean>

  • Analysis: Elasticsearch durch OpenSearch ersetzen BPC-7454

    Affects: BPC Core | Data Analysis |

Übersicht der Karaf Updates

Übersicht der OpenSearch Updates

Übersicht Updates der internen BPC Konfiguration

In folgenden BPC Versionen wurde ein Update der internen BPC Konfiguration durchgeführt.