29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propio juego de datos From OSGeo Wiki Unos de los problemas principales en e n la publicacin de datos geoespaciale geoespacialess en la web es la dificu di ficultad ltad que que lleva la con c onfig figu uracin de los servidores de mapas. mapas.
Contents 1 Buscar Buscar los datos 1.1 MapServer Itasca Demo Application 2 Instalar la extensin de publicacin para la web de gvSIG 3 Crear el servicio WMS 3.1 Comprobar Comprobar el servicio creado 3.1.1 Cdigo de ejemplo 3.1.2 Comprobar la página web con el mapa 3.1.3 Todo lo que q ue hay que que notar en e n nuestro nuestro cdigo cdi go 3.1.3.1 El cdigo JavaScript personaliz per sonalizado ado 4 Crear el servicio WFS 4.1 Comprobar Comprobar el servicio WF WFS S 5 Autores 6 Licencia 7 Referencias 8 Duracin
Buscar los datos Si no se tiene un juego de datos propios se pueden utilizar algunos de los datos disponibles con licencia Libre que se encuentran en la red.
MapSerer Itasca Demo D emo Application Application Para comenzar necesitaremos el juego de datos libres Iaca. Tenemos una detallada explicacin de dnde encontrarlo y cmo configurarlo en la leccin Instalacin de MS4W.
Instalar la extensin de publicacin para la web de gvSIG Desde la página de Extensiones Extensiones (http:// (http://ww www.gvsig.gva.es/i w.gvsig.gva.es/index ndex.php?id=1803&L .php?id=1803&L=0) =0) de gvSIG gvSIG podemos Exte nsin de de pu publ blicacin icacin. descargar la Extensin La página de descarga es la siguiente: osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
1/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
http://www.gvsig.gva.es/index.php?id=2010&L=0 El fichero en binario que instalamos para esta demostracin es: http://downloads.gvsig.org/gva/descargas/ficheros/Extensiones/gvsig-1_1_x-publishing-BN14windows-i586.exe También está disponible un manual para la extensin: http://downloads.gvsig.org/gva/descargas/manuales/gvsig-1_1_x-publishing-man-v1-es.pdf.pdf El manual describe muy bien el proceso de instalacin. Una vez instalado podemos lanzar gvSIG y proseguir con la leccin.
Crear el sericio WMS Antes que nada hay que crear una vista nueva con gvSIG y la llamaremos
Itasca.
Crear una vista nueva con gvSIG
Entre las propiedades de la vista hay que definir su proyeccin y nosotros vamos a escoger la proyeccin de nuestro juego de datos que, en el caso de Itasca, es EPG:26915 .
osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
2/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
Definicin de la proyeccin de nuestra vista
Una vez creada la vista podemos añadir nuestros datos desde la carpeta: C:\MS4W\apps\mapserv-demo\data\
Iremos escogiendo las siguientes capas: ctrdln3.shp dlgstln2.shp lakesp2.shp mcdrdln3.shp
gvSIG visualizará todos los ficheros dándole unos estilos por defecto.
gvSIG visualizando los datos de Itasca
Con el botn derecho sobre el nombre de la capa desde la leyenda es posible seleccionar las preferencias y definir un estilo personalizado para nuestras capas. En este caso hemos seleccionado la capa de los lagos y definido un estilo en intervalos.
Creando un estilo de visualizacin con gvSIG osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
3/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
Una vez guardada la vista de gvSIG podemos volver a la ventana del Gestor de proyectos y seleccionar la herramienta de Publicacin. Se puede ver en la siguiente imagen como el estilo que hemos creado antes se aplica al mapa.
Visualizando la herramienta de publicación y el mapa con el nuevo estilo de visualización
Creando una nueva Publicacin somos guiados paso a paso en el proceso de publicación en la web mediante un asistente. El primer paso es seleccionar el servidor que tenemos disponible. En nuestro caso es un servidor UMN Mapserver versión 5.
Definiendo la ubicación de UMN Mapserver
En segundo lugar hay que definir el lugar en el que guardar el fichero de configuración ( mapfile). En nuestro caso un lugar til puede ser: C:\ms4\apps\mapser-demo\itasca-ms.map
Definiendo la ubicación del mapfile para nuestro servicio
Otra pregunta importante cuando se configure un servicio en la red es a propósito de los metadatos WMS. osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
4/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
OGC define los metadatos de los servicios para que quien utilice nuestro servidor tenga una idea adecuada de los datos que se acercan a descargar. Es importante por eso describir bien los metadatos.
Definiendo los Metadatos del servicio WMS
Un paso importante es escoger las capas, disponibles en nuestra ia, que vamos a querer visualizar. Seleccionamos las 4 que hemos cargado.
Seleccionando las capas a publicar
Ya estamos acabando, pulsando el botn pblica , esperamos el mensaje de confirmacin.
El mapfile ha sido guardado en el lugar requerido y el servicio WMS está disponible
El ultimo paso que tenemos que dar es editar a mano el Mapfile y añadir la proyeccin geografica EPSG:4326 (LAT/LONG) a las ofrecida por nuestro servidor WMS. En la linea 25 de nuestro Mafile cambiamos: "ms_srs" " EPSG:26915"
con osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
5/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi "wms_srs" " EPSG:26915
EPSG:4326"
Este cambio hace que Mapserver pueda servir nuestros datos en dos diferente sistemas de proyeccin. Es el Mapserver mismo que se encarga de re-proyectar los datos.
Comprobar el servicio creado Como en la leccin Openlayers: configuracin mínima con biblioteca en remoto hemos visto cmo crear una pagina web que enseñe nuestros contenidos ahora podemos hacerlo con nuestro nuevo servicio WMS.
Cdigo de ejemplo para crear la página web necesitamos crear un nuevo fichero con un editor de texto sencillo. este fichero lo llamaremos: C:\ms4w\apps\mapserv-demo\ol-itasca-wms.html
luego hay que poner el siguiente texto en ella: <script src="http://www.openlayers.org/api/OpenLayers.js"> <script type="text/javascript"> var map, layer; function init(){ map = new OpenLayers.Map( 'map',{ maxExtent: new OpenLayers.Bounds(-94.428,47.0169,-93.0557,47.9017), maxResolution: 'auto',} ); layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", "http://localhost:9000/cgi-bin/mapserv.exe?map=/ms4w/apps/mapserv-demo/itasca-wms.map", {layers: 'ctyrd
map.addLayers([layer]); map.zoomToMaxExtent(); }
Ejemplo de WMS El uso básico de OpenLayers con una capa WMS
más texto aqu
Comprobar la página web con el mapa Una vez guardada la página web con el cdigo anterior podemos comprobar con nuestro navegador web osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
6/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
(p.ej. Mozilla Firefox, Internet Explorer, etc.) si la página responde como esperamos: http://localhost:9000/mapserv-demo/ol-itasca-wms.html Este es el resultado:
Publicacin de nuestro servicio WMS
Todo lo que hay que notar en nuestro cdigo El cdigo que hemos utilizado es sencillo pero hay que estar muy atentos a que lo que escriba sea exacto y tenga sentido. El cdigo JavaScript personalizado
Podemos notar como la creacin del objeto map es muy sencilla porque no tenemos que definir la unidad de medida ni la proyeccin porque nuestro servicio es en EPSG:4326 que es la usada por defecto en OpenLayers. La definicin de la Extent es en coordenadas geográficas (-94.428,47.0169,-93.0557,47.9017) y non en EPSG:26915 NAD83/UTMzone15N (378107,5193120,510896,5320243) que es la proyeccin originaria de los datos. Además hay que notar como en la creacin del objeto layer la direcin del servidor y el listado de las capas coinciden con las que hemos creado antes. map = new OpenLayers.Map( 'map',{ maxExtent: new OpenLayers.Bounds(-94.428,47.0169,-93.0557,47.9017), maxResolution: 'auto', ); layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", "http://localhost:9000/cgi-bin/mapserv.exe?map=/ms4w/apps/mapserv-demo/ itasca-wms.map", {layers: 'ctyrdln3.shp,dlgstln2.shp,lakespy2.shp,mcdrdln3.shp' ); );
Crear el servicio WFS Para un funcin que normalmente requiere meterle mano al texto contenido en el mapfile, gvSIG nos ayuda una vez más. El procedimiento es prácticamente igual al que seguimos para crear el servicio WMS. Se crea una nueva publicacin desde la ventana del gestor de proyectos. El asistente nos pregunta qué servidor utilizar y qué servicio crear. El servicio seleccionado por defecto es osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
7/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
el WMS pero también podemos escoger el WFS, que es precisamente lo que vamos a hacer.
Seleccionando el servidor y el servicio WFS
En el paso siguiente tenemos que decir dnde queremos guardar el mafile. En nuetro caso: C:\ms4\apps\mapser-demo\itasca-test-fs.map
Especificando la ubicacin del mafile
Ahora nos toca otra vez definir los metadatos para este recurso. Hay que poner atencin sobre el hecho de que un servicio sin buena descripcin no es un buen servicio.
Definiendo los metadatos del servicio WFS
En la seleccin de capas vamos poniendo todos las capas que nuestra vista ofrece.
osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
8/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
Añadiendo las capas al servicio WFS
Ahora sólo queda el ltimo paso y gvSIG nos dirá si todo ha ido correctamente.
Mensaje de confirmación de que el servicio WFS se ha creado
El ultimo paso que tenemos que realizar es editar a mano el Mapfile, modificar PROJECTION "ini=epg:26915"
por PROJECTION "ini=epg:4326"
Comprobar el sericio WFS Para comprobar si todo ha ido bien podemos pedir el
GeCapabiliie
de nuestro servicio:
http://localhost:9000/cgi-bin/mapserv.exe?map=C%3A%5Cms4w%5Capps%5Cmapservdemo%5Citasca-test-wfs.map&request=getCapabilities&service=WFS Echad un vistazo un momento al código XML resultante de nuestra llamada. Los metadatos que describen el contenido deberían describir no sólo el juego de datos sino también cada capa por separado.
osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
9/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
El output del GetCapabilities
Otro test posible es el pedido de una Feature con la dirección: http://localhost:9000/cgi-bin/mapserv.exe?map=C%3A%5Cms4w%5Capps%5Cmapservdemo%5Citasca-testwfs.map&typename=lakespy2.shp&maxfeatures=200&SERVICE=WFS&VERSION=1.0.0&REQUEST el codigo resultante es el listado de todas las geometrias disponibles por esta capa limitando el output a 200 features (maxfeatures).
Autores Lorenzo Becchi Jorge Gaspar Sanz Salinas
Licencia la licencia por este articulo es: Creative Commons Attribution 3.0 License (http://creativecommons.org/licenses/by/3.0/deed.es ). esta licencia permite: copiar, distribuir y comunicar pblicamente la obra hacer obras derivadas bajo estas condiciones: Reconocimiento. Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador (pero no de una manera que sugiera que tiene su apoyo o apoyan el uso que hace de su obra). Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor Nada en esta licencia menoscaba o restringe los derechos morales del autor.
Referencias
Duracin osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
10/11
29/12/11
Crear servicios WMS y WFS con MS4W y gvSIG utilizando nuestro propi
Por esta clase se evala una duración de X oras Retrieved from "http://wiki.osgeo.org/wiki/Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_utilizando_nuestro_propi Categories: Education | Cursos This page was last modified on 17 October 2009, at 22:29. Content is available under the Creative Commons Attribution-ShareAlike License.
osgeo.org//Crear_servicios_WMS_y_WFS_con_MS4W_y_gvSIG_uti
11/11