Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 1.6.4
-
Fix Version/s: None
-
Component/s: WFS
-
Labels:None
-
Number of attachments :
Description
If GeoServer supports WFS 1.1 then it should support the filters used in a GetFeature request to be 1.1 filters, not only 1.0 ones.
Yet, the FilterKvpParser uses the org.geotools.filter.v1_0.OGCConfiguration configuration for the parser, failing with filters encoded in 1.1.
Sample request
http://localhost:8080/geoserver/wfs?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetFeature&TYPENAME=topp:states&PROPERTYNAME=the_geom&SRSNAME=EPSG:4326&filter=<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"><ogc:Intersects><ogc:PropertyName>the_geom</ogc:PropertyName><gml:Polygon><gml:exterior><gml:LinearRing><gml:posList>-112.6881725003984 46.21546542390438 -109.77324582151394 46.21546542390438 -109.77324582151394 47.59622016653386 -112.6881725003984 47.59622016653386 -112.6881725003984 46.21546542390438</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon></ogc:Intersects></ogc:Filter>
Produces the following exception:
org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:exterior. HINT: tags are case-sensitive! Attempted to construct illegal filter - I dont understand the tag: gml:exterior. HINT: tags are case-sensitive!
Simply changing the configuration to org.geotools.filter.v1_1.OGCConfiguration fixes the issue for this particular case, though I'm not sure if it'll work for all cases.
May be when the request is a 1.0 one we should use the 1.0 parser and when the request version is 1.1 the filter 1.1 configuration?
Issue Links
| This issue is duplicated by: | ||||
| GEOS-2559 | Re: GEOS2028 does does not seem to be fixed in 1.7.1 |
|
|
|
This should be simple enough to do by attaching a version to the current FilterKvpParser and having it use the appropriate configuration for the version. We will also have to break out a third parser for wms requests, and that begs the question of which version to use...although i should not matter much.