Crear plantillas de aplicación Web

Para crear su propia plantilla de aplicación web, puede descargar y modificar una de las plantillas existentes, actualizar una aplicación web existente para que funcione con contenido de ArcGIS Online o crear una aplicación web nueva con una de las API web de ArcGIS. Independientemente de cómo crees tu propia plantilla, deberás trabajar con parámetros de URL y mapas Web. Si crea una plantilla de grupo, puede trabajar con grupos y puede considerar posibles requisitos adicionales para trabajar con mapas base de Bing, acceder a mapas no públicos y trabajar con recursos que requieran un proxy o el uso compartido de recursos de distinto origen (CORS). También puede añadir el elemento a ArcGIS Online y, si su organización tiene previsto usar la plantilla en su galería de plantillas, compartirla con uno de los grupos de plantillas de la organización.

SugerenciaSugerencia:

Este tema abarca cómo se crea una plantilla de aplicación Web. Después de crear la plantilla, puede hacerla configurable. Las plantillas configurables permiten a los usuarios personalizar la apariencia y el comportamiento de la aplicación. Para obtener más información sobre cómo se crean plantillas configurables, consulta Añadir parámetros configurables a plantillas.

Parámetros de la dirección URL

Al utilizar una plantilla, se especifica qué grupo o mapa web se debe visualizar, incluyendo el Id. webmap o group como parámetro en la URL de la plantilla. Los ID de los mapas Web se especifican utilizando el parámetro webmap y el contenido del grupo se especifica utilizando el parámetro group. A fin de que la plantilla personalizada funcione con el mapa o el grupo actual, necesitas incluir código en la aplicación para extraer el ID del mapa Web o del grupo actuales a partir de la URL. Para obtener más información sobre los parámetros del mapa Web, consulta Usar los parámetros de la URL.

Por ejemplo, podrías mostrar el mapa base de Europa en la plantilla de visor básico.

Para hacer esto, empieza por la URL del visor básico:

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

Copia la parte webmap= de la URL del mapa base de Europa:

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

Y añádela al final de la URL del visor básico:

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

La API de JavaScript tiene un método de ayuda esri.urlToObject que simplifica este proceso. Este método convierte los parámetros de la URL en un objeto.

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

Una vez que los parámetros de la URL se convierten en un objeto, puedes acceder a las distintas entradas. Por ejemplo, podrías asignar el valor del parámetro webmap de la URL a una variable llamada webmap_id.

var webmap_id = urlObject.query.webmap;
NotaNota:

Si la aplicación es configurable, también deberás gestionar un parámetro de la URL llamado appid que define los ajustes de configuración. Para obtener más información sobre la configuración de la plantilla para leer el archivo de configuración, consulta Añadir parámetros configurables a plantillas.

Mapas Web

Las plantillas de mapas web están diseñadas para trabajar con el mapa web visualizado en cada momento en el visor de mapas de ArcGIS.com. Normalmente, las plantillas crean un mapa basado en el mapa Web especificado en el parámetro webmap de la URL. Cada una de las API Web dispone de un método de ayuda que crea un mapa utilizando información del ID del mapa Web.

Por ejemplo, puedes usar el método esri.arcgis.utils.createMap de la API de ArcGIS para JavaScript para crear un mapa basado en el ID introducido. También puedes incluir una función de devolución de llamada que se ejecute cuando la solicitud sincrónica a esri.arcgis.utils.createMap se haya completado.

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

Si alguno de tus mapas Web incluye un mapa base de Bing, deberás especificar una clave de Bing Maps al utilizar el método createMap. Hay varias opciones de mapas más que se pueden especificar, tal como si se debe mostrar el deslizador, la navegación y la atribución, entre otras.

La función de callback proporciona acceso a un objeto de respuesta que, a su vez, permite acceder al objeto mapa y sus capas, entre otros elementos.

Más información acerca de la clase Map

Más información acerca de cómo utilizar la API de ArcGIS para Javascript para que funcione con mapas Web

Grupo

Las plantillas del grupo muestran contenido del grupo especificado como aplicación. Para obtener más información acerca de cómo crear aplicaciones de galería, consulta Crear aplicaciones con grupos.

La API REST de ArcGIS proporciona acceso al contenido de ArcGIS Online. Puedes utilizarla para recuperar contenido de un grupo a partir del ID de grupo introducido. Para obtener más información acerca de cómo se trabaja con la API REST, consulte Acerca del desarrollo con servicios del portal.

En este ejemplo, se realiza una consulta para buscar un grupo con el Id. de entrada.

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

Una vez encontrado el grupo, puedes realizar consultas para recuperar elementos del grupo.

En este ejemplo, se realiza una consulta al grupo para encontrar cinco elementos de tipo mapa Web o aplicación de representación cartográfica en la red.

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

Consideraciones adicionales

Por lo general, las plantillas están diseñadas para trabajar con muchos tipos distintos de contenido, así que es posible que debas configurar la plantilla para manejar mapas con mapas de base del Bing Maps, contenido que no sea público, etc. A continuación se indican las consideraciones específicas.

Clave de Bing Maps

Si cualquiera de los mapas Web que deseas mostrar utiliza un mapa base de Bing Maps, deberás incluir una clave de Bing Maps en la aplicación. La clave de Bing Maps se proporciona como parámetro para el método createMap.

Identity Manager

El Identity Manager simplifica del proceso de trabajar con recursos protegidos. Maneja el proceso de solicitar al usuario sus credenciales, generando un token y añadiéndolo al recurso. Al incluir la clase Identity Manager en la aplicación de plantilla, la plantilla funciona con mapas Web públicos y privados.

Para activar IdentityManager, incluye la línea de código siguiente en tu aplicación:

dojo.require("esri.IdentityManager");

Más información acerca de Identity Manager

NotaNota:

También deberás configurar SSL en el servidor Web donde alojes tu aplicación.

Soporte para proxy y CORS

Puesto que de su aplicación realizará solicitudes entre dominios distintos a ArcGIS Online, deberás habilitar el uso compartido de recursos de origen distinto (CORS) o añadir un proxy a la aplicación.

Añadir la plantilla a ArcGIS Online

Una vez que haya creado la plantilla y la haya alojado en su servidor web, agregue la plantilla a ArcGIS Online como elemento de aplicación de representación cartográfica en la red y especifique la URL de la aplicación. Para este fin, elija Configurable. Para la API, elija JavaScript. Para obtener más información sobre la adición de aplicaciones en ArcGIS Online, consulte Agregar aplicaciones. También puede añadir el elemento a través de la API REST de ArcGIS.

No olvides incluir un título descriptivo y un resumen, ya que esta información se muestra cuando los usuarios pasan el puntero del ratón por encima de la plantilla en la galería de plantillas. Opcionalmente, puedes crear un archivo ZIP que contenga tus archivos de aplicación y adjuntarlo al elemento para proporcionar una capacidad adicional de descarga

Usar la plantilla en la galería de tu organización

Si quieres utilizar la plantilla configurable en la galería de plantillas de representación cartográfica en la red de tu organización o en una galería de plantillas de grupos, comparte el elemento con el grupo que vayas a usar para las plantillas. A continuación, el administrador de tu organización puede configurar el visor de mapas o configurar grupos para usar el grupo que incluya tu plantilla.

9/20/2013