Spring Data Sophora Updates

Changelog

Covered issues for this module.

Version 5.3.6

– 12/6/24

  • Fixed
    Abhängigkeit für Modul spring-data-sophora-entities fehlt – SDSI-182 (high)
Version 5.3.5

– 11/1/24

  • Fixed
    AutoConfiguration in spring-boot-starter-data-sophora reparieren – SDSI-184 (medium)
Version 5.3.4

– 10/21/24

  • Improved
    Equals und HashCode für SelectValues implementieren – SDSI-186 (medium)
Version 5.3.3

– 9/26/24

  • Changed
    Update auf Spring 6.1: Abhängigkeiten in Manifest aktualisieren – SDSI-183 (medium)
Version 5.3.2

– 8/28/24

  • Fixed
    SDS Repository Query soll SolrSearchParameters anwenden – SDSI-178 (critical)
Version 5.3.1

– 8/23/24

  • Fixed
    null in Log-Message verhindern – SDSI-99 (medium)
  • Added
    Converter für ? zu Optional<?> – SDSI-97 (medium)
Version 5.3.0

– 8/2/24

  • Changed
    Umstieg auf Spring 6.1/SpringBoot 3.2 – SDSI-175 (critical)
  • Changed
    Deprecations entfernen – SDSI-173 (medium)
    Notes Sophora 6: The SolrSyncChecker has been moved from com.subshell.sophora.spring.data.repository.solr to com.subshell.sophora.spring.data.commons.solr. To be able to continue using this class, you will need the following dependency:
    <dependency>
    <groupId>com.subshell.sophora</groupId>
    <artifactId>spring-data-sophora-commons</artifactId>
    </dependency>
Version 5.2.0

– 7/2/24

  • Fixed
    Auflösen der Referenzen robuster machen – SDSI-172 (medium)
    Notes Falls eine Referenz aufgrund einer SophoraException nicht aufgelöst werden kann, leifert der Aufruf "Reference#isPresent" nun "false" statt die Exception weiter zu werfen
  • Changed
    Paginierte Ergebnisse für SophoraDocumentRepository – SDSI-171 (medium)
Version 5.1.0

– 5/30/24

  • Changed
    Periodische Zeitplanung von Komponenten – SDSI-170 (medium)
    Notes Benötigt Sophora Server ab Version 4.25.0 um die periodische Zeitplanung nutzen zu können.
  • Changed
    Hilfsmethoden für die periodische Zeitplanung in SDS ergänzen – SDSI-169 (medium)
    Notes New: When using a TimeFilteredRepository, a Reference will not be resolved unless the timing configuration of the component is active.
    Change: To inquire about the actual timing of a component, use the new ReferenceEntity.getTiming() method. The method ReferenceEntity.getTimeRange() should not be used for this purpose.
    Change: The method SophoraChildnodeEntity.isAvailableAtTime() of the SDS main project was moved to ReferenceEntity in the project "spring-data-sophora-entities" because not every child node has a timing configuration.

    Requires Sophora Server version 4.25.0 or newer to use periodic time schedules.
Version 5.0.0

– 3/12/24

  • Fixed
    Spring-Data-Sophora erzeugt Dead-Lock – SDSI-111 (critical)
  • Fixed
    basePackages mit mehren Packages muss wieder funktionieren – SDSI-110 (high)
  • Fixed
    Caches sollen Thread-Safe sein – SDSI-122 (medium)
  • Changed
    Spring Data Sophora soll mit Java 17 lauffähig sein – SDSI-152 (medium)
  • Changed
    Anpassungen für Java 17 – SDSI-143 (medium)
  • Changed
    Neue sophora:visibleXxxDate-Datumsfelder in die SophoraDocumentEntity einbauen – SDSI-134 (medium)
  • Changed
    LongValue muss in SingleSelectValue konvertiert werden können – SDSI-132 (medium)
  • Changed
    Neuen Codestyle anwenden + Aufräumen – SDSI-126 (medium)
  • Changed
    Code wegen neuer Spring-Version anpassen – SDSI-125 (medium)
  • Changed
    Suchen sollen nicht per Default auf den JCR-Index gehen – SDSI-113 (medium)
  • Improved
    Dependencies vereinheitlichen – SDSI-166 (medium)
    Notes Mit diesem Release werden die Dependencies für das Logging-Framework Apache Java-Commons-Logging konsolidiert, ab sofort wird nur noch die Dependency org.springframework:spring-jcl vorausgesetzt, bisher gab es zusätzlich die Dependencies commons-logging:commons-logging und org.slf4j:jcl-over-slf4j.
    Außerdem werden zwei weitere Dependencies durch funktional gleiche Dependencies ersetzt, die auch von anderen Framework deklariert werden:
    * javax.annotation:javax.annotation-api -> jakarta.annotation:jakarta.annotation-api
    * org.glassfish:jakarta.el -> org.apache.tomcat.embed:tomcat-embed-el
  • Improved
    BinaryDataEntity um alle Felder aus der CND erweitern – SDSI-146 (medium)
  • Improved
    Suche am Repository mit eigener UUID-Liste von Solr besser unterstützen – SDSI-145 (medium)
  • Improved
    Performance der Zeitsteuerungsfilterung verbessern – SDSI-142 (medium)
  • Improved
    Placeholder in RepositoryOptions unterstützen – SDSI-141 (medium)
  • Improved
    OfflineDateCalculator anbieten – SDSI-139 (medium)
    Notes Das neue Artefakt "spring-data-sophora-commons" stellt einen OfflineDateCalculator für SophoraDocumentEntity bereit.
  • Improved
    Beispiel für Anwendung Spring-Data-Sophora erweitern – SDSI-137 (medium)
  • Improved
    ReferenceEntity um nützliche Methoden erweitern – SDSI-136 (medium)
    Notes Es gibt an der ReferenceEntity jetzt:

    boolean isOverriding()
    boolean isOverridingProperties()
    boolean isOverridingComponents()

    Optional<T> getReferenced()
    boolean hasReferenced()
  • Improved
    SophoraDocumentEntity erweitern – SDSI-133 (medium)
    Notes SophoraDocumentEntity verfügt nun über weiter Felder für folgende Properties: sophora:site, sophora:liveStructureNode, sophora:originalDocument, sophora:endDate, sophora:offlineAfterDays, sophora:archiveAfterDays, sophora:neverSetOffline, sophora:idHistory, sophora:versionParameters (letzteres ab 4.x). Außerdem gibt es für die Date-Properties entsprechende getXyzAsZonedDateTime()-Methoden.
  • Improved
    ReferenceEntity.overridingProperties soll nicht null liefern – SDSI-131 (medium)
  • Improved
    Performance-Optimierung bei der Instanziierung des Hibernate-Validators – SDSI-127 (medium)
  • Improved
    SophoraDocumentEntity um alle Properties von sophora-mix:publishable erweitern – SDSI-124 (medium)
  • Improved
    ReferenceEntity.getReference() soll niemals null zurückgeben – SDSI-114 (medium)
  • Added
    RepositoryFilter-Konfiguration um Filterung der Dokumente erweitern – SDSI-159 (medium)
    Notes Spring-Data-Sophora Repositories extending other repositories inherit their RepositoryOptions.
    Added DocumentFilterOptions to filter documents retrieved from the repository
  • Added
    RepositoryFilter-Konfiguration vereinfachen – SDSI-156 (medium)
    Notes RepositoryFilterOptions can be set with new IRepositoryFilterOptionsProvider
  • Added
    IPTC/EXIF Tabelle in Bildern als Spring Data Sophora Model bereitstellen – SDSI-151 (medium)
    Notes Die Klasse com.subshell.sophora.spring.data.entities.image.Image wurde um Felder und Methoden für das IPTC-Add-on erweitert (Mixin "sophora-extension-mix:imageMetadata"). Damit die IPTC-Daten ausgelesen werden können, muss das Package "com.subshell.sophora.spring.data.entities.image" innerhalb der "basePackages" von @EnableSophoraRepositories enthalten sein.
  • Added
    Mixins als SDS-Entities abbilden – SDSI-149 (medium)
  • Added
    SDS-Modelklassen für EPG erstellen – SDSI-120 (medium)
  • Added
    Standdatum und Verweildauerstartdatum in die SophoraDocumentEntity aufnehmen – SDSI-115 (medium)
  • Added
    Zu einem DocumentEntity die referenzierenden DocumentEntities erhalten – SDSI-138 (low)
Version 4.10.4

– 10/21/24

  • Improved
    Equals und HashCode für SelectValues implementieren – SDSI-186 (medium)
Version 4.10.3

– 10/21/24

No changes.

Version 4.10.2

– 8/28/24

  • Fixed
    SDS Repository Query soll SolrSearchParameters anwenden – SDSI-178 (critical)
Version 4.10.1

– 8/23/24

  • Fixed
    null in Log-Message verhindern – SDSI-99 (medium)
  • Added
    Converter für ? zu Optional<?> – SDSI-97 (medium)
Version 4.10.0

– 7/2/24

  • Fixed
    Auflösen der Referenzen robuster machen – SDSI-172 (medium)
    Notes Falls eine Referenz aufgrund einer SophoraException nicht aufgelöst werden kann, leifert der Aufruf "Reference#isPresent" nun "false" statt die Exception weiter zu werfen
  • Changed
    Paginierte Ergebnisse für SophoraDocumentRepository – SDSI-171 (medium)
Version 4.9.0

– 5/22/24

  • Changed
    Periodische Zeitplanung von Komponenten – SDSI-170 (medium)
    Notes Benötigt Sophora Server ab Version 4.25.0 um die periodische Zeitplanung nutzen zu können.
Version 4.8.0

– 12/18/23

  • Improved
    Dependencies vereinheitlichen – SDSI-166 (medium)
    Notes Mit diesem Release werden die Dependencies für das Logging-Framework Apache Java-Commons-Logging konsolidiert, ab sofort wird nur noch die Dependency org.springframework:spring-jcl vorausgesetzt, bisher gab es zusätzlich die Dependencies commons-logging:commons-logging und org.slf4j:jcl-over-slf4j.
    Außerdem werden zwei weitere Dependencies durch funktional gleiche Dependencies ersetzt, die auch von anderen Framework deklariert werden:
    * javax.annotation:javax.annotation-api -> jakarta.annotation:jakarta.annotation-api
    * org.glassfish:jakarta.el -> org.apache.tomcat.embed:tomcat-embed-el
  • Improved
    Fix dependency management and properties – SDSI-164 (medium)
Version 4.7.0

– 11/16/23

No changes.

Version 4.6.0

– 10/5/23

  • Added
    RepositoryFilter-Konfiguration um Filterung der Dokumente erweitern – SDSI-159 (medium)
    Notes Spring-Data-Sophora Repositories extending other repositories inherit their RepositoryOptions.
    Added DocumentFilterOptions to filter documents retrieved from the repository
  • Added
    RepositoryFilter-Konfiguration vereinfachen – SDSI-156 (medium)
    Notes RepositoryFilterOptions can be set with new IRepositoryFilterOptionsProvider
Version 4.5.3

– 8/9/23

  • Fixed
    Entferne die beanutils Dependency – SDSI-160 (medium)
  • Changed
    Anpassungen für Java 17 – SDSI-143 (medium)
Version 4.5.1

– 5/17/23

No changes.

Version 4.5.0

– 4/11/23

Verwendet Spring 5.3.26 und Spring Boot 2.7.10

  • Changed
    Spring Data Sophora soll mit Java 17 lauffähig sein – SDSI-152 (medium)
Version 4.4.0

– 3/1/23

  • Added
    IPTC/EXIF Tabelle in Bildern als Spring Data Sophora Model bereitstellen – SDSI-151 (medium)
    Notes Die Klasse com.subshell.sophora.spring.data.entities.image.Image wurde um Felder und Methoden für das IPTC-Add-on erweitert (Mixin "sophora-extension-mix:imageMetadata"). Damit die IPTC-Daten ausgelesen werden können, muss das Package "com.subshell.sophora.spring.data.entities.image" innerhalb der "basePackages" von @EnableSophoraRepositories enthalten sein.
Version 4.3.2

– 2/10/23

  • Fixed
    OfflineDateCalculator muss 'sophora:offlineAfterDays' korrekt berücksichtigen – SDSI-150 (medium)
Version 4.3.1

– 1/30/23

No changes.

Version 4.3.0

– 12/29/22

  • Added
    Mixins als SDS-Entities abbilden – SDSI-149 (medium)
Version 4.2.5

– 12/15/22

  • Improved
    BinaryDataEntity um alle Felder aus der CND erweitern – SDSI-146 (medium)
Version 4.2.4

– 11/25/22

No changes.

Version 4.2.3

– 11/14/22

  • Improved
    Performance der Zeitsteuerungsfilterung verbessern – SDSI-142 (medium)
Version 4.2.2

– 10/26/22

No changes.

Version 4.2.1

– 8/29/22

  • Improved
    OfflineDateCalculator anbieten – SDSI-139 (medium)
    Notes Das neue Artefakt "spring-data-sophora-commons" stellt einen OfflineDateCalculator für SophoraDocumentEntity bereit.
Version 4.2.0

– 8/15/22

  • Improved
    Placeholder in RepositoryOptions unterstützen – SDSI-141 (medium)
  • Added
    Zu einem DocumentEntity die referenzierenden DocumentEntities erhalten – SDSI-138 (low)
Version 4.1.5

– 7/20/22

No changes.

Version 4.1.4

– 7/14/22

  • Improved
    Beispiel für Anwendung Spring-Data-Sophora erweitern – SDSI-137 (medium)
Version 4.1.3

– 7/13/22

  • Improved
    Referenzierendes Dokument an der SophoraDocumentEntity abfragen können – SDSI-135 (medium)
Version 4.1.2

– 6/3/22

  • Improved
    ReferenceEntity um nützliche Methoden erweitern – SDSI-136 (medium)
    Notes Es gibt an der ReferenceEntity jetzt:

    boolean isOverriding()
    boolean isOverridingProperties()
    boolean isOverridingComponents()

    Optional<T> getReferenced()
    boolean hasReferenced()
Version 4.1.1

– 5/24/22

  • Changed
    Neue sophora:visibleXxxDate-Datumsfelder in die SophoraDocumentEntity einbauen – SDSI-134 (medium)
Version 4.1.0

– 5/6/22

  • Changed
    LongValue muss in SingleSelectValue konvertiert werden können – SDSI-132 (medium)
  • Improved
    SophoraDocumentEntity erweitern – SDSI-133 (medium)
    Notes SophoraDocumentEntity verfügt nun über weiter Felder für folgende Properties: sophora:site, sophora:liveStructureNode, sophora:originalDocument, sophora:endDate, sophora:offlineAfterDays, sophora:archiveAfterDays, sophora:neverSetOffline, sophora:idHistory, sophora:versionParameters (letzteres ab 4.x). Außerdem gibt es für die Date-Properties entsprechende getXyzAsZonedDateTime()-Methoden.
Version 4.0.14

– 4/6/22

  • Improved
    ReferenceEntity.overridingProperties soll nicht null liefern – SDSI-131 (medium)
Version 4.0.13

– 3/29/22

  • Improved
    Performance-Optimierung bei der Instanziierung des Hibernate-Validators – SDSI-127 (medium)
Version 4.0.12

– 12/30/21

  • Changed
    Neuen Codestyle anwenden + Aufräumen – SDSI-126 (medium)
Version 4.0.11

– 11/26/21

  • Improved
    SophoraDocumentEntity um alle Properties von sophora-mix:publishable erweitern – SDSI-124 (medium)
Version 4.0.10

– 11/10/21

  • Fixed
    Caches sollen Thread-Safe sein – SDSI-122 (medium)
Version 4.0.9

– 9/30/21

  • Added
    SDS-Modelklassen für EPG erstellen – SDSI-120 (medium)
Version 4.0.8

– 6/30/21

  • Fixed
    MultiSelectValues dürfen keine null-Werte enthalten – SDSI-121 (medium)
Version 4.0.7

– 3/4/21

  • Added
    Standdatum und Verweildauerstartdatum in die SophoraDocumentEntity aufnehmen – SDSI-115 (medium)
Version 4.0.6

– 3/1/21

No changes.

Version 4.0.5

– 1/21/21

  • Changed
    Suchen sollen nicht per Default auf den JCR-Index gehen – SDSI-113 (medium)
Version 4.0.4

– 1/14/21

  • Improved
    ReferenceEntity.getReference() soll niemals null zurückgeben – SDSI-114 (medium)
Version 4.0.3

– 11/5/20

  • Fixed
    Spring-Data-Sophora erzeugt Dead-Lock – SDSI-111 (critical)
Version 4.0.2

– 11/4/20

No changes.

Version 4.0.1

– 10/6/20

  • Fixed
    basePackages mit mehren Packages muss wieder funktionieren – SDSI-110 (high)
Version 4.0.0

– 9/30/20

  • Fixed
    Der DeskClient kann die Modelklassen nicht mehr finden – SDSI-106 (critical)
  • Fixed
    OutOfMemoryError: Compressed class space – SDSI-105 (critical)
  • Changed
    Autowiring direkt nach der Instanziierung von Entities durchführen – SDSI-90 (medium)
  • Improved
    findBySophoraId() am SophoraDocumentRepository implementieren – SDSI-108 (medium)
    Notes Es gibt an SophoraDocumentRepository die neuen Methoden findBySophoraId() und findByUuid(). Wurden entsprechend benannte Methoden bisher in abgeleiteten Repository-Interfaces definiert, so sollten diese entfernt werden.
  • Improved
    Performance: SophoraTypes.findMostSpecificAssignableClass() cachen – SDSI-103 (medium)
  • Improved
    Unterstützung von primitiven Typen – SDSI-93 (medium)
  • Improved
    Überschriebene Werte in Komponenten – SDSI-44 (medium)
  • Added
    Converter für StringValue zu Integer/Double/URI – SDSI-96 (medium)
  • Added
    Converter für StringValue/DateValue zu Instant – SDSI-95 (medium)
  • Added
    IEntityClassResolver: Mehrere Klassen für einen Dokumenttyp unterstützen – SDSI-89 (medium)
  • Added
    RepositoryFilterOptions um Prädikat zur Prüfung von Komponenten-Gültigkeit erweitern – SDSI-84 (medium)

Last modified on 7/5/23

The content of this page is licensed under the CC BY 4.0 License. Code samples are licensed under the MIT License.

Icon