Release Notes 4.17

What’s New

Tomcat 10 Unterstützung

Dieses Release ist das erste Release, mit dem Tomcat 10 unterstützt wird. Ein Betrieb mit Tomcat 9 ist ab dieser Version nicht mehr möglich. Details dazu sind in diesem Artikel beschrieben: Tomcat 10 und Java 21 Unterstützung in con terra Technologies Produkten

Update-Hinweise

Falls Sie bei dem Update mehrere Versionen überspringen, befolgen Sie bitte auch alle Update-Hinweise der dazwischenliegenden Versionen.

Nicht benötigter Datenbank-Index

Bitte löschen Sie den Datenbank-Index apps_groupname_idx. Dieser ist nicht notwendig, da die Spalten Teil eines anderen Index sind.

Update der APP_ASSETS Tabelle bei Verwendung von Microsoft SQL Server

Sollten Sie als map.apps Datenbank einen Microsoft SQL Server verwenden, so ist ein zusätzlicher Migrationsschritt notwendig. In der Tabelle APPS_ASSETS wurde Typ der Spalte ID von binary(255) auf binary(16) geändert. Bitte führen Sie das Skript updater-app-assets-table-sqlserver.sql aus, um die Änderungen durchzuführen.

Abkündigungen

Für folgende Features wird die Weiterentwicklung eingestellt und das Ende der Unterstützung für die Zukunft angekündigt. Beachten Sie außerdem die Hinweise in den Systemanforderungen.

  • map.apps Manager und App-Konfiguration:

    • Die Live-Konfiguration wird nicht mehr weiterentwickelt und wird in einer der kommenden Versionen entfernt. Verwenden Sie stattdessen den App-Editor zur Konfiguration von Apps. Sie können die Live-Konfiguration bereits jetzt für Ihre Nutzer ausblenden, indem Sie die Konfigurations-Option manager.config.editor.showLiveConfigButton auf false setzen.

    • Die Konfigurationsoption allowedWorkflows:["create"] im Bundle editing wird demnächst entfernt. Verwenden Sie stattdessen allowedWorkflows:["create-features"].

  • Bundles:

    • Das Bundle omnisearch wird nicht mehr weiterentwickelt. Verwenden Sie stattdessen das Bundle search-ui.

    • Die Bundles resultcenter und selection-resultcenter werden nicht mehr weiterentwickelt. Verwenden Sie stattdessen das Bundle result-ui.

  • Entwicklung:

    • Die Unterstützung von module.exports in JavaScript-Dateien wird demnächst entfernt. Benutzen Sie stattdessen die ECMAScript Keywords export bzw. export default.

    • Um eine zukünftige Migration von AMD zu einem anderem Modulsystem zu erleichtern sollten JavaScript-Dateien nach Möglichkeit nur noch als ECMAScript Module verfasst und anschließend transpiliert werden.

    • Die Unterstützung von cancel in der Rückgabe der Abfrageergebnisse (QueryResult) eines Stores wird demnächst entfernt. Ziel ist es die Komplexität der store-api.Store Api zur reduzieren. Bitte benutzen Sie stattdessen einen AbortController , wie unter Nutzung eines AsyncStore beschrieben.

      const aborter = new AbortController();
      store.query({name: "Test"}, { signal: aborter.signal })
          .then((resultItems)=>{
              ...
          }, (e)=>{
              if (e.name === "AbortError"){
                  // aborted
              }
      })
      // trigger abort
      aborter.abort();
      [source,javascript]
    • Die Klasse ct/mapping/store/MapServerLayerStore wird durch eine neue Klasse LayerStore im agssearch-Bundle ersetzt. Die Klasse LayerStore wird mit einer ArcGIS FeatureLayer Instanz hinterlegt und ist daher konsistent mit dem Inhalt der Karte. Das agssearch-Bundle erzeugt nun standardmäßig LayerStore-Instanzen in der Klasse AGSStoreFactory und den Konfigurationsoptionen AutoStoreRegistration und AGSStore. Das alte Verhalten kann während der Übergangsphase mit der Option legacyImplementation wiederhergestellt werden.

    • Die Verwendung von data-template-window und data-template-window-events in template files wird zukünftig nicht mehr unterstützt. Nehmen Sie stattdessen Fenster-Definitionen in manifest.json Dateien vor.

    • Die folgenden Klassen werden in einem der nächsten Releases entfernt:

Abgekündigte Klasse Alternative

ct/array

native JavaScript Funktionen

ct/async

apprt-core/async

ct/_when

apprt-core/when

ct/_compare

apprt-core/comparators

ct/mapping/store/MapServerLayerStore

AGSStoreFactory.createStore

ct/store/_RestStore

store-api/rest/BaseWriteableRestStore

ct/store/ComplexMemory

store-api/InMemoryStore

ct/store/ComplexQuery

store-api/ComplexQuery

ct/store/ComplexQueryEngine

store-api/utils.createComplexQueryEngine

ct/store/ComplexQueryToRQL

store-api/rest/RQLStore

ct/store/ComplexQueryToSolrQL

store-api/rest/ComplexQueryToSolrQL

ct/store/ComplexQueryToSQL

store-api/rest/ComplexQueryToSQL

ct/store/Filter.filterMetaData

store-api/utils.mergeMetadata

ct/store/RQLStore

store-api/rest/RQLStore

ct/store/SpatialQuery

store-api/SpatialQuery

ct/store/SQLStore

store-api/rest/SQLStore

ct/store/StoreUtil

store-api/utils

ct/ui/controls/mobile/Drawer

-

Bekannte Einschränkungen

MAPAPPS-5654

[Map] Zoom via mousewheel does not allow to zoom to the full max or min extent in some situations

MAPAPPS-6377

[Printing] Printing of line measurement not possible with PrintTask published from ArcMap

Abhängigkeiten

  • Esri ArcGIS Maps SDK for JavaScript 4.28.10

  • ArcGIS Arcade 1.24

  • JasperReports 6.20.1

  • Moment.js 2.29.4

  • Vue.js 2.7.15

  • Vuetify.js 1.5.24

Changelog

4.17.0

New Features

MAPAPPS-6968

Drop not required db index "apps_groupname_idx"

MAPAPPS-6967

Suppress warning log on empty post body

MAPAPPS-6825

Support Java 21

MAPAPPS-5909

Support Tomcat 10

Fixed Issues

MAPAPPS-6974

Usage of SimpleDateFormat in multiple threads causes request errors

MAPAPPS-6973

[Apps-Overview] No proper Filter Labels are shown

MAPAPPS-6966

Login at Portal with flag oauthUsePopup = true is not working

MAPAPPS-6948

[Toolset] Wrong position after browser width change

MAPAPPS-6943

[Accessibility] Selection UI - no keyboard control in topic selection list while using NVDA