[MapServer-users] Call to StoredQuery successful as GET, but fails as POST request

Froehlich, Dominik Dominik.Froehlich at stadt.freiburg.de
Fri Oct 6 07:45:08 PDT 2023


Dear *


I'm stuck for some time experiencing a strange behavoiur with WFS POST requests to stored querys on our mapserver (v.8.0.1/ubuntu 22.04) and can't seem to find anythin helpful in the logs or on the web. The server is public, so you can see for yourselves. To describe the issue I'll stick to our address service providing the addresses in Freiburg im Breisgau, Southwest Germany.

https://geoportal.freiburg.de/wfs/gdm_address/gdm_address?SERVICE=WFS&VERSION=2.0.0&REQUEST=GetCapabilities

The service is supposed to answer both GET and POST requests. This does work just fine for "normal" GetFeature requests. However, there seems to be an issue with stored queries. E.g. we set up some stored query for searching addresses taking a street name and a house number as an argument. It can be easily queried by calling e.g.

https://geoportal.freiburg.de/wfs/gdm_address/gdm_address?SERVICE=WFS&version=2.0.0&REQUEST=GetFeature&StoredQuery_ID=findeStrasseHnr&strassenname=fehren&hausnummer=12

wheras "strassenname" is the street name and "hausnummer" the house number.
The GET call will return one matching feature as expected.


The same request as POST to https://geoportal.freiburg.de/wfs/gdm_address/gdm_address

<GetFeature xmlns="http://www.opengis.net/wfs" service="WFS" version="2.0.0" maxFeatures="3" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <StoredQuery id="findeStrasseHnr" xmlns="http://www.opengis.net/wfs" typeName="ms:addresses" srsName="urn:ogc:def:crs:EPSG::25832" xmlns:ms="http://mapserver.gis.umn.edu/mapserver">
        <Parameter name="strassenname">fehren</Parameter>
        <Parameter name="hausnummer">12</Parameter>
    </StoredQuery>
</GetFeature>

however will only return

<?xml version='1.0' encoding="UTF-8" ?>
<wfs:FeatureCollection
   xmlns: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 https://geoportal.freiburg.de/wfs/gdm_address/gdm_address?SERVICE=WFS&VERSION=2.0.0&REQUEST=DescribeFeatureType&TYPENAME=ms:addresses&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="2023-10-05T16:10:00" numberMatched="unknown" numberReturned="0">
</wfs:FeatureCollection>


Strange enough, it will also log some weired error at DEBUG 5:

[Fri Oct  6 14:59:29 2023].546904 msWFSParseRequest(): WFS post request: <GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS" version="2.0.0" maxFeatures="200" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsdhttp://www.opengis.net/wfs%20http:/schemas.opengis.net/wfs/1.1.0/wfs.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><StoredQuery id="findeStrasseHnr" xmlns="http://www.opengis.net/wfs" typeName="ms:addresses" srsName="EPSG::25832"><Parameter name="strassenname">fehren</Parameter><Parameter name="hausnummer">12</Parameter></StoredQuery></GetFeature>
[Fri Oct  6 14:59:29 2023].622878 FLTLayerApplyPlainFilterToLayer(): (("[strassenname]" ~* "^.*feh.*$") AND (([hausnummer] =* 12) AND ("[hausnummernzusatz]" = ""))), rect=399550,5305350,420740,5325690
[Fri Oct  6 14:59:29 2023].689509 msPostGISLayerTranslateFilter(): General error message. Translation to native SQL failed.
[Fri Oct  6 14:59:30 2023].110714 msQueryByFilter(): No matching record(s) found.[Fri Oct  6 14:59:30 2023].110799 mapserv request processing time (msLoadMap not incl.): 0.564s


The stored query itself is defined as

<?xml version="1.0" encoding="UTF-8"?>

<StoredQueryDescription xmlns:xs="https://www.w3.org/2001/XMLSchema"
                        xmlns:gml="https://www.opengis.net/gml/3.2"
                        id="search_street_nr">

    <Title>Straßen- und Hausnummernsuche</Title>
    <Abstract>Suche nach einem Straßenname und einer Hausnummer im Adress-WFS</Abstract>

    <Parameter name="strassenname" type="string"/>
    <Parameter name="hausnummer" type="string"/>

    <QueryExpressionText isPrivate="false"
                        language="urn:ogc:def:queryLanguage:OGC-WFS::WFS_QueryExpression"
                        xmlns:ms="https://geoportal.freiburg.de/wfs/gdm_address/gdm_address_gaz"
                        returnFeatureTypes="ms:addresses">
        <Query
            xmlns:ogc="https://www.opengis.net/ogc"
            typeNames="ms:addresses">

            <ogc:Filter>

            <ogc:AND>

                <ogc:PropertyIsLike matchCase="false" wildCard="*" singleChar="?" escape="\">
                    <ogc:ValueReference>ms:strassenname</ogc:ValueReference>
                    <Literal>*${strassenname}*</Literal>
                </ogc:PropertyIsLike>

                <ogc:PropertyIsEqualTo matchCase="false" wildCard="*" singleChar="?" escape="\">
                    <ogc:ValueReference>ms:hausnummer</ogc:ValueReference>
                    <Literal>${hausnummer}</Literal>
                </ogc:PropertyIsEqualTo>

                <ogc:PropertyIsEqualTo matchCase="false">
                    <ogc:ValueReference>ms:hausnummernzusatz</ogc:ValueReference>
                    <Literal></Literal>
                </ogc:PropertyIsEqualTo>

            </ogc:AND>

            </ogc:Filter>

            <ogc:sortBy>
                <ogc:SortProperty>
                    <ogc:ValueReference>ms:hausnummer</ogc:ValueReference>
                    <ogc:SortOrder>ASC</ogc:SortOrder>
                </ogc:SortProperty>
            </ogc:sortBy>

        </Query>
    </QueryExpressionText>

</StoredQueryDescription>


Am I missing something here or do you have any suggestions for me? I'm grateful for any insights! Please also let me know if you need more details on something else.

Best,

Dominik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20231006/41142ede/attachment.htm>


More information about the MapServer-users mailing list