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. Es 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.

Attachments (Dateianhänge) bearbeiten

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 Nutzungserlebnis in eingebetteten Apps zu verbessern.

  • Apps die in ArcGIS Enterprise-Portal registriert sind, können nur von den Zugängen zugegriffen werden, für die auch das entsprechende Element in ArcGIS Enterprise-Portal 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

Changelog

4.9.2

Line 4 Bundles (4.9.2)

Fixed Issues

MAPAPPS-5678

[Map] Error when trying to display WMS

MAPAPPS-5680

[Result Center] Actions not working for feature with ID 0

MAPAPPS-5696

[TOC] Nested sublayers of WMS not displayed in TOC

4.9.1

Line 4 Bundles (4.9.1)

New Features

MAPAPPS-5540

[Analytics-Logging] Integrate configuration for centralized logging infrastructure

MAPAPPS-5665

[TOC] Dynamically react to the 'listMode' property

Fixed Issues

MAPAPPS-5668

[AGS Search] AutoStoreRegistration creates stores for graphics layers

MAPAPPS-5664

[Legend] PictureFillSymbols paths are not resolved correctly

MAPAPPS-5662

[Map] Sublayers of WMS are not displayed in some cases

MAPAPPS-5669

[Native App Export] ProjectionEngine not loaded if "file://" prefix is on browser

MAPAPPS-5656

[Native App Export] Some bundles are not included in export

MAPAPPS-5660

[Omnisearch] No zoom is performed when openpopup action is used

MAPAPPS-5667

[Popups] Custom Action not shown for popup defined on store when opened from result center

MAPAPPS-5621

[TOC] Divider sometimes missing in actions menu

MAPAPPS-5598

[TOC] listMode is not correctly applied if configured at sublayer level

4.9.0

Line 4 Bundles (4.9.0)

New Features

MAPAPPS-5628

[CORS Filter] Allow use of wildcards in allowed origins configurations

MAPAPPS-5641

[Editing] Allow to edit in 3D scene views

MAPAPPS-5548

[Legend] Allow to show legend for base layers

MAPAPPS-5563

[Map] Disable mouse-wheel and touch navigation

MAPAPPS-5613

[Map] Support GeoRSS layer

MAPAPPS-5622

[Map] Support Imagery Tile Layer

MAPAPPS-5611

[Map] Support OGC API Features layer

MAPAPPS-5194

[Navigation Toolset] Move to previous or next view

MAPAPPS-5631

[OmniSearch] Open popup after successful search

MAPAPPS-5527

[Parameter Manager] Always show parameterized url in browser address bar

MAPAPPS-5636

[Parameter Search] Open popup after successful search

MAPAPPS-5460

[Popups] Allow to define popups for stores independent from layers

MAPAPPS-5552

[Popups] Allow to set maxInlineActions and visibleElements properties

MAPAPPS-5601

[Popups] Allow to use custom popup types for stores independent from layers

MAPAPPS-5582

[Popups] Allow to use popup-default for imagery layers

MAPAPPS-5495

[Popups] Do not allow popup-types for basemaps

MAPAPPS-5593

[Portal-App-Registration] Ensure that only users allowed to access the app portal item can open the app

MAPAPPS-5323

[Printing] Allow to define properties allowedLayouts and allowedFormats

MAPAPPS-5619

[ProxyServlet] Allow configuration of additional forward headers

MAPAPPS-5625

[Reporting] Default value of "usable" should be true after creation

MAPAPPS-5626

[Reporting] Default value of title should be the ID of the report after creation

MAPAPPS-5173

[Result Center] Use highlighter to draw graphics

MAPAPPS-5585

[Result Center] Use seperate layer for highlights

MAPAPPS-5576

[System] Ensure that Internet Explorer does not switch into compatibility mode

MAPAPPS-5467

[System] Update ArcGIS API for JavaScript to version 4.15

MAPAPPS-5496

[TOC] Allow to control basemaps

MAPAPPS-5186

[Toolrules] Add rule for layer visibility (layer is enabled)

MAPAPPS-5588

[Toolrules] Add rule for scale

MAPAPPS-5187

[Toolrules] Add rules for sublayouts

MAPAPPS-3379

[Toolset] Make position of tooltips configurable for a whole toolset

MAPAPPS-5504

[Vuetify] Update to version 1.5.24

Fixed Issues

MAPAPPS-5579

[apprt] Stop of an app leads to errors in the console

MAPAPPS-5604

[apprt-request] Endless retries during access of portal item

MAPAPPS-5610

[ct/store/SpatialQuery] Complex Query on memory store with $intersects point throws error

MAPAPPS-5577

[DataView] Destroying DataView leads to error

MAPAPPS-5592

[Documentation] JavaScript API docs are sometimes missing / wrong

MAPAPPS-5494

[Editing] Browser crashes while editing vertices of a large feature

MAPAPPS-5575

[Layout] Font-size of tools inside a toolbox is too large

MAPAPPS-5538

[Legend] Entries are not removed when new layer is added

MAPAPPS-5478

[Map] Perfomance issues with feature layers

MAPAPPS-5632

[Omnisearch] Error handling is wrong when search gets cancelled

MAPAPPS-5030

[Popups] Coded values of MapImageLayer Sublayers are not displayed correctly

MAPAPPS-5607

[Portal Item Registration] Removing portal registration fails

MAPAPPS-5102

[Reporting] Report template is not updated when filename is reused

MAPAPPS-5596

[Resultcenter] Popup appears on wrong location after SRS change

MAPAPPS-5643

[Scalebar] Overlays popup

MAPAPPS-5566

[Selection] Polygon selection mode not disabled

MAPAPPS-5573

[Selection] Selection tool does not work properly

MAPAPPS-5570

[Sketching/Editing] Map pans instead of moving vertex

MAPAPPS-5549

[TOC] Nested Sublayers displayed in wrong order

MAPAPPS-5646

[TOC] Oversized sublayer description not displayed correctly