| If you run the following script: {{<script language="_javascript_"> console.log("CreateStoredQuery"); function CreateStoredQuery() { var data = '' +' xmlns="http://www.opengis.net/wfs/2.0"' + ' xmlns:wfs="http://www.opengis.net/wfs/2.0"' + ' xmlns:fes="http://www.opengis.org/fes/2.0"' + ' xmlns:ows="http://www.opengis.net/ows/1.1"' + ' xmlns:xsd="http://www.w3.org/2001/XMLSchema">' + '<wfs:StoredQueryDefinition id="test">' + '<wfs:Parameter name="gemarkungsname" type="xsd:string"/>' + '<wfs:Parameter name="fln" type="xsd:string"/>' + '<wfs:Parameter name="fsn_zae" type="xsd:string"/>' + '<wfs:Parameter name="fsn_nen" type="xsd:string"/>' + '<wfs:QueryExpressionText returnFeatureTypes="KRE_ALKIS:sg_flurstueck_f" language="urn:ogc:def:queryLanguage:OGC-WFS::WFS_QueryExpression" isPrivate="false">' + '<wfs:Query typeNames="KRE_ALKIS:sg_flurstueck_f">' + '<fes:Filter>' + '<fes:And>' + '<fes:PropertyIsEqualTo>' + '<fes:PropertyName><fes:ValueReference>gemarkungsname</fes:ValueReference></fes:PropertyName>' + '<fes:Literal>$ {gemarkungsname}</fes:Literal>' + '</fes:PropertyIsEqualTo>' + '<fes:PropertyIsEqualTo>' + '<fes:PropertyName><fes:ValueReference>fln</fes:ValueReference></fes:PropertyName>' + '<fes:Literal>${fln}</fes:Literal>' + '</fes:PropertyIsEqualTo>' + '<fes:PropertyIsEqualTo>' + '<fes:PropertyName><fes:ValueReference>fsn_zae</fes:ValueReference></fes:PropertyName>' + '<fes:Literal>${fsn_zae}</fes:Literal>' + '</fes:PropertyIsEqualTo>' + '<fes:PropertyIsEqualTo>' + '<fes:PropertyName><fes:ValueReference>fsn_nen</fes:ValueReference></fes:PropertyName>' + '<fes:Literal>${fsn_nen}</fes:Literal>' + '</fes:PropertyIsEqualTo>' + '</fes:And>' + '</fes:Filter>' + '</wfs:Query>' + '</wfs:QueryExpressionText>' + '</wfs:StoredQueryDefinition>' + '</wfs:CreateStoredQuery>'; console.log(data); var CreateStoredQueryRequest = $.ajax({type: 'POST', url: 'http://172.16.206.128:8080/geoserver/KRE_ALKIS/wfs?', data: data, contentType: "text/xml", dataType: "text", error: function (xhr, ajaxOptions, thrownError) { console.log(xhr.status + " - CreateStoredQuery"); console.log(thrownError + " - CreateStoredQuery"); } }); CreateStoredQueryRequest.done(function (msg) { console.log(msg); }); CreateStoredQueryRequest.fail(function (jqXHR, textStatus) { console.log("Request failed: " + textStatus); }); } </script> }} GeoServer produces a stored query like: {{ <?xml version="1.0" encoding="UTF-8"?><wfs:StoredQueryDescription xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fes="http://www.opengis.net/fes/2.0" xmlns:wfs="http://www.opengis.net/wfs/2.0" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" id="test"> <wfs:Parameter name="gemarkungsname" type="xs:string"/> <wfs:QueryExpressionText isPrivate="false" language="urn:ogc:def:queryLanguage:OGC-WFS::WFS_QueryExpression" returnFeatureTypes="KRE_ALKIS:sg_flurstueck_f"> <wfs:Query wfs:typeNames="KRE_ALKIS:sg_flurstueck_f"> <null:Filter xmlns:null="http://www.opengis.org/fes/2.0"> <null:PropertyIsEqualTo>${gemarkungsname} <null:ValueReference>gemarkungsname</fes:ValueReference> </fes:PropertyIsEqualTo> </fes:Filter> </wfs:Query> </wfs:QueryExpressionText> </wfs:StoredQueryDescription> }} changing the null to fes fixes the problem. Possibly related to https://osgeo-org.atlassian.net/browse/GEOT-6479 |