Title: SkenData Email Signatur
Dear Daniel and Jukka,

following your advice I changed my setup as follows:
"""
LAYER
    NAME "TestLayer"
    CONNECTION "<external-url>?"
    EXTENT -47443 5145172 1187852 6158846
    CONNECTIONTYPE WFS
    STATUS ON
    DEBUG 5
    METADATA
      "wfs_typename" "info:dop"
      "wfs_request_method"   "GET"
      "wfs_version"    "1.0.0"
      "wfs_srs" "EPSG:25832"
      "wfs_title"    "dop"
      "wfs_connectiontimeout" "60"
      "wfs_maxfeatures" "500"
      "gml_include_items" "all"
      "gml_featureid"     "ID"

    END # METADATA
    PROJECTION
      "init=epsg:25832"
    END # PROJECTION
    TYPE POLYGON
    CLASS
      NAME "aerial_image_footprint"
      STYLE
        OUTLINECOLOR 255 0 0
        WIDTH 0.7
      END # STYLE
    END # CLASS
  END # LAYER

"""
What shall I say, it does not work. The strange things I am noticing are as follows:
1) If I make a call with a bbox in EPSG: 3857 Mapserver first sends my map-extent as bbox to the external server as EPSG:3857, not using the layers extent that is in EPSG:25832 as is the source server. However , it does not send the srs to the external server:
"""
REQUEST=GetFeature&VERSION=1.0.0&SERVICE=WFS&TYPENAME=info:dop&BBOX=-3161903.14172725,2675231.21277502,4977362.15235668,7973075.36166411&MAXFEATURES=500
"""
2) Besides the wrong srs, since the map extent is used instead of the bbox in my request, I obviously would end up by getting some 500 objects back that may or may not be in my bbox. I verified this by putting the correct srs into the CONNECTION (I think this is deprecated).

Now I also checked the Mapserver Version is 7.4 and I am basing on this repo:
https://github.com/camptocamp/docker-mapserver/tree/7.4
Is this Version too outdated (sorry for not mentioning the version)? I do not have any issues with my other WFS layers based on OGR connection ( I need WFS beyond 1.0.0)

Just in case it matters, the external server I am calling is public so I might as well name it:
"http://sg.geodatenzentrum.de/wfs_info?"
The layer is "info:dop"

Thanks for all your help.

Best
Lars


Am 27.05.21 um 21:36 schrieb Daniel Morissette:
Since you use CONNECTIONTYPE OGR, none of the MapServer WFS Client logic takes place.  Is there any reason why you cannot use CONNECTIONTYPE WFS as documented here:

https://mapserver.org/ogc/wfs_client.html



On 2021-05-27 02:51, Lars Fricke wrote:
Dear All,

as this list is a source of much deeper insight than I have into Mapserver, I would like to ask about a very strange issue I am facing.

I am calling on a public WFS server I can query "by hand" fast and successfully every single time. Now I defined a Mapserver layer (see below) as an OGR layer in my WFS map-file and it does - on the same call - return data. But not reliably, more at random. I played with the connection-timeout and the maxfeatures and it seemed to have some influence but again, not reliably. I'll post the relevant parts of my mapfile (all my other layers with other sources are working fine):
"""
MAP
   NAME "WFS_Test"
   SHAPEPATH "/data"
   STATUS ON
   UNITS METERS
   EXTENT -2851663 2776500 5630523 9970363

   PROJECTION
     "init=epsg:3857"
   END # PROJECTION

   WEB
     FOOTER "TestServer"
     IMAGEPATH "/tmp/"
     TEMPPATH "/tmp/"
     IMAGEURL "/tmp/"
     METADATA
       "wfs_title"          "Test"
       "ows_onlineresource" "http://my_server.de/cgi-bin/mapserv?map=/var/www/html/wfs.map"
       "ows_enable_request"    "*"
       "ows_srs"    "EPSG:3857 EPSG:4326 EPSG:25832"
       "wfs_srs"    "EPSG:3857 EPSG:4326 EPSG:25832"
       "wfs_getfeature_formatlist" "jsonp,ogrgml"
       "wfs_encoding" "UTF-8"
       "wfs_connectiontimeout" "20"
       #"wfs_request_method"   "GET"
     END # METADATA
     VALIDATION
         callback ".*"
     END
   END # WEB

   OUTPUTFORMAT
    NAME "jsonp"
    DRIVER "OGR/GEOJSON"
    MIMETYPE "application/json; subtype=geojson; charset=utf-8"
    FORMATOPTION "STORAGE=stream"
    FORMATOPTION "FORM=SIMPLE"
    FORMATOPTION "LCO:COORDINATE_PRECISION=10"
    FORMATOPTION "JSONP=%callback%"
   END

   OUTPUTFORMAT
    NAME "OGRGML"
    DRIVER "OGR/GML"
    FORMATOPTION "STORAGE=filesystem"
    FORMATOPTION "FORM=multipart"
    FORMATOPTION "FILENAME=result.gml"
   END

   SYMBOL
     NAME "circle_filled"
     TYPE ELLIPSE
     FILLED TRUE
     POINTS
       1 1
     END
   END

   LAYER
     NAME "TestLayer"
     CONNECTION "wfs-request-testlayer.xml"
     EXTENT 84710 5210905 1163008 6125425
     CONNECTIONTYPE OGR
     STATUS ON
     DATA "dop"
     METADATA
       "wfs_version"    "2.0.0"
       "wfs_title"    "TestLayer_WFS"
       "wfs_connectiontimeout" "100"
       "wfs_typename"    "TestLayer_WFS_int"
       "wfs_maxfeatures"       "600"

     END # METADATA
     PROJECTION
       "init=epsg:25832"
     END # PROJECTION
     TYPE POLYGON
     CLASS
       NAME "aerial_image_footprint"
       STYLE
         OUTLINECOLOR 255 0 0
         WIDTH 0.7
       END # STYLE
     END # CLASS
   END # LAYER
"""
I made the xml-file wit ogrinfo as I did for many other layers that work.
The call is:
"""
http://localhost:8181/cgi-bin/mapserv?map=/var/www/html/wfs.map&
SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer
"""
If I replace the Server name with the public server, it works like a breeze (even it is 3857).
The public server has:
"""
<DefaultCRS>urn:ogc:def:crs:EPSG:6.9:25832</DefaultCRS>
<OtherSRS>urn:ogc:def:crs:EPSG:6.9:4326</OtherSRS>
"""

I see the following response in the browser:
"""
<wfs:FeatureCollectionxmlns:ms="http://mapserver.gis.umn.edu/mapserver"xmlns:gml="http://www.opengis.net/gml/3.2"xmlns:wfs="http://www.opengis.net/wfs/2.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://mapserver.gis.umn.edu/mapserver http://wfs/cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=DescribeFeatureType&TYPENAME=DOP_AGE_DE&OUTPUTFORMAT=application%2Fgml%2Bxml%3B%20version%3D3.2 http://www.opengis.net/wfs/2.0 http://schemas.opengis.net/wfs/2.0/wfs.xsd http://www.opengis.net/gml/3.2 http://schemas.opengis.net/gml/3.2.1/gml.xsd"timeStamp="2021-05-27T06:30:38"numberMatched="0"numberReturned="0"></wfs:FeatureCollection>
"""
And in the log:
"""
[warn] [pid 26] mod_fcgid: stderr: msQueryByRect(): Search returned no results. No matching record(s) found.
  [warn] [pid 26] mod_fcgid: stderr: freeLayer(): freeing layer at 0x131f120.
3169463 - 172.17.0.1 - - [27/May/2021:06:30:35 +0000] "GET /cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer HTTP/1.1" 200 793 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36"
330 - 172.17.0.1 - - [27/May/2021:06:30:38 +0000] "GET /favicon.ico HTTP/1.1" 200 414 "http://localhost:8181/cgi-bin/mapserv?map=/var/www/html/wfs.map&SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&SRSNAME=EPSG:3857&BBOX=1292610.86313433,6822730.62911591,1293128.57472490,6823169.70765144&TYPENAME=TestLayer" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36"
"""
I will be grateful for any clue on what is going on. Thank you for your trouble!

Best

Lars
SkenData Email Signatur

_______________________________________________
mapserver-users mailing list
mapserver-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users




_______________________________________________
mapserver-users mailing list
mapserver-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to