Flujo de trabajo: Utilizar ArcGIS Spatial Data Server para la plataforma Java para proporcionar los datos de la base de datos

Complejidad: Principante Requisito de datos: Utilizar datos propios

Puede configurar ArcGIS Spatial Data Server para la plataforma Java y publicar los datos desde la base de datos existente siguiendo el ejemplo que se presenta en este tema.

En este ejemplo, una aplicación se creará para recopilar la información demográfica sobre los ex alumnos de una universidad para una universidad específica. La universidad puede utilizar la información recopilada para promover su universidad a los futuros estudiantes o se pueden utilizar para ayudar a los futuros estudiantes a planificar su educación: qué escuelas y diplomados ofrecen el mejor rendimiento de las inversiones (coste de asistencia contra el salario esperado después de graduarse).

Una clase de entidad de región con el almacenamiento de geometría PostGIS en una base de datos de PostgreSQL se publicará como un servicio de entidades editables para el servidor de datos espaciales. La clase de entidad de región muestra las zonas de código postal para representar aproximadamente en dónde viven ahora los ex alumnos.

Implemente un servidor de datos espaciales

Debe instalar ArcGIS Spatial Data Server for Java, el proveedor de JDBC, un cliente del sistema de administración de bases de datos (DBMS) y un servidor de aplicaciones Java.

Después de eso, configure la fuente de datos.

Instale ArcGIS Spatial Data Server for Java

Para instalar ArcGIS Spatial Data Server for Java, siga las instrucciones de la guía de instalación que se proporciona con el software. Esta guía incluye información sobre los requisitos del sistema, la autorización y la instalación del software.

NotaNota:

Para permitir la edición a través de los servicios publicados en ArcGIS.com, debe instalar ArcGIS Spatial Data Server for IIS en un servidor público (uno fuera de su firewall).

Instale los proveedores de JDBC y configure un servidor de aplicaciones Java

Descargue e instale el controlador JDBC admitido para su DBMS y una aplicación o un servidor Web.

En este flujo de trabajo, el archivo de JDBC de PostgreSQL y Tomcat están instalados.

Pasos:
  1. Descargue el controlador JDBC de PostgreSQL desde http://jdbc.postgresql.org/download.html y colóquelo en el servidor donde están instalados ArcGIS Spatial Data Server y Tomcat.
  2. Descargue Tomcat desde el sitio Apache Software Foundation.
  3. Instale Tomcat en el servidor.
  4. Copie los controladores JDBC (PostgreSQL y PostGIS) en el directorio lib de Tomcat.

Configure la fuente de datos

Debe configurar la fuente de datos con la Web o con el servidor de aplicaciones.

Para este flujo de trabajo, modifique el archivo context.xml de Tomcat para configurar la fuente de datos.

Pasos:
  1. Abra el archivo context.xml en el directorio conf en donde está instalado Tomcat.
  2. Edite la sección <Nombre del recurso> del archivo, al proporcionar información para el cluster de base de datos de PostgreSQL.

    En este ejemplo, el nombre de la fuente de datos es postgres, el cluster de la base de datos se escucha en el puerto 5432 predeterminado, y la base de datos es gisdata. Se realiza la conexión como la función de inicio de sesión alumapp.

    <Resource name="jdbc/postgres" auth="Container"               type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"               url="jdbc:postgresql://127.0.0.1:5432/gisdata"               username="alumapp" password="ruL00king" maxActive="20" maxIdle="10"                maxWait="-1"/>

  3. Guarde el archivo context.xml.

Prepare las cuentas

Ya que los datos publicados como un servicio de entidades se editarán, debe otorgar privilegios de edición al usuario que se conecta a los datos y los publica. También publicará en ArcGIS Online, de modo que debe crear una cuenta de ArcGIS Online.

Conceda los privilegios al usuario conectado

Cuando llegue al siguiente conjunto de pasos, especificará un usuario para conectarse al registrar la fuente de datos. A este usuario se le deben otorgar privilegios en los datasets que desea publicar en el servidor de datos espaciales. Por ejemplo, si desea que los usuarios tengan acceso solo de selección a los datos en el servicio de entidades, el usuario especificado de la fuente de datos solo debe tener privilegios selectos en los datasets en el servicio de entidades.

En este ejemplo de flujo de trabajo, el servicio de entidades permitirá seleccionar, agregar y actualizar privilegios; por tanto, al usuario que se conecta a la fuente de datos se le deben otorgar privilegios de selección, inserción y actualización en la clase de entidad de los clientes. Además, ya que la clase de entidad utiliza el almacenamiento de geometría PostGIS, el usuario debe otorgar privilegios en la tabla public.geometry_columns y public.spatial_ref_sys.

Según se muestra aquí, se crean una función de inicio de sesión de base de datos y esquema, alumapp. A la función de inicio de sesión se le conceden los privilegios de selección, inserción y actualización en la clase de entidad de regiones en la base de datos, así como seleccionar, insertar, actualizar y eliminar en la tabla geometry_columns y seleccionar los privilegios en la tabla spatial_ref_sys. Asegúrese de conectarse a la base de datos correcta al crear el esquema y otorgar privilegios.

CREATE ROLE alumapp LOGIN    ENCRYPTED PASSWORD 'ruL00king',    NOSUPERUSER CREATEDB INHERIT NOCREATEROLE;    CREATE SCHEMA alumapp AUTHORIZATION alumapp;  GRANT ALL ON SCHEMA alumapp TO alumapp; GRANT USAGE ON SCHEMA alumapp TO authusers;  GRANT SELECT, INSERT, UPDATE, DELETE     ON TABLE public.geometry_columns    TO alumapp;  GRANT SELECT   ON TABLE public.spatial_ref_sys   TO alumapp;  GRANT SELECT, INSERT, UPDATE   ON market1.regions   TO alumapp;

Configure una cuenta de ArcGIS Online

En este ejemplo, se publicará el servicio de ArcGIS Online, en donde se creará una aplicación.

Utilice su cuenta global de Esri para iniciar sesión en ArcGIS Online. Puede registrar su cuenta global de Esri existente con ArcGIS Online o cree una cuenta global de Esri y regístrela desde el mismo lugar. Diríjase a http://www.arcgis.com/home/ y haga clic en Iniciar sesión.

Si ya ha registrado su cuenta global de Esri con ArcGIS Online, no necesita iniciar sesión en este momento. Esto se llevará a cabo más adelante en el flujo de trabajo cuando se publique el servicio.

Cree una conexión de administrador en el servidor de datos espaciales

Publique datos a través de una conexión específica para el servidor de datos espaciales. La conexión de administrador le permite administrar el servidor y publicar los servicios.

Ya que también es posible que desee administrar el servidor de datos espaciales, cree una conexión administrativa con el servidor de datos espaciales de ArcGIS for Desktop.

Pasos:
  1. Inicie ArcMap y abra la ventana Catálogo.
  2. En el árbol de Catálogo, expanda el nodo Servidores SIG.
  3. Haga doble clic en Agregar ArcGIS Server.
  4. Elija Administrar servidor SIG y haga clic en Siguiente.
  5. En el cuadro de texto Dirección URL del servidor, escriba la dirección URL administrativa del servidor de datos espaciales.

    Para este ejemplo, la dirección URL es http:// pub5:8080/arcgis/admin.

  6. Seleccione Spatial Data Server de la lista desplegable Tipo de servidor.
  7. Si planea utilizar esta conexión para crear y guardar definiciones de servicio, puede elegir en qué parte del disco se organizarán los archivos de definición del servicio. De forma predeterminada, se organizarán en una carpeta de su equipo local.
  8. Haga clic en Finalizar para crear la conexión.

    Su nueva conexión se enumera bajo el nodo Servidores SIG .

Publicar un servicio de entidades

Se conectará a la base de datos desde ArcGIS for Desktop como el mismo usuario con el que configuró la fuente de datos. A continuación, creará un mapa que contiene los datos que desea en su servicio, indicará una fuente de datos del mapa y publicará.

Conéctese a la base de datos desde ArcGIS for Desktop

Realiza una conexión a la base de datos para que pueda obtener acceso a los datos en ella. Para realizar una conexión a la base de datos, debe instalar el cliente de la base de datos en el equipo en donde está instalado ArcGIS.

Para este flujo de trabajo, debe colocar los archivos cliente de PostgreSQL en la carpeta bin donde ArcGIS for Desktop está instalado.

Pasos:
  1. Descargue los archivos de la biblioteca cliente de 32 bits de PostgreSQL de Windows desde el Portal Esri Customer Care.
  2. Colocar los archivos en la carpeta bin de ArcGIS for Desktop .

Una vez que las bibliotecas del cliente PostgreSQL están en la carpeta bin de ArcGIS for Desktop, puede realizar una conexión de ArcMap a la base de datos.

Conéctese a la base de datos desde ArcMap para que pueda agregar la tabla de regiones a su mapa.

Pasos:
  1. En el árbol de catálogo, expanda el nodo Conexión de base de datos .
  2. Haga doble clic en Agregar conexión de base de datos.
  3. Escriba el nombre del servidor de PostgreSQL en el cuadro de texto Instancia.
  4. Escriba el nombre de la base de datos, gisdata, en el cuadro de texto Base de datos.
  5. Elija Autenticación de la base de datos en la lista del menú desplegable Tipo.
  6. Escriba alumapp en el cuadro de texto Nombre de usuario.
  7. Escriba la contraseña de inicio de sesión alumapp en el cuadro de texto Contraseña.
  8. Deje marcado Guardar nombre de usuario y contraseña y haga clic en Aceptar.

Cree un mapa

Agregue la tabla de regiones a ArcMap al arrastrarla desde la conexión de base de datos de la ventana del mapa.

Si ArcMap no puede detectar la referencia espacial o una columna de ObjectID calificativa (una columna de enteros no nulos), se le solicitará que proporcione esa información.

NotaNota:

No puede publicar los datos que no tienen una referencia espacial.

Una vez que la tabla aparece en la tabla de contenido de ArcMap, simbolice las entidades utilizando los símbolos simples que desea que aparezcan en el servicio. Consulte la ayuda de ArcGIS para obtener información sobre cómo cambiar la simbología.

A continuación, realice cualquier cambio de configuración en el documento de mapa necesario para las propiedades que desea mostrar en el servicio. Por ejemplo, es probable que desee establecer qué campos serán visibles en el servicio, establecer los alias de los campos que serán visibles, y posiblemente establecer algunos campos como solo de lectura. Para este ejemplo, también deseará establecer un menú desplegable HTML para que los usuarios proporcionen la información necesaria para procesar su solicitud. Consulte Un recorrido rápido por la creación de servicios de entidades para un servidor de datos espaciales para obtener una lista de las posibles propiedades.

Haga zoom en la extensión inicial que desea que utilice su servicio. Desea estar seguro de que la extensión inicial devolverá no más que la cantidad máxima de entidades que estableció en el momento de la publicación del servicio que se va a devolver. Por defecto, este número es 1000. Guarde el mapa.

Asigne la fuente de datos y publique un servicio de entidades editables

Ahora que el mapa está listo, comparta los datos como un servicio de entidades al publicarlos.

En el momento de la publicación, asignará la fuente de datos.

SugerenciaSugerencia:

De manera alternativa, puede tener indicada la fuente de datos de la vista administrativa REST. Consulte Representación cartográfica de la fuente de datos de la vista REST para ArcGIS Spatial Data Server for Java para obtener más información.

Pasos:
  1. En su documento ArcMap, elija Archivo > Compartir como > Servicio en el menú principal.
  2. In the Share As Service window, there are three options.
    • To immediately publish your data, choose Publish a service and click Next.
    • To save a service definition file to be published later, choose Save a service definition file and click Next.
    • To replace an existing service, choose Overwrite an existing service and click Next. To replace a service, the original service must be stopped first.
  3. Elija el servidor de datos espaciales admin desde de la lista desplegable de la conexión.
  4. Escriba alumni_data en el cuadro de texto Nombre de servicio, y haga clic en Continuar.
  5. Haga clic en Acceso a entidades en Editor de servicio.
  6. Deje marcadas las cuatro operaciones ya que el usuario que se conecta podrá consultar, crear, actualizar y eliminar datos mediante el servicio de entidades.
  7. Haga clic en Compartir.

    Se abre el cuadro de diálogo Inicio de sesión de ArcGIS Online.

  8. Escriba su nombre de usuario de la cuenta global de Esri y la contraseña y haga clic en Aceptar para iniciar sesión y cerrar el cuadro de diálogo de inicio de sesión.
  9. En el panel ArcGIS Online del cuadro de diálogo Editor de servicio, marque el cuadro apropiado del cual desea obtener acceso a su contenido.
    • Si es el único que obtiene acceso al servicio por ahora, marque Mi contenido.
    • Si desea que todos los que tienen acceso a ArcGIS Online vean el servicio, marque Todos (público).
    • Ningún grupo del que es un miembro está enumerado. Si desea otorgar acceso a su servicio a cualquiera de estos grupos, marque Miembros de estos gruposy, a continuación, marque todos los grupos que desea.

    Puede marcar más de una opción. Por ejemplo, es posible que desee que el servicio sea parte de su contenido y otorgue el acceso a grupos de ArcGIS Online específicos.

  10. Haga clic en Analizar.

    Si aún no ha asignado la fuente de datos, recibirá el mensaje de error que indica que la fuente de datos de la capa no se ha asignado. Esto y cualquier otro error se deben corregir antes de que pueda publicar con éxito.

  11. Para corregir los errores, haga clic con el botón derecho del ratón en ellos.

    El menú contextual contiene vínculos a las herramientas para corregir el problema.

  12. Para corregir el error de la fuente de datos, siga las instrucciones que se proporcionan en el vínculo para ayudar con los errores.
  13. Corrija cualquier otro error que se haya devuelto antes de continuar.
  14. Si desea ver cómo se observará la clase de entidad en el servicio, haga clic en Vista previa.
  15. Haga clic en Publicar.
  16. Cuando finaliza la publicación, haga clic en Aceptar para cerrar el cuadro de diálogo.

Visualizar los servicios

Puede ver la información sobre el servicio desde el directorio de ArcGIS Spatial Data Services . Ya que publicó el servicio de ArcGIS Online, puede visualizar el servicio en un mapa desde allí.

Obtener acceso al servicio desde el directorio de ArcGIS Spatial Data Services

El directorio de ArcGIS Spatial Data Services enumera todos los servicios publicados en un servidor de datos espaciales específico. Desde aquí, puede exportar la definición de servicio como un archivo JSON, escribir consultas SQL para seleccionar o insertar entidades en la clase de entidad, o abrir su servicio en ArcGIS.com.

La dirección URL para el directorio de ArcGIS Spatial Data Services es http://<nombre del servidor>/<nombre del servidor de datos espaciales>/rest/services. Por lo tanto, para este ejemplo, la dirección URL es http://pub5:8080/arcgis/rest/services. Observará ambos servicios enumerados.

Utilice ArcGIS Online

Ahora que publicó las clases de entidades en su servidor de datos espaciales, puede verlos desde ArcGIS Online.

Pasos:
  1. Abra un navegador Web y diríjase al sitio Web en ArcGIS Online http://www.arcgis.com/home/index.html.
  2. Haga clic en Iniciar sesión.
  3. Escriba el nombre de usuario y la contraseña de su cuenta global de Esri y haga clic en Iniciar sesión.
  4. Haga clic en Mi contenido.
  5. Agregue el servicio alumni_data.
    1. Haga clic en Agregar elemento.
    2. Elija Un servicio Web de ArcGIS 10.1 for Server en la lista desplegable El punto es.
    3. Escriba la dirección URL para el servicio.

      Para este ejemplo, la dirección URL es http://pub5/arcgis/rest/services/alumni_data.svc.

    4. Escriba un título para el servicio en el cuadro de texto Título.
    5. Escriba las etiquetas para identificar su servicio en el cuadro de texto Etiquetas.
    6. Haga clic en Agregar elemento.

Crear una aplicación Web

Primero, cree un mapa en ArcGIS.com que contenga su servicio y un mapa base del mundo. A continuación, utilice una plantilla de la aplicación de ArcGIS.com para crear una aplicación Web.

Cree un mapa en ArcGIS.com

Agregue su servicio alumni_data a un mapa base en ArcGIS.com y guarde el mapa que va a utilizar para su aplicación.

Pasos:
  1. En la sección Mi contenido de ArcGIS.com, haga clic en Crear mapa.
  2. Haga clic en Mapa base y elija uno de los mapas base.
  3. Haga clic en Agregar > Agregar capas.
  4. Elija Mi contenido desde la lista desplegable En.
  5. Elija el servicio alumni_data y haga clic en Agregar capas terminadas.
  6. Ajuste la extensión del mapa, si es necesario.
  7. Guarde el mapa.
    1. Escriba un título, etiquetas y resumen del mapa.
    2. Elija en qué carpeta guardar el mapa.
    3. Haga clic en Guardar el mapa.
  8. Comparta su mapa públicamente o con grupos específicos.
  9. Observe el Id. de su mapa; utilizará esto al crear una aplicación Web.

Utilice una plantilla para crear una aplicación Web

Ya que la aplicación necesita permitir la edición, utilizará la plantilla Editar la aplicación Web.

Pasos:
  1. Descargue la plantilla Editar la aplicación Web.
  2. Coloque el archivo ZIP descargado en la carpeta inetpub\wwwroot en el servidor IIS.
  3. Extraiga los archivos.
  4. Siga las instrucciones en el archivo readme.html para configurar la aplicación.
9/11/2013