Erstellen von Webanwendungsvorlagen

Um eine eigene benutzerdefinierte Webanwendungsvorlage zu erstellen, können Sie eine vorhandene Vorlage herunterladen und ändern, eine vorhandene Webanwendung für die Arbeit mit Inhalten aus Ihrem Portal aktualisieren oder eine neue Webanwendung mit einer ArcGIS-Web-API erstellen. Unabhängig davon, wie Sie die eigene Vorlage erstellen, arbeiten Sie mit URL-Parametern und Webkarten. Sie können mit Gruppen arbeiten, wenn Sie eine Gruppenvorlage erstellen, und Sie müssen möglicherweise zusätzliche Anforderungen berücksichtigen, wenn Sie mit Bing-Grundkarten arbeiten, auf nichtöffentliche Karten zugreifen und Ressourcen verwenden, für die ein Proxy oder CORS (Cross-Origin Resource Sharing) erforderlich ist. Außerdem fügen Sie Ihrem Portal Ihr Element hinzu und geben es für eine der Vorlagengruppen der Organisation frei, falls Ihre Organisation plant, die Vorlage in der Vorlagengalerie zu verwenden.

Portal for ArcGIS enthält Version 3.7 des ArcGIS API for JavaScript. Es besteht keine Notwendigkeit, eine eigene API zu hosten und im Portal einen Verweis zur lokalen Version zu erstellen. Die Webanwendungsvorlagen verweisen automatisch auf die installierte API. Die lokal installierte API befindet sich in der Regel unter https://webadaptor.domain.com/arcgis/jsapi/jsapi.

AchtungAchtung:

Ändern Sie die Webanwendungs-Vorlagendateien, die mit Portal for ArcGIS bereitgestellt werden, nicht, da diese Dateien vom Portal verwaltet werden und Änderungen schließlich vom Portal überschrieben werden können. Wenn Sie Vorlagen anpassen möchten, gehen Sie wie folgt vor:

  1. Erstellen Sie eine Kopie der Vorlagendatei, die Sie anpassen möchten.
  2. Speichern Sie die Kopie an einem anderen Speicherort.
  3. Passen Sie die Kopie der Vorlage an.
  4. Fügen Sie sie dem Portal als neue Vorlage hinzu.

In diesem Abschnitt wird erläutert, wie eine Webanwendungsvorlage erstellt wird. Nachdem Sie die Vorlage erstellt haben, können Sie sie konfigurierbar machen. Mittels konfigurierbarer Vorlagen können Benutzer das Aussehen und Verhalten der Anwendung anpassen. Weitere Informationen zum Erstellen von benutzerdefinierten Vorlagen finden Sie unter Hinzufügen konfigurierbarer Parameter zu Vorlagen.

URL-Parameter

Wenn Sie eine Vorlage verwenden, legen Sie fest, welche Webkarte oder Gruppe angezeigt werden soll, indem Sie die webmap- oder group-ID als Parameter in die Vorlagen-URL einfügen. Webkarten-IDs werden mit dem Parameter webmap und Gruppeninhalte mit dem Parameter group festgelegt. Damit Ihre benutzerdefinierte Vorlage mit der aktuellen Webkarte oder Gruppe funktioniert, müssen Sie einen Code in die Anwendung einfügen, um die aktuelle Webkarten- oder Gruppen-ID aus der URL zu extrahieren. Weitere Informationen zu Webkartenparametern finden Sie unter Verwenden von URL-Parametern.

Beispielsweise können Sie die Webkarte "Grundkarte von Europa" in der Vorlage "Basic Viewer" anzeigen.

Beginnen Sie dazu mit der URL des "Basic Viewer":

http://www.arcgis.com/apps/OnePane/basicviewer/index.html

Kopieren Sie den Teil "webmap=" der URL der Grundkarte von Europa":

http://www.arcgis.com/home/webmap/viewer.html?webmap=5421a40574914458892efe74f0149025

Und fügen Sie ihn ans Ende der URL des "Basic Viewer" an:

http://www.arcgis.com/apps/OnePane/basicviewer/index.html?webmap=5421a40574914458892efe74f0149025

Die JavaScript-API verfügt über die Hilfsmethode "esri.urlToObject" zur Vereinfachung dieses Prozesses. Bei dieser Methode werden URL-Parameter in ein Objekt konvertiert.

var webmap;
var urlObject = esri.urlToObject(document.location.href);

Sobald die URL-Parameter in ein Objekt konvertiert wurden, können Sie auf verschiedene Eingaben zugreifen. Sie können beispielsweise den Wert für den Parameter der Webkarten-URL einer Variablen mit dem Namen "webmap_id" zuweisen.

var webmap_id = urlObject.query.webmap;
HinweisHinweis:

Wenn die Vorlage konfigurierbar ist, müssen Sie ebenfalls einen URL-Parameter namens appid bearbeiten, der die Konfigurationseinstellungen definiert. Weitere Informationen zum Einrichten der Vorlage zum Lesen der Konfigurationsdatei finden Sie unter Hinzufügen konfigurierbarer Parameter zu Vorlagen.

Webkarten

Webkartenvorlagen sind so konzipiert, dass sie mit der aktuell angezeigten Webkarte in Map Viewer verwendet werden können. Vorlagen erstellen eine Karte in der Regel auf Basis der Webkarte, die im URL-Parameter der Webkarte angegeben ist. Jede Web API verfügt über eine Hilfsmethode zur Erstellung einer Karte anhand von Informationen aus der Webkarten-ID.

Sie können beispielsweise die "esri.arcgis.utils.createMap"-Methode der ArcGIS API for JavaScript verwenden, um eine Karte auf Grundlage der Eingabe-ID zu erstellen. Sie können außerdem eine Rückruffunktion einfügen, die ausgeführt wird, wenn die synchrone Anforderung an "esri.arcgis.utils.createMap" abgeschlossen ist.

esri.arcgis.utils.createMap(webmap,"map",{
   mapOptions:{
     slider:false
   },
   bingMapsKey:bingMapsKey
}).then(function(response){
    map = response.map;
});
HinweisHinweis:

Wenn eine Ihrer Webkarten eine Bing Maps-Grundkarte enthält, müssen Sie bei Verwendung der Methode createMap einen Bing Maps-Schlüssel angeben. Es gibt verschiedene andere Kartenoptionen, um festzulegen, ob beispielsweise Schieberegler, Navigation, Attribution usw. angezeigt werden sollen.

Die Funktion callback ermöglicht den Zugriff auf ein Antwortobjekt, das Zugriff auf das Kartenobjekt, Layer usw. bietet.

Weitere Informationen zur Kartenklasse

Gruppe

Gruppenvorlagen zeigen Inhalte aus den festgelegten Gruppen als Anwendung an. Weitere Informationen zum Veröffentlichen von Galerieanwendungen finden Sie unter Erstellen von Anwendungen mit Gruppen.

Die ArcGIS-REST-API bietet Zugriff auf Inhalte aus Ihrem Portal. Sie können sie zum Abrufen von Gruppeninhalten auf Grundlage der Eingabegruppen-ID verwenden.

In diesem Beispiel führen Sie eine Abfrage aus, um eine Gruppe mit der Eingabe-ID zu suchen.

var portal = new esri.arcgis.Portal('https://webadaptor.domain.com/arcgis/');
dojo.connect(portal, 'onLoad',function(){
    portal.queryGroup(groupid).then(function(response){
        var group = response.results[0];
     });
});

Nachdem Sie die Gruppe gefunden haben, können Sie die Gruppe abfragen, um Elemente abzurufen.

In diesem Beispiel wird die Gruppe abgefragt, um fünf Elemente vom Typ Webkarte oder Web Mapping-Anwendung zu suchen.

var queryParams = {
    q: 'type:"Web Map" -type:"Web Mapping Application"',
    num: 5
 };
group.queryItems(queryParams).then(function(response){
    var groupItems = response.results;
});

Zusätzliche Überlegungen

Da Vorlagen normalerweise so konzipiert sind, dass sie mit vielen unterschiedlichen Inhaltstypen funktionieren, müssen Sie die Vorlage möglicherweise für die Verarbeitung von Karten mit Bing Maps-Grundkarten, nicht öffentlichen Inhalten usw. einrichten. Spezifische Überlegungen sind unten aufgeführt.

Bing Maps-Schlüssel

Wenn eine der Webkarten, die Sie anzeigen möchten, eine Bing Maps-Grundkarte verwendet, müssen Sie einen Bing Maps-Schlüssel in Ihre Anwendung einbeziehen. Der Bing Maps-Schlüssel wird der "createMap"-Methode als Parameter bereitgestellt.

Identity Manager

Mit Identity Manager wird das Arbeiten mit sicheren Ressourcen vereinfacht. Identity Manager verarbeitet den Prozess zur Aufforderung des Benutzers, die Anmeldeinformationen einzugeben, einen Token zu erstellen und ihn an die Ressource anzuhängen. Durch die Einbeziehung der Identity Manager-Klasse in die Vorlagenanwendung funktioniert die Vorlage mit öffentlichen und privaten Webkarten.

Fügen Sie die folgende Codezeile in Ihre Anwendung ein, um Identity Manager zu aktivieren:

dojo.require("esri.IdentityManager");

Weitere Informationen zu Identity Manager

HinweisHinweis:

Sie müssen außerdem SSL auf dem Webserver konfigurieren, auf dem Ihre Anwendung gehostet wird.

Proxy- und CORS-Unterstützung

Wenn Ihre Anwendung domänenübergreifende Anforderungen sendet, müssen Sie CORS (Cross-Origin Resource Sharing) aktivieren oder Ihrer Anwendung einen Proxy hinzufügen.

Hinzufügen der Vorlage zu Ihrem Portal

Nachdem Sie die Vorlage erstellt und auf Ihrem Webserver gehostet haben, fügen Sie die Vorlage Ihrem Portal als Web Mapping-Anwendung hinzu und geben die URL zur Anwendung an. Wählen Sie dazu Konfigurierbar. Wählen Sie als API JavaScript. Weitere Informationen zum Hinzufügen von Anwendungen zu Ihrem Portal finden Sie unter Hinzufügen von Anwendungen.

Fügen Sie einen beschreibenden Titel und eine Zusammenfassung hinzu, da diese Informationen angezeigt werden, wenn Benutzer in der Vorlagengalerie mit der Maus auf das Element zeigen. Sie haben auch die Möglichkeit, eine ZIP-Datei zu erstellen, die Ihre Anwendungsdateien enthält, und diese an das Element anzuhängen, damit sie heruntergeladen werden kann.

Verwenden der Vorlage in der Galerie Ihrer Organisation

Wenn Sie die Vorlage in der Web Mapping-Vorlagengalerie Ihrer Organisation oder in der Gruppenvorlagengalerie verwenden möchten, geben Sie das Element für die Gruppe frei, die für die Vorlagen verwendet wird. Anschließend kann der Administrator Ihrer Organisation den Map Viewer konfigurieren oder Gruppen konfigurieren, um die Gruppe zu verwenden, die Ihre Vorlage enthält.

5/9/2014