Suite

Pas de couches lors de la configuration de TinyOWS avec MapServer

Pas de couches lors de la configuration de TinyOWS avec MapServer


J'essaie d'exposer une couche vectorielle (chargée à partir d'un fichier de formes dans PostGIS) en tant que couche WFS à l'aide de TinyOWS.

En suivant les instructions de la documentation mapserver/tinyows, voici le fichier .map que j'ai créé jusqu'à présent :

NOM DE LA CARTE "world" CONFIG "MS_ERRORFILE" "/home/balajeerc/Projects/Build_Dir/myproject/data/logs/mapservice_errors.log" EXTENT -180.000 -90.000 180.000 90.000 MÉTADONNÉES WEB "tinyows_schema_dir" "/home/balajeerc_Dir /myproject/deps/mygis-services-0.1/data/schema" "tinyows_onlineresource" "http://192.168.43.164:19090/vectors/world/wfs?" "wfs_title" "MyGIS Feature Service: World" "wfs_contact" "[email protected]" "wms_title" "MyGIS Feature Service: World" "wms_srs" "epsg:4326" "wms_enable_request" "*" "log_level" "15" "log" "/home/balajeerc/Projects/Build_Dir/myproject/deps/mygis-services-0.1/data/logs/wfs_world.log" "ows_contactorganization" "GeorbisServer" "ows_contactelectronicmailaddress" "[email protected]" "ows_contactperson" "Balajee.RC" END END PROJECTION "init=epsg:4326" END LAYER NAME 'world_boundaries' CONNECTIONTYPE postgis CONNECTION "host=localhost user=mygis password=asdf123 dbname=mygis port=19095" DATA "geom from world_boundaries" TYPE POLYGON METADATA 'wfs_title"world_boundaries"wfs_namespace_prefix"tows"wfs_namespace_uri"http://www.giscompany.com/"wfs_srs"epsg:4326"wms_srs"epsg:4326"wms_title"world_boundaries"tinyows_table"tiny1"owworld_boundaries" END CLASS STYLE COULEUR 128 128 128 ANTIALIAS true END END PROJECTION "init=epsg:4326" END DUMP TRUE END END

Ce fichier .map fonctionne bien avec MapServer, c'est-à-dire que je suis capable de rendre la couche d'entités en tant que service WMS en utilisant QGIS en tant que client.

Cependant, le service WFS (servi par tinyows) utilisant le même fichier (défini en utilisantTINYOWS_MAPFILELa variable d'environnement ne semble afficher aucune couche dans GetCapabilities (et par conséquent, QGIS n'est pas en mesure d'en charger).

La sortie deminuscules --vérifierest comme suit:

[email protected]:~/Projects/tinyows-1.1.1$ ./tinyows --check TinyOWS version : 1.1.0 Support FCGI : Oui Chemin du fichier de configuration : /home/balajeerc/Projects/Build_Dir/myproject/data/service_data/data /wfs/world.map (Mapfile) Version de PostGIS : 2.1.8 PostGIS dsn : host=localhost user=mygis password=asdf123 dbname=mygis port=19095 Encodage de sortie : UTF-8 Encodage de base de données : UTF8 Dir de schéma : /home/balajeerc /Projects/Build_Dir/myproject/deps/mygis-services-0.1/data/schema Afficher la bbox : Oui Etendue estimée : Non Vérifier le schéma : Oui Vérifier les geoms valides : Oui Couches disponibles : [email protected]:~/Projects/tinyows-1.1. 1$

Notez que même si j'utilise une version 1.1.1 de TinyOWS, il imprime la version TinyOWS en tant que 1.1.0. Notez également qu'il n'imprime pas de calques.

Me demandant ce qui ne va pas, j'ai décidé d'entrer dans le code. J'ai recompilé le code après avoir éteint (-O2) optimisations et avec débogage (-g) activée.

Je ne peux aller aussi loin que leows_parse_configméthode danssrc/ows/ows_config.c. Je suis, pour une raison quelconque, incapable d'entrer dansows_parse_config_mapdanssrc/mapfile/mapfile.c. Cela a probablement quelque chose à voir avec le fait quemapfile.cest généré par flex en utilisantsrc/map/mapfile.l.

À ce stade, je suis complètement coincé et devant un mur de briques quant à ce qui pourrait ne pas aller. Quelqu'un ici peut-il aider?


Je vois que vous avez activé WMS avec cette déclaration :

"wms_enable_request" "*"

Mais où est la déclaration comparable pour WFS ?

"wfs_enable_request" "*"

Cela a probablement une influence sur le fait que votre WFS ne fonctionne pas


Voir la vidéo: MapServer, QGIS, OpenLayers