Release Notes
1 Administration
1.1 Fallback für sprachabhängige Medien ohne Inhalt
Ist ein Medium sprachabhängig angelegt, sollten Bilddateien bzw. Dateien anderer Medinformate für jede vorhandene Sprache hinterlegt werden. Standardmäßig wird das Medium sonst nicht ausgegeben und / oder das Medium verlinkt auf eine nicht-vorhandene URL.
Mit dem aktuellen Release kann jetzt definiert werden, dass für die Sprache, für die keine Datei hinterlegt ist, die Datei der Mastersprache verwendet wird.
Dazu die Option „Mastersprache verwenden“ auswählen (FirstSpirit ServerManager / Projekteigenschaften / Ersetzungen, „Sprachersatz (Medien“)):

Ist die Option „Ignorieren“ gewählt (dies ist die Standardeinstellung), wird in der Sprache des Mediums, für die keine Datei hinterlegt ist, nichts angezeigt.
Hinweis: In folgenden Fällen wird weiterhin kein Medium angezeigt:
- Für ein sprachabhängiges Medium ist in der Mastersprache keine Datei hinterlegt.
- Für ein sprachunabhängiges Medium ist keine Datei hinterlegt.
- Für ein sprachabhängiges Medium ist in einer Sprache ungleich der Mastersprache keine Datei hinterlegt, und bei „Sprachersatz (Medien)“ ist die Option „Mastersprache verwenden“ nicht aktiviert.
Für diese Fälle wird eine entsprechende Lösung mit einem der folgenden FirstSpirit-Releases bereitgestellt.
Im Kontext dieser neuen Funktionalität wurde auch die FirstSpirit Access-API erweitert, um auf diese Projekteinstellung reagieren zu können: Package de.espirit.firstspirit.access.project, Interface Project.
1.2 Health-Status: Erweiterungen für Web-Applikationen und Webserver u.a.
Im „Health Center“ (FirstSpirit ServerMonitoring) kann der aktuelle Gesundheitszustand des FirstSpirit Servers abgelesen werden. Der Zustand degraded (Symbol: Ausrufungszeichen auf rotem Hintergrund) kann beispielsweise darauf hindeuten, dass es Probleme hinsichtlich des zur Verfügung stehenden Speicherplatzes oder eine zu hohe Last auf dem Server gibt.
Aber auch, wenn die Web-Applikationen, die standardmäßig von FirstSpirit mitgeliefert werden, beim FirstSpirit-Start nicht korrekt ausgerollt („deployed“) wurden, führt dies zum Zustand degraded.
Detailliertere Informationen liefert die Datei server-incidents.log (herunterladbar im FirstSpirit ServerMonitoring unter „FirstSpirit / Monitoring / Kennzahlen“ über das Umschlag-Icon; Meldung „Server status is degraded!“). Hier können Ursachen abgelesen werden, die zu dem problematischen Zustand führen bzw. geführt haben.
Befindet sich der Server im Status degraded, sollten geeignete Maßnahmen ergriffen werden, die die Probleme beheben.
Ein FirstSpirit Server wird jetzt auch als degraded angesehen, wenn ein aggregierender Webserver verwendet wird und eine Web-Applikation nicht auf allen Webservern des aggregierenden Webservers erfolgreich ausgerollt werden kann.
Meldung in der Datei server-incidents.log:
Web server errors detected: #wobei # die Anzahl der entsprechenden Warnungen ist.
Die Meldung
Some core web applications are not running: ...besagt, dass mindestens eine Web-Applikation nicht korrekt ausgerollt werden konnte, und welche.
In seltenen Fällen wurde keine explizite Fehlermeldung ausgegeben, wenn eine Web-Applikation oder eine Web-Komponente nicht auf einem Webserver ausgerollt werden konnte. Dieser Fehler wurde jetzt ebenfalls behoben.
Darüber hinaus wurde das MBean HealthManager um zwei weitere Informationen erweitert:
LastWebServerErrorWebServerErrorsPerDay
Meldungen zum Health-Status sind jetzt auch in der Datei fs-server.log enthalten. Sie werden über die Klasse de.espirit.firstspirit.server.HealthStatus ausgegeben. So können entsprechende Meldungen auch nachträglich aufgefunden werden. Beispiel:
INFO 19.01.2022 14:14:47.570 (de.espirit.firstspirit.server.HealthStatus):
RUN_LEVEL (de.espirit.firstspirit.server.RunLevelHolder) Reached run level:
STARTED(100)Hinweis: In einigen Fällen werden Meldungen jetzt zweimal ausgegeben.
Im Kontext des Health-Status wurden zudem einige Schwellenwerte, ab denen ein unter hoher Last stehender FirstSpirit Server als degraded angesehen wird, aufgrund bisher gewonnener Erfahrungen, erhöht.
2 FirstSpirit Content Experience Tools (CXT)
Aktuelle Modul-Versionen
Folgende Modul-Versionen für „FirstSpirit Content Experience Tools“ werden von FirstSpirit 2022.2 unterstützt.
| Modul- / Dateiname | Versionsnummer |
FirstSpirit CXT Plattformplatform-[version].fsm | 2.5.2 |
FirstSpirit CXT DAP Bridgedataservice-[version].fsm | 1.44.2 |
FirstSpirit CXT FragmentCreatorfragment-creator-[version].fsm | 3.4.5 |
FirstSpirit Fragment DAPfragmentdap-[version].fsm | 1.40.5 |
FirstSpirit Media DAPmediadap-[version].fsm | 1.31.3* |
FirstSpirit PageRef DAPpageref-[version].fsm | 1.9.3 |
FirstSpirit Markdown Editormarkdown-editor-[version].fsm | 1.29.2* |
FirstSpirit Tagging Editortagging-editor-[version].fsm | 1.29.2 |
FirstSpirit CXT FragmentCreator - CaaS Integrationcaas-integration-[version].fsm | 1.31.3 |
* Diese Module benötigen ab dieser Version FirstSpirit 2020-03 oder höher.
3 Modul-Entwicklung, Skripte, API
ModuleAdminAgent: Änderung für getProjectAppConfig() im Fehlerfall
Die Methode ModuleAdminAgent.getProjectAppConfig() (FirstSpirit Developer-API, Package de.espirit.firstspirit.agency) gibt – wie in der API-Dokumentation beschrieben – bereits seit FirstSpirit 2022.1 eine IllegalArgumentException zurück, wenn die Projekt-Komponente nicht im betreffenden Projekt hinzugefügt / installiert ist.
Zuvor wurde eine leere Konfiguration angelegt und zurückgegeben.
Hinweis: Dies gilt nur für Server, die im „Isolated Mode“ betrieben werden. Für Server, die noch im abgekündigten „Legacy Mode“ betrieben werden, wurde seit jeher die IllegalArgumentException zurückgegeben.
4 Vorlagenentwicklung
4.1 FS_CATALOG: Duplizieren von Einträgen steuern
FirstSpirit-Eingabekomponenten lassen sich durch Projektentwickler äußerst flexibel und feingranular an die Anforderungen des jeweiligen Projekts und der Redakteure anpassen.
Die Eingabekomponente FS_CATALOG ermöglicht beispielsweise die komfortable Erstellung von Listen, die aus Absätzen oder Verweisen bestehen können.
Zentrale Funktion dabei ist das Anlegen von neuen Einträgen.
Diese Funktion kann durch eine spezifische Regel-Definition kontrolliert werden, und zwar über die Eigenschaft NEW.
An dieser Eigenschaft hing bisher auch die Funktionalität „Duplizieren“, die im FirstSpirit ContentCreator im Formular per Icon ausgeführt werden kann:

im FirstSpirit SiteArchitect per Kontextmenü:

Bisher konnten die Funktionen „Neu“ und „Duplizieren“ nur zusammen aktiviert und deaktiviert werden.
Mit dem aktuellen Release können die Funktionen „Neu“ und „Duplizieren“ jetzt getrennt voneinander gesteuert werden, und zwar über die neue Eigenschaft COPY:
PROPERTY name="COPY"Aus Kompatibilitätsgründen wird für COPY der Status von NEW berücksichtigt, sofern keine explizite Definition für COPY erfolgt.
Um „Duplizieren“ zu ermöglichen, „Neu“ aber nicht, muss COPY explizit aktiviert werden, NEW deaktiviert, z. B.:
<RULES>
<RULE>
<WITH>
<TRUE/>
</WITH>
<DO>
<PROPERTY name="COPY" source="catalog"/>
<NOT>
<PROPERTY name="NEW" source="catalog"/>
</NOT>
</DO>
</RULE>
</RULES>Hinweis: Die Icons in der Vorschau (EasyEdit-Icons) können durch Regeln nicht beeinflusst werden. Um das Duplizieren in der Vorschau generell zu unterbinden, kann dafür die Tailored-UI-Funktionalität genutzt werden.
Zu weiteren Informationen siehe:
- FS_CATALOG: https://docs.e-spirit.com/odfs/vorlagenentwick/formulare/eingabekomponen/catalog/index.html
- Eigenschaft COPY: https://docs.e-spirit.com/odfs/vorlagenentwick/regeln/formulareigensc/eigenschaft-cop/index.html
- Tailored UI: https://docs.e-spirit.com/odfs/vorlagenentwick/contentcreator/customization/standardfunktio/index.html
4.2 JSON: Debugging von nicht auflösbaren Referenzen
Nicht auflösbare Referenzen bei der JSON-Generierung führen jetzt zu Log-Meldungen des Levels WARN.
Dies ist beispielsweise der Fall, wenn ein verlinktes Medium nicht im Freigabestand erreichbar ist, weil es niemals freigegeben wurde, oder sich ein niemals freigegebener Ordner in der Vaterkette des Mediums befindet.
Beispiel:
WARN 24.01.2022 14:26:24.248{g-node=850537} (de.espirit.firstspirit.generate.
SiteProduction): Reference 'xyz' [type=MEDIASTORE_LEAF] is set but not accessible!
It may have been deleted or is not correctly released.Übersicht
| ID | Beschreibung | Kategorien |
|---|---|---|
| CORE-14023 | Mit dem aktuellen Release wurde das Monitoring für Web-Applikationen und Webservern erweitert. |
Debugging, FirstSpirit-Administrator, Monitoring |
| CORE-14052 | In FS_CATALOG-Komponenten kann jetzt das Anlegen und Duplizieren von Einträgen getrennt voneinander aktiviert bzw. deaktiviert werden. |
ContentCreator, Dynamische Formulare, Eingabekomponenten, Entwickler, Redakteur |
| CORE-14058 | Nicht auflösbare Referenzen bei der JSON-Generierung führen jetzt zu Log-Meldungen des Levels |
Debugging, Entwickler, Freigabe, Generierung, JSON-Unterstützung |
| CORE-14099 | Fallback für sprachabhängige Medien ohne Inhalt |
FirstSpirit-Administrator, Medien, ServerManager |
| CORE-14132 | Es wurde ein Fehler behoben, der bei nicht validen Benutzereinstellungen (Datei system_properties) in sehr seltenen Fällen dazu führen konnte, dass die FirstSpirit Startseite für die entsprechenden Benutzer nicht mehr angezeigt wird. |
FirstSpirit Startseite, FirstSpirit-Administrator, Redakteur |
| CORE-14135 | Fehler in Aufträgen, die dazu führen, dass eine |
Aufträge, Debugging, FirstSpirit-Administrator, Health Center, Monitoring, ServerMonitoring |
| CORE-14145 | Es wurde ein Fehler behoben, der in sehr seltenen Fällen dazu führen konnte, dass der FirstSpirit Server aufgrund von Locks im Streaming Manager (regelt den Datenstrom) nicht mehr erreichbar war. |
FirstSpirit-Administrator |
| CORE-14155 | Mit FirstSpirit 2022.1 wurde die Einstellung der Checkbox „Autom. Zuschnitt standardmäßig aktiv“ des Dienstes „FS Image Recognition - AWS Connector“ des Moduls „FirstSpirit Image Recognition“ nicht korrekt ausgewertet: War diese Checkbox aktiviert und die Projekt-Komponente „FS ImageRecognition - Configuration“ für das betreffende Projekt nicht installiert, wurden Bilder beim Upload nicht mehr automatisch zugeschnitten. Dieser Fehler wurde behoben. |
ContentCreator, Entwickler, FirstSpirit-Administrator, Medien, Module |
| CORE-14159 | FirstSpirit Content Experience Tools: Aktuelle Modul-Versionen |
Entwickler, FirstSpirit Content Experience Tools (CXT), FirstSpirit-Administrator, FragmentCreator, Module |
| CORE-14177 | Die Methode |
Entwickler, FirstSpirit-API, Isolated mode, Modul-Entwicklung, Module |
| CXT-2492 | Im FirstSpirit ContentCreator wurden bei der Verwendung von Regeln für CMS_INPUT_DATE nicht alle Tags korrekt ausgewertet (speziell ADD und GREATER_THAN). Darüber hinaus werden jetzt innerhalb einer ValueService-Implementierung (Package |
ContentCreator, Dynamische Formulare, Eingabekomponenten, Entwickler |
| CXT-2501 | Das mehrfache Ausführen der Funktionen „Menüpunkt in Seite umwandeln“ oder „Seite in Menüpunkt umwandeln“ hintereinander wird jetzt verhindert. |
ContentCreator, Performance, Redakteur |
| CXT-2512 | Hat ein Redakteur für einen Teilbereich eines Projekts keine Rechte, konnte dies in seltenen Fällen dazu führen, dass sich das Projekt im FirstSpirit ContentCreator nicht öffnen ließ. Stattdessen wurde ein 500er-Fehler angezeigt. |
ContentCreator, Entwickler, Rechte |
Deprecations
| Funktion | Abgekündigt mit | Entfällt / Entfallen mit |
|---|---|---|
| Eingabekomponente CMS_INPUT_CONTENTAREALIST | 5.2R3 | |
| Eingabekomponente CMS_INPUT_CONTENTLIST | 5.2R3 | |
| Eingabekomponente CMS_INPUT_FILE | 5.2R3 | |
| Eingabekomponente CMS_INPUT_LINKLIST | 5.2R3 | |
| Eingabekomponente CMS_INPUT_OBJECTCHOOSER | 5.2R3 | |
| Eingabekomponente CMS_INPUT_PAGEREF | 5.2R3 | |
| Eingabekomponente CMS_INPUT_PICTURE | 5.2R3 | |
| Eingabekomponente CMS_INPUT_TABLIST | 5.2R3 | |
| FirstSpirit Access-API: de.espirit.firstspirit.agency.GroupsAgent | 5.2R15 | |
| FirstSpirit Access-API: delete (de.espirit.firstspirit.access.AccessUtil) | 5.2R18 | |
| FirstSpirit Access-API: release (de.espirit.firstspirit.access.AccessUtil) | 2018-06 | |
| FirstSpirit Access-API: getLastLoginAsDate (de.espirit.firstspirit.agency.UserStatisticsAgent) | 2018-07 | |
| FirstSpirit Access-API: remainingDurationOfCurrentStageInMillis (de.espirit.firstspirit.server.MaintenanceModeInfo) | 2018-07 | 2025-13 |
| FirstSpirit Access-API: getStartingTimeOfStageAsDate (de.espirit.firstspirit.server.MaintenanceModeInfo) | 2018-07 | 2025-13 |
| FirstSpirit Access-API: getSelectedWebserverConfiguration (de.espirit.firstspirit.access.serverConfiguration) | 2018-10 | 2025-13 |
| FirstSpirit Access-API: setSelectedWebserverConfiguration (de.espirit.firstspirit.access.serverConfiguration) | 2018-10 | 2025-13 |
| FirstSpirit Access-API: getSelectedWebServer (de.espirit.firstspirit.access.project.Project) | 2018-10 | 2025-13 |
| FirstSpirit Access-API: setSelectedWebServer (de.espirit.firstspirit.access.project.Project) | 2018-10 | 2025-13 |
| FirstSpirit Access-API: getLostAndFoundStoreNodes(); (de.espirit.firstspirit.feature.FeatureInstallResult) | 2018-10 | |
| FirstSpirit Access-API: getDeletedStoreNodes(); (de.espirit.firstspirit.feature.FeatureInstallResult) | 2018-10 | |
| FirstSpirit Access-API: de.espirit.firstspirit.access.store.Previewable | 2019-01 | |
| WebSphere Application Server Support für FirstSpirit | 2019-05 | |
| Legacy mode für den FirstSpirit-Server | 2019-06 | 2022-03 |
| Datenbank-Layer Oracle Database 11g/12c | 2020-12 | 2025-05 |
| FirstSpirit Access-API: redirectTemplateLogToDefaultLog() (Interface RenderingAgent.Renderer) | 2021-05 |