Developer-Changelog

Diese Seite zeigt Änderungen, die in den Releases der einzelnen Versionen enthalten sind und für BPC Modulentwickler relevant sind.

Für die Auflistung aller Änderungen siehe Changelog.

BPC 4.1.27

Release Datum: 2025-11-17

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Bessere Testbarkeit von Comboboxen BPC-10196

    Die Werte der verschiedenen Optionen in Comboboxen werden nun nicht mehr pauschalt durch ein   ergänzt. Dies erleichtert das automatisierte Testen der Oberflächen.

    Betrifft: BPC Core |

BPC 4.1.26

Release Datum: 2025-10-13

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Klassen für Menu-Buttons für geringeren Pfeil-Abstand BPC-10060

    An Buttons können nun die Klassen arrow-spacing-sm (small) und arrow-spacing-xs (extra small) genutzt werden, um den Abstand des Pfeils zu reduzieren.

    Betrifft:

BPC 4.1.25

Release Datum: 2025-08-21

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf

Verbesserungen

  • version-Property von BPC Modul wirkt sich auf Abhängigkeiten des BE Core aus BPC-8968

    Hat ein BPC-Modul eine abweichende Versionierung zum BPC-Core verwendet, so hat sich das project.version Property auf die Abhängigkeiten im BPC-Core ausgewirkt und zu Problemen geführt. Die Abhängigkeiten innerhalb des BPC-Core werden nun nicht mehr durch das project.version Property im Modul beeinflusst.

    Betrifft: BPC Core | Forms |

Bugs

  • hasUserAnyRole - Aufruf mit einzelner Rolle als String führt zu Fehler BPC-9784

    Betrifft: BPC Core |

Interne Abhängigkeiten / Dependency Updates

  • Update CXF BPC-9852

    Betrifft: BPC Core | Karaf |

  • Update ace-builds BPC-9882

    Betrifft: BPC Core |

  • Update froala-editor BPC-9887

    Betrifft: BPC Core |

BPC 4.1.24

Release Datum: 2025-06-02

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.23

Release Datum: 2025-04-08

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Forms: Value mit sprachabhängigen Werten, analog zum Label BPC-9085

    Forms übersetzt nun für alle Komponenten die Labels korrekt, so auch im state. Dadurch ist es möglich bindings auf labels zu setzen. Siehe Mehrsprachige Inhalte.

    setFormState kann nun auch mit Labels in mehreren Sprachen korrekt umgehen. In diesem Rahmen wurde ein Bug behoben, der bei setFormState dazu geführt hat, dass bindings aufgehoben wurde und so im submit nach setFormState ausschließlich Daten vor setFormState drin standen. Zudem können nun alle Komponenten in Kombination mit setFormState verwendet werden, einschließlich Combobox und Tabelle.

    Betrifft: Forms |

  • Die Komponente bpcComboRenderedValue unterstützt nun `emptyText` BPC-9471

    Betrifft: BPC Core |

Bugs

  • Form-Reset funktioniert nicht korrekt BPC-9143

    Die reset Funktion hat bisher bindings entfernt. Dadurch konnte nach einem reset nicht mehr der aktuelle Stand submitted werden. Dieses Problem wurde behoben.

    Betrifft: Forms |

  • Formularkomponenten Combobox und Tabelle BPC-9152

    Die Komponenten Tabelle und Combobox wurden verbessert und Verhalten sich nun wie die anderen Komponenten.

    Betrifft: Forms |

Dokumentation

Interne Abhängigkeiten / Dependency Updates

  • Update @amcharts/amcharts4 BPC-9411

    Betrifft: BPC Core |

  • Update ace-builds BPC-9457

    Betrifft: BPC Core |

BPC 4.1.22

Release Datum: 2025-03-10

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Neue Funktionen

BPC 4.1.21

Release Datum: 2025-02-10

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf

Verbesserungen

  • font-family als CSS Variable bereitstellen. BPC-9232

    Über die CSS Variable --font-family kann die aktuell gesetzte Schriftart ausgelesen werden.

    Betrifft:

Interne Abhängigkeiten / Dependency Updates

  • Update Karaf, CXF und Jackson BPC-9264

    Mit diesem Update ist erforderlich den Karaf und die Module bpc-be-core, bpc-be-analysis, bpc-be-forms und bpc-be-monitor zu aktualisieren.

    Für BPC Modul-Entwickler:innen

    In unseren früheren Karaf-Versionen haben wir CXF Version 3.5.4 verwendet. Diese CXF-Version bietet Jackson in der Version 2.14.3. Jetzt liefern wir Karaf mit CXF 3.6.5 aus, die Jackson in der Version 2.17.2 bereitstellt.

    Bitte aktualisieren Sie die CXF-Version (3.6.5) in Ihrer pom.xml. Und noch wichtiger ist, dass Sie auch die verwendete Jackson-Version (2.17.2) aktualisieren. Prüfen Sie dazu, ob Sie eine Import-Package-Anweisung für diese Version haben. Diese muss hinzugefügt oder angepasst werden, wenn Sie Jackson-Funktionen wie die Klasse ObjectMapper verwenden.

    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 Datum: 2025-01-13

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

BPC 4.1.19

Release Datum: 2024-12-16

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Bundle-SymbolicName müssen ohne Parameter wie "blueprint.aries.xml-validation:=false" gesetzt sein BPC-8482

    Modul-Entwickler:innen müssen darauf achten, im Bundle-SymbolicName keine zusätzlichen Parameter anzugeben.

    Falsch: de.virtimo.bpc.module-id;blueprint.aries.xml-validation:=false

    Richtig: de.virtimo.bpc.module-id

    Die falsche Variante war in früheren Templates für BPC Module enthalten.

    Betrifft: BPC Core | Forms |

  • IGUASU spezifische Header Information mappen BPC-9070

    Wenn die HTTP-Header system.id und instance.id gesetzt sind, werden die Werte in ein neues JSON-Objekt externalReference unter den Feldern iguasuSystemId und iguasuInstanceId geschrieben.

    Betrifft: BPC Core |

  • JSON Stringify Formatter BPC-9146

    Damit kann diese an verschiedenen Stellen einfach eingesetzt werden, um JSON in Text zu überführen.

    Beispiel als Formatter an einer Spaltenkonfiguration
    {
        "formatter": "jsonStringify",
        "dataIndex": "aFieldWithJsonValue",
        "text": "JSON Value as String"
    }
    Beispiel in einem XTemplate an einer Spaltenkonfiguration
    {
        "xtype": "templatecolumn",
        "tpl": "{aFieldWithJsonValue:jsonStringify}",
        "text": "JSON Value as String"
    }

    Betrifft: BPC Core |

Bugs

  • LocalStorage Zugriff verbessern BPC-9027

    Es wird nun ein dedizierter Prefix für die Werte im LocalStorage genutzt. Dadurch werden Inhalte anderer Anwendungen nicht gelöscht.

Dokumentation

BPC 4.1.18

Release Datum: 2024-11-18

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • API Dokumentation Status Codes BPC-9037

    Die HTTP Status Codes bei Antworten an der REST API wurden umfangreicher dokumentiert. Siehe: BPC API

    Betrifft: BPC Core | Dokumentation |

  • Nutzung der Bulk Operationen im OpenSearch über OpenSearchService BPC-9043

    Betrifft: BPC Core |

  • managed_indices.json automatisch vom Core verarbeiten (Indices anlegen) BPC-9044

    Der Core sucht nun automatisch nach einer Konfiguration für Indices, die angelegt und verwaltet werden soll.

    Siehe auch Anlegen von Indices

    Betrifft: BPC Core | Dokumentation |

Bugs

  • Umgang mit Pfaden in Themes auf verschiedenen Umgebungen BPC-8489

    Pfade in Themes sollten nun immer absolut angegeben werden.

    Richtig: $CompanyIcon: "/bpc-theme-customer/resources/images/favicon.png"

    Falsch: $CompanyIcon: "../resources/images/favicon.png"

    Siehe auch: BPC Theme entwickeln

    Betrifft: BPC Core |

Dokumentation

BPC 4.1.17

Release Datum: 2024-10-18

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Neue Funktionen

  • Core Endpunkt zum Versenden von Events bereitstellen BPC-8472

    Es wurde ein Endpunkt zum Versenden von Events bereitgestellt Siehe auch: Event API

    Betrifft: BPC Core | Dokumentation |

  • Referenz im Auditlog BPC-8824

    Es ist nun möglich beim Schreiben von Audit-Informationen Referenzen auf externe Ressourcen anzugeben. So kann zum Beispiel auf die IGUASU-Instanz verwiesen werden, die den Eintrag erzeugt hat.

    Betrifft: BPC Core | Dokumentation |

BPC 4.1.16

Release Datum: 2024-09-23

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Labels für Instanztypen BPC-8804

    Für Instanztypen können Labels mittels Language Keys festgelegt werden. Der Language Key setzt sich folgendermaßen zusammen: "<MODULE_ID>_INSTANCE_TYPE_<INSTANCE_TYPE>" Der Language Key für Core-Module setzt sich so zusammen: "CORE_<MODULE_ID>_INSTANCE_TYPE_<INSTANCE_TYPE>" oder beispielsweise: "CORE_BACKENDCONNECTION_INSTANCE_TYPE_HTTP_PROXY": "HTTP Proxy"

    Betrifft: BPC Core |

BPC 4.1.15

Release Datum: 2024-08-26

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf

Verbesserungen

  • Custom JAAS Login Module: SessionToken Interface in die API verschieben BPC-8830

    Betrifft: BPC Core |

Security

Dokumentation

  • Triton Abhängigkeit für das Laden von CSS in FE Modulen BPC-8674

    In der Dokumentation wurde die Information über die Abhängigkeit zu "theme-triton" für benutzerdefiniertes CSS in benutzerdefinierten Frontend Modulen ergänzt.

    Betrifft: Dokumentation |

BPC 4.1.14

Release Datum: 2024-07-02

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.13

Release Datum: 2024-06-04

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.12

Release Datum: 2024-05-06

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.11

Release Datum: 2024-04-08

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Events beim Wiederherstellen von Indices BPC-8461

    BPC Module können nun über Events auf Wiederhergestellte Indices reagieren.

    Siehe auch Backup von Indices

    Betrifft: BPC Core | Dokumentation |

  • Automatische Index Erstellung für managed Indices, während des Schreibens, wird vermieden BPC-8462

    Wenn ein managed Index während bzw. kurz vor einem Schreibzugriff gelöscht wurde, dann wurde er automatisch angelegt. Dabei wurde jedoch die allgemeine Index Konfiguration nicht berücksichtigt. Dieses Verhalten wird nun vermieden.

    Siehe auch Anlegen von Indices

    Betrifft: BPC Core | Dokumentation | Forms |

Dokumentation

BPC 4.1.10

Release Datum: 2024-03-11

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

Verbesserungen

  • Kompilierung nach Java 17 BPC-8333

    Durch diese Änderung ist der Einsatz von Java 17 nun verpflichtend und der Java 11 Support ist beendet.

  • Artifactory npm Abhängigkeiten entfernen BPC-8334

    Nur relevant für BPC Modulentwickler

    BPC Module haben zuvor das ExtJS Framework entweder über unser eigenes NPM-Repository bezogen oder es musste separat bereitgestellt werden. Nun kann ExtJS via npm direkt aus Bitbucket bezogen werden. Dafür muss in der package.json die Dependency "@virtimo/sencha-extjs-sdk": "git+ssh://git@bitbucket.org/virtimo/sencha-extjs-sdk#c728d7e2 [git+ssh://git@bitbucket.org/virtimo/sencha-extjs-sdk#c728d7e2]" gesetzt werden. Dabei ist zu beachten, dass der Teil am Ende #c728d7e2 ` einer GIT Commit ID entspricht. Diese sollte so gewählt werden, dass diese zum aktuellen Branch bzw. BPC Version passt. `c728d7e2 entspricht dem aktuellen BPC 4.1 Branch "support/4.1.x". Man kann alternativ auch den Branch-Namen angeben. Dies wird jedoch nicht empfohlen, da sich zeigt, dass npm in dem Fall keine neueren Commits, bei einem Update, berücksichtigt.

    Nach dem Eintragen der Dependency kann der PFad zum ExtJS Framework in der Datei workspace.json wie folgt gesetzt werden:

    ...
        "frameworks": {
            "ext": {
                "path":"node_modules/@virtimo/sencha-extjs-sdk/ext"
            }
        },
    ...

    Ein Verzeichnis oder Symlink "ext" ist nicht mehr nötig.

BPC 4.1.9

Release Datum: 2023-12-15

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Monitor Zugriffsprüfung als interner Service BPC-8313

    Am de.virtimo.bpc.module.monitor.api.service.MonitorService ist es nun möglich über isAcccessible(…​) zu prüfen, ob ein Benutzer auf bestimmte Monitorfunktionen zugreifen darf.

    Betrifft: Process Monitoring |

BPC 4.1.8

Release Datum: 2023-11-21

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.7

Release Datum: 2023-10-23

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch | OpenSearch Plugin

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Update OpenSearch BPC-8015

    Aktualisieren Sie OpenSearch entsprechend der Updateanleitung

    Falls in der Zentralen Konfigurationsdatei bpc.env.sh die Umgebungsvariable KARAF_PAX_JDBC_FEATURES_TO_INSTALL verwendet wird, sicherstellen daß das neue Modul PAX JDBC Feature Installer installiert ist.

    Verwenden Backend Modul Entwickler den OpenSearch REST High Level Client, dann müssen höchstwahrscheinlich Packages angepasst werden, da OpenSearch hier einige Klassen verschoben hat.

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

  • Update OpenSearch BPC-8015

    Aktualisieren Sie OpenSearch entsprechend der Updateanleitung

    Falls in der Zentralen Konfigurationsdatei bpc.env.sh die Umgebungsvariable KARAF_PAX_JDBC_FEATURES_TO_INSTALL verwendet wird, sicherstellen daß das neue Modul PAX JDBC Feature Installer installiert ist.

    Verwenden Backend Modul Entwickler den OpenSearch REST High Level Client, dann müssen höchstwahrscheinlich Packages angepasst werden, da OpenSearch hier einige Klassen verschoben hat.

Neue Funktionen

Interne Abhängigkeiten / Dependency Updates

  • Update OpenSearch BPC-8015

    Aktualisieren Sie OpenSearch entsprechend der Updateanleitung

    Falls in der Zentralen Konfigurationsdatei bpc.env.sh die Umgebungsvariable KARAF_PAX_JDBC_FEATURES_TO_INSTALL verwendet wird, sicherstellen daß das neue Modul PAX JDBC Feature Installer installiert ist.

    Verwenden Backend Modul Entwickler den OpenSearch REST High Level Client, dann müssen höchstwahrscheinlich Packages angepasst werden, da OpenSearch hier einige Klassen verschoben hat.

BPC 4.1.6

Release Datum: 2023-09-25

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.5

Release Datum: 2023-08-28

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Verzögertes Hinzufügen von Plugins zu Hooks BPC-8188

    Betrifft: BPC Core |

BPC 4.1.4

Release Datum: 2023-08-14

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

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

    Betrifft nur Modulentwickler Bei der Verwendung des BPC JsonEditors (xtype bpcJsonField bzw. bpcCodeEditorWindow.json) wird das optionale JSON Schema nun via schema und nicht mehr per jsonSchema übergeben.

    Betrifft: BPC Core |

Neue Funktionen

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

    Betrifft nur Modulentwickler Bei der Verwendung des BPC JsonEditors (xtype bpcJsonField bzw. bpcCodeEditorWindow.json) wird das optionale JSON Schema nun via schema und nicht mehr per jsonSchema übergeben.

    Betrifft: BPC Core |

BPC 4.1.3

Release Datum: 2023-07-03

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Neue Funktionen

  • Custom OpenSearch Client via BPC OS Service BPC-8036

    Betrifft: BPC Core |

BPC 4.1.2

Release Datum: 2023-06-05

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

BPC 4.1.1

Release Datum: 2023-05-08

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.0

Release Datum: 2023-03-27

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf | OpenSearch

Update der internen Konfiguration

In dieser Version gab es Änderungen an der internen Konfiguration des BPC. Dies hat Auswirkungen auf Deployments zwischen BPC mit unterschiedlichen Versionen. Außerdem sind zusätzliche Schritte erforderlich, wenn ein Downgrade des BPC durchgeführt wird.

Weitere Informationen finden Sie auf der Seite Versionierung der internen BPC Konfiguration.

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Umstellung auf OpenSearch BPC-5819

  • Update Karaf BPC-6709

    Für dieses BPC Update ist ein Update des Karaf verpflichtend.

    Kunden Themes und eigene BPC Module müssen so angepasst werden, dass der Web-ContextPath und Webapp-Context in der Manifest-Datei zwingend mit einem / beginnen. Um dies zu erreichen, kann in der Regel die Datei build.gradle angepasst werden. Ein Beispiel kann https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52 [https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52][hier] eingesehen werden.

    In der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg wurden Parameter umbenannt:

    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

    Wir mussten einige Interfaces/Klassen aus dem Paket de.virtimo.bpc.core in das Paket de.virtimo.bpc.api verschieben.

    Wenn Sie Ihren Code für 4.0.8 oder 4.1 kompilieren und Fehler erhalten, dann passen Sie bitte die Java imports an. In den meisten Fällen müssen Sie nur .core. durch .api. ersetzen. Ansonsten löschen Sie den Import und lassen Sie die IDE ihn für Sie finden.

    Und bitte stellen Sie sicher, dass Sie keine <Import-Package> Anweisungen in Ihrer pom.xml zu den folgenden Paketen haben:

    • 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

    Falls BPC Core utils Klassen verwendet wurden.

    Bitte die Java import Statements anpassen

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

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

    Un die pom.xml (<Import-Package>)

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

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

  • BpcTrustStoreUtil ins util-Modul verschieben BPC-6924

    Falls folgendes verwendet wurde

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

    dann Bitte ersetzen durch

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

    Betrifft: BPC Core |

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

    Für BPC Entwickler

    Plugins erhalten beim Aufruf ein context übergeben. Zwei Attribute im Objekt context wurden umbenannt. Aus moduleId wurde baseModuleId und aus instanceId wurde moduleId.

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

    Relevant für BPC Modul Entwickler / 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="de.virtimo.bpc.jaxrs.BpcJAXRSInvoker"/>

    with

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

  • Content Security Policy BPC-7443

    Es wird eine Content Security Policy(CSP) per HTTP Header gesetzt. Dies kann Auswirkungen auf eigene Module, INUBIT WebApps oder integrierte Fremdanwendungen haben. Zum Anpassen der CSP siehe 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>
  • ReplicationInfoService durch einen Endpunkt ersetzen BPC-7822

    Statusinformationen zur Replikation werden nicht mehr am Monitor angezeigt. Diese Statusinformationen werden in einem zukünftigen Release via Plugin nachgereicht.

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

    Falls Sie Folgendes verwendet haben

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

    dann verwenden Sie bitte

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

    stattdessen.

    Betrifft: BPC Core |

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

    Für BPC-Modulentwickler

    Es gab eine nicht dokumentierte Funktion, die global, an allen Komponenten mit dem Attribut targetModule, auf den Event click, reagiert. Dabei wurde der Wert von targetModule an die Methode BpcCommon.Api.showModule übergeben und hat so eine Navigation zu diesem Modul ausgelöst. Diese Funktion wurde nun entfernt. Wenn Sie das Attribut targetModule, z.B. an Buttons, zur Navigation genutzt haben, müssen Sie dies durch einen eigenen Handler, der nur Ihre Komponenten betrifft, einrichten.

    Betrifft: BPC Core |

Neue Funktionen

  • BPC Sharing BPC-144

  • DynamicFieldLabel Plugin für Textfelder BPC-7815

    Für BPC Modulentwickler

    ExtJS Komponenten die das Mixin Ext.form.Labelable und dadurch die Attribute labelWidth und fieldLabel nutzen, können sich mit dem Plugin dynamisch die labelWidth anhand der tatsächlichen Textbreite setzen lassen.

    Beispiel
         {
             xtype : "textfield",
             plugins : ["bpcDynamicFieldLabel"],
             fieldLabel: "Label"
          }

    Bei Bedarf kann der zusätzliche Abstand mittels labelOffset am Plugin konfiguriert werden:

    Beispiel mit konfiguriertem labelOffset
         {
             xtype : "textfield",
             plugins: {
                 bpcDynamicFieldLabel: {
                     labelOffset: 10
                 }
             },
             fieldLabel: "Label"
          }

    Betrifft: BPC Core | Dokumentation |

Verbesserungen

  • Unsere Backend API als Maven Modul BPC-6872

    Wir mussten einige Interfaces/Klassen aus dem Paket de.virtimo.bpc.core in das Paket de.virtimo.bpc.api verschieben.

    Wenn Sie Ihren Code für 4.0.8 oder 4.1 kompilieren und Fehler erhalten, dann passen Sie bitte die Java imports an. In den meisten Fällen müssen Sie nur .core. durch .api. ersetzen. Ansonsten löschen Sie den Import und lassen Sie die IDE ihn für Sie finden.

    Und bitte stellen Sie sicher, dass Sie keine <Import-Package> Anweisungen in Ihrer pom.xml zu den folgenden Paketen haben:

    • 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

    Falls BPC Core utils Klassen verwendet wurden.

    Bitte die Java import Statements anpassen

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

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

    Un die pom.xml (<Import-Package>)

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

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

  • BpcTrustStoreUtil ins util-Modul verschieben BPC-6924

    Falls folgendes verwendet wurde

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

    dann Bitte ersetzen durch

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

    Betrifft: BPC Core |

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

    Für BPC Entwickler

    Plugins erhalten beim Aufruf ein context übergeben. Zwei Attribute im Objekt context wurden umbenannt. Aus moduleId wurde baseModuleId und aus instanceId wurde moduleId.

  • ReplicationInfoService durch einen Endpunkt ersetzen BPC-7822

    Statusinformationen zur Replikation werden nicht mehr am Monitor angezeigt. Diese Statusinformationen werden in einem zukünftigen Release via Plugin nachgereicht.

  • Felder für Organisations-, Rollen-, Rechteauswahl soll Übersetzung von Werten in Basisklasse übernehmen BPC-7844

    Betrifft: BPC Core | Data Analysis |

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

    Falls Sie Folgendes verwendet haben

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

    dann verwenden Sie bitte

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

    stattdessen.

    Betrifft: BPC Core |

Security

  • Content Security Policy BPC-7443

    Es wird eine Content Security Policy(CSP) per HTTP Header gesetzt. Dies kann Auswirkungen auf eigene Module, INUBIT WebApps oder integrierte Fremdanwendungen haben. Zum Anpassen der CSP siehe Content Security Policy

Bugs

  • Module im Status Failure nach Serverreboot oder Karaf Restart BPC-6587

    Für die BPC Backend Modul Entwickler. Bitte in der src/main/resources/OSGI-INF/blueprint/context.xml (falls verwendet; nicht extra anlegen) sicherstellen, dass der cxf:bus wie folgend gesetzt ist:

     <!-- BPC-6587 [/browse/BPC-6587] - org.apache.cxf.BusException: No DestinationFactory was found for the namespace http://cxf.apache.org/transports/http [http://cxf.apache.org/transports/http] -→  <!-- It seems that when set it waits for CXF first. -→  <!-- To get rid of the CXF loggings …​ Karaf-Konsole: log:set ERROR org.apache.cxf -→  <cxf:bus>    <cxf:features>      <cxf:logging />    </cxf:features>  </cxf:bus>

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

    Für BPC-Modulentwickler

    Es gab eine nicht dokumentierte Funktion, die global, an allen Komponenten mit dem Attribut targetModule, auf den Event click, reagiert. Dabei wurde der Wert von targetModule an die Methode BpcCommon.Api.showModule übergeben und hat so eine Navigation zu diesem Modul ausgelöst. Diese Funktion wurde nun entfernt. Wenn Sie das Attribut targetModule, z.B. an Buttons, zur Navigation genutzt haben, müssen Sie dies durch einen eigenen Handler, der nur Ihre Komponenten betrifft, einrichten.

    Betrifft: BPC Core |

Interne Abhängigkeiten / Dependency Updates

  • Update Karaf BPC-6709

    Für dieses BPC Update ist ein Update des Karaf verpflichtend.

    Kunden Themes und eigene BPC Module müssen so angepasst werden, dass der Web-ContextPath und Webapp-Context in der Manifest-Datei zwingend mit einem / beginnen. Um dies zu erreichen, kann in der Regel die Datei build.gradle angepasst werden. Ein Beispiel kann https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52 [https://bitbucket.org/virtimo/bpc-theme-template/commits/469a13171aa82655b6f0475b38a561d2ebceee52][hier] eingesehen werden.

    In der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg wurden Parameter umbenannt:

    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
  • 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>
  • Update vibur-object-pool BPC-7697

    Betrifft: BPC Core |

  • Update Mockito BPC-7700

    Betrifft: BPC Core |

  • Update json-schema-validator BPC-7701

    Betrifft: BPC Core |

  • Update json BPC-7704

    Betrifft: BPC Core |

  • Update Prometheus BPC-7706

    Betrifft: BPC Core |

  • Update/Remove javaee-web-api BPC-7710

    Betrifft: BPC Core |

Sonstiges

  • Umstellung auf OpenSearch BPC-5819

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

    Relevant für BPC Modul Entwickler / 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="de.virtimo.bpc.jaxrs.BpcJAXRSInvoker"/>

    with

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