Am trying to expose a vector layer (loaded from shape file into PostGIS) as a WFS layer using tinyows.
Following the instructions in the mapserver/tinyows documentation, here is the .map file I have come up with so far: MAP NAME "world" CONFIG "MS_ERRORFILE" "/home/balajeerc/Projects/Build_Dir/myproject/data/logs/mapservice_errors.log" EXTENT -180.000 -90.000 180.000 90.000 WEB METADATA "tinyows_schema_dir" "/home/balajeerc/Projects/Build_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" "supp...@giscompany.com" "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" "MyCompany" "ows_contactelectronicmailaddress" "cont...@giscompany.com" "ows_contactperson" "Balajee.R.C" 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' 'world_boundaries' 'tinyows_writable' '1' 'tinyows_retrievable' '1' END CLASS STYLE COLOR 128 128 128 ANTIALIAS true END END PROJECTION "init=epsg:4326" END DUMP TRUE END END This .map file works fine with mapserver, i.e. I am able to render the feature layer as a WMS service using QGIS as a client. However, the WFS service (served by tinyows) using the same file (set using `TINYOWS_MAPFILE` environment variable seems to show no layers in GetCapabilities (and hence QGIS is not able to load any). The output from `tinyows --check` is as follows: balajeerc@Balajee:~/Projects/tinyows-1.1.1$ ./tinyows --check TinyOWS version: 1.1.0 FCGI support: Yes Config File Path: /home/balajeerc/Projects/Build_Dir/myproject/data/service_data/data/wfs/world.map (Mapfile) PostGIS Version: 2.1.8 PostGIS dsn: host=localhost user=mygis password=asdf123 dbname=mygis port=19095 Output Encoding: UTF-8 Database Encoding: UTF8 Schema dir: /home/balajeerc/Projects/Build_Dir/myproject/deps/mygis-services-0.1/data/schema Display bbox: Yes Estimated extent: No Check schema: Yes Check valid geoms: Yes Available layers: balajeerc@Balajee:~/Projects/tinyows-1.1.1$ Note that even though I am using a 1.1.1 version of tinyows, it prints tinyows version as 1.1.0. Also note that it prints no layers. Wondering what is going wrong, I decided to step into the code. I recompiled code after turning off (`-O2`) optimizations and with debugging (`-g`) enabled. I am only able to get so far as the `ows_parse_config` method in `src/ows/ows_config.c`. I am, for some reason not able to step into `ows_parse_config_map` in `src/mapfile/mapfile.c`. This probably has something to do with the fact that `mapfile.c` is generated by flex using `src/map/mapfile.l`. At this point I am completely stuck and at a brick wall as to what might be going wrong. Can someone here please help? TinyOWS version: 1.1.1 (Release <https://github.com/mapserver/tinyows/releases/tag/v.1.1.1>) Regards, Balajee.R.C
_______________________________________________ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users