Release Notes 4.9

What’s New

Dieses Release enthält eine Reihe funktionaler Neuerungen sowie Updates der Basis-Technologie.

OGC API Features

Diese Version führt einen neuen Layer zur Verwendung von OGC API-Features ein. Dieser neue Standard ist der komplett modernisierte Nachfolger der OGC Web Feature Service (WFS)-Spezifikation.

Parametrisierte URL in Adresszeile des Browsers

Die parametrisierte URL, mit der der Zustand einer App (z.B. aktivierte Grundkarten und Layer oder der angezeigte Kartenausschnitt) weitergegeben werden kann, kann nun permanent in der Adresszeile des Browsers angezeigt und aktualisiert werden. Um diese Funktion zu aktivieren, ergänzen Sie das Bundle parameter-url in Ihrer App.

Verbesserungen an Popups

Mit diesem Release werden folgende Verbesserungen an Popups eingeführt:

  • Popups können unabhängig von Layern auch für Suchthemen (Stores) definiert werden. Dadurch können Popups für einen Suchdienst angezeigt werden, der nicht in der Karte angezeigt wird (z.B. Suche nach Adresspunkten).

  • Popups können nach einer Suche automatisch geöffnet werden. Dies gilt auch für Suchen, die über einen parametrisierten Aufruf ausgeführt wurden.

  • Die Darstellung von Actions und anderen Elementen kann individueller konfiguriert werden.

  • Das Default-Popup kann nun auch für Imagery Layer genutzt werden.

Grundkarten in der Karteninhaltsteuerung (TOC)

In der Karteninhaltsteuerung können nun auch die in der App zur Verfügung stehenden Grundkarten gesteuert werden. Nutzern steht somit eine zentrale Oberfläche zur Verfügung, um alle dargestellten Karten sowohl in Desktop-Umgebungen als auch auf mobilen Geräten zu steuern.

Editing

Dialog zur Attribut-Editierung

Der Dialog zur Bearbeitung von Attributen eines Kartenobjekts kann nun per Konfiguration angepasst werden. Durch sog. FormTemplates können die Attribute festgelegt werden, die zur Editierung angezeigt werden sollen. Außerdem können Attribute zu Gruppen zusammengefasst und mit angepassten Überschriften, Beschreibungen und Labels versehen werden.

Editieren in 3D

Die Werkzeuge zum Hinzufügen und Bearbeiten von Objekten können nun auch in 3D-Szenen genutzt werden.

Bearbeiten von Attachments (Dateianhängen)

Dateien können über das Editier-Werkzeug zu einem Kartenobjekt als Attachment hinzugefügt und entfernt werden.

Werkzeugregeln für Kartenzustände

Mit Hilfe von Werkzeugregeln (Tool Rules) können Werkzeuge abhängig vom aktuellen Kartenmaßstab oder aktivierten Kartenlayern aktiviert bzw. zur Verfügung gestellt werden. Somit kann z.B. ein Werkzeug zum Editieren erst dann angeboten werden, wenn ein entsprechender Layer aktiviert wurde.

Weitere neue Funktionen und Verbesserungen

  • Die von map.apps als technische Basis genutzte ArcGIS API for JavaScript wird mit diesem Release auf die Version 4.16 aktualisiert. Dies führt zu zahlreichen Verbesserungen und Fehlerbehebungen in der Basistechnologie. Die Performance bei der Darstellung von Feature Layern oder Webszenen wurde z.B. deutlich verbessert.

  • Für Grundkarten kann nun ebenfalls eine Legende angezeigt werden.

  • Die Standard-Positionen von Tooltips können nun für komplette Werkzeugsets definiert werden. Die App-Konfiguration kann dadurch kürzer und übersichtlicher gestaltet werden, da nicht für jedes Werkzeug einzeln die Position definiert werden muss.

  • GeoRSS Feeds können nun als Kartenlayer eingebunden werden.

  • Der neue Layer-Typ ImageryTileLayer kann eingebunden werden, um Raster-Daten Client-seitig zu projezieren und zu verarbeiten.

  • Es stehen zwei neue Werkzeuge bereit, mit denen zu vorherigen und nächsten Kartenausschnitten gewechselt werden kann.

  • Die Kartensteuerung per Mausrad oder Touch-Gesten kann deaktiviert werden, um das Nutzererlebnis in eingebetteten Apps zu verbessern.

  • Apps die in Portal for ArcGIS registriert sind, können nur von den Nutzern zugegriffen werden, für die auch das entsprechende Element in Portal for ArcGIS freigegeben ist.

  • Die im Drucken zur Verfügung stehenden Layouts und Formate können konfiguriert werden.

  • Die Konfiguration von CORS Filtern ist durch die Verwendung von Platzhaltern effizienter.

Eine komplette Auflistung aller Änderungen finden Sie im Changelog.

Update-Hinweise

Aktualisierte Standard-App

Die Vorlage für die sog. Standard-App wurde aktualisiert. Sofern Sie keine eigenen Anpassungen vorgenommen haben, entfernen Sie die Datei default-app-4.zip aus dem Arbeitsverzeichnis. Der Pfad zu diesem Verzeichnis wird über den Parameter data.directory.location in der Datei %TOMCAT%\webapps\mapapps\WEBINF\classes\custom-application.properties definiert. Beim ersten Start von map.apps werden die neuen Vorlagen dort abgelegt.

JavaScript import/export vs. AMD define

Im Zuge der Modernisierung der map.apps API wird zunehmend das im ECMAScript 6 Standard (ES6) definierte Schlüsselwort export verwendet. Dadurch ist eine Änderung bei der Verwendung des AMD Import-Stils define nötig.

Verwenden Sie die neue ES6 Syntax import, um Inkompatibilitäten zu vermeiden.

Die folgenden Abschnitte zeigen die Änderung am Beispiel von string-replace:

AMD Import (alt)
define(["apprt-core/string-replace"], function(stringReplace){

   var msg = stringReplace('Hello ${key}', { key : "World"});

});
ES6 Import (neu)
import stringReplace from "apprt-core/string-replace"

const msg = stringReplace('Hello ${key}', { key : "World"});

Code, der im AMD Format vorliegt, kann mit dem Tool amd-to-es6 konvertiert werden. Das Beispielprojekt zum Entwickeln von neuen Bundles mapapps-4-developers ist bereits für die Nutzung der neuen Syntax vorbereitet.

Theming

Neue Farbvariablen sind verfügbar um die Hintergrund- und Eingabetextfarbe der OmniSuche per LessCss zu definieren. Bei eigenen Themes müssen daher die die folgenden Variablen mit den Standardwerten ergänzt werden:

@ct-omnisearch-input-background-color: #fff;
@ct-omnisearch-input-text-color: #000;
@ct-omnisearch-drawer-button-background-color: @ct-omnisearch-input-background-color;
@ct-omnisearch-drawer-button-icon-color: darken(@disabled-text-color, 30);

Abhängigkeiten

Linie 4 Bundles

  • Esri ArcGIS API for JavaScript 4.16.2

  • ArcGIS Arcade 1.11

  • core-js 3.6.4

  • Dojo 1.14.2

  • dgrid 1.2.1

  • dstore 1.1.2

  • Moment.js 2.24.0

  • Vue.js 2.6.6

  • Vuetify.js 1.5.24

Linie 3 Bundles

  • Esri ArcGIS API for JavaScript 3.25

  • Dojo 1.13.0

  • dgrid 0.3.17

  • xstyle 0.3.2

  • put-selector 0.3.6

  • dstore 1.1.2

  • Moment.js 2.22.1