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 Karten. Sie können mit Gruppen arbeiten, wenn Sie eine Gruppenvorlage erstellen. Sie sollten 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 ArcGIS Online 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 ArcGIS API 3.15 for JavaScript. Es besteht keine Notwendigkeit, eine eigene API zu hosten und im Portal einen Verweis zur lokalen Version für neu erstellte App-Vorlagen zu erstellen. Die Webanwendungsvorlagen verweisen automatisch auf die installierte API. Die lokal installierte API ist normalerweise unter https://webadaptorhost.domain.com/webadaptorname/jsapi/jsapi verfügbar.
Vorsicht:
Ändern Sie die mit Portal for ArcGIS bereitgestellten Web-App-Vorlagendateien nicht, da diese Dateien vom Portal verwaltet werden und Ihre Änderungen schließlich vom Portal überschrieben werden können. Wenn Sie Vorlagen anpassen möchten, gehen Sie wie folgt vor:
- Erstellen Sie eine Kopie der Vorlagendatei, die Sie anpassen möchten.
- Speichern Sie die Kopie an einem anderen Speicherort.
- Passen Sie die Kopie der Vorlage an.
- Fügen Sie sie dem Portal als neue Vorlage hinzu.
In diesem Abschnitt wird erläutert, wie eine Webanwendungsvorlage erstellt wird. Voraussetzung hierfür ist, dass Ihnen Berechtigungen zum Erstellen von Inhalten und zum Freigeben dieser Inhalte für Gruppen in Ihrer Organisation zugewiesen sind. Nachdem Sie die Vorlage erstellt haben, können Sie sie konfigurierbar machen. Mit konfigurierbaren Vorlagen können Benutzer das Aussehen und Verhalten der Anwendung anpassen.
Webkarten
Anwendungsvorlagen sind so konzipiert, dass sie mit der aktuell angezeigten Karte 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 ArcGIS API for JavaScript esri.arcgis.utils.createMap-Methode 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;
});
Hinweis:
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, Attributierung usw. angezeigt werden sollen.
Die Funktion callback ermöglicht den Zugriff auf ein Antwortobjekt, das Zugriff auf das Kartenobjekt, Layer usw. bietet.
Die App-Vorlage registrieren
Falls Sie in Ihrer App-Vorlage gesicherte Elemente verwenden, sollten Sie die Vorlage zunächst bei der Plattform registrieren. Fügen Sie hierzu ein neues Element der Web Mapping-Anwendung hinzu, und legen Sie die URL für die App-Vorlage auf Ihrem Webserver fest.
Nachdem Sie das Element hinzugefügt haben, müssen Sie die App registrieren. Da es sich um eine Web-App handelt, lassen Sie den Browser so eingestellt, dass Redirect URI auf die URL der Vorlagen-App verweist.
Ihre App sollte nach der Registrierung eine eindeutige Anwendungs-ID besitzen.
Nutzen Sie den Identity Manager, damit dieser die registrierte Anwendungs-ID erkennt. Weitere Informationen können Sie den ArcGIS API for JavaScript enthaltenen OAuth-Beispielen OAuth Basic und OAuth Popup entnehmen.
Gruppe
Gruppenvorlagen zeigen Inhalte aus den festgelegten Gruppen als App an.
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://webadaptorhost.domain.com/webadaptorname/');
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 Web Map oder Web Mapping Application 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
Web-Apps sind in der Regel so konzipiert, dass sie mit vielen unterschiedlichen Inhaltstypen funktionieren. Sie müssen 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 Karten, 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 als Parameter der createMap-Methode bereitgestellt.
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 Webanwendungselement hinzu, und geben Sie die URL zur Anwendung an. Wählen Sie dazu Konfigurierbar aus. Wählen Sie als API JavaScript aus.
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 App-Galerie Ihrer Organisation
Wenn Sie die Vorlage in der Map Viewer- oder Gruppen-App-Galerie der Organisation verwenden möchten, geben Sie das Element für die Gruppe frei, die für diese Galerie 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.