Open jandm opened 9 years ago
Thanks for the finding. The endpoint URL given above contains KVP encoding of the DescribeFeatureType operation according to Web Feature Service Implementation Specification, Version: 1.1.0 here HTTP header encoding is not given.
But I can confirm that sending a HTTP POST/XML encoded DescribeFeatureType request to http://demo.deegree.org/utah-workspace/services/wfs with POST body:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:DescribeFeatureType xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:app="http://www.deegree.org/app"
xmlns:ogc="http://www.opengis.net/ogc" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ows="http://www.opengis.net/ows"
xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml"
handle="GeoTools 13.0(3e400364d95c06a3e449c34dbc3c587a12bbdfb6) WFS 1.1.0 DataStore @jandm-Latitude-E6530#1"
outputFormat="text/xml; subtype=gml/3.1.1"
service="WFS" version="1.1.0">
<wfs:TypeName>app:Airports</wfs:TypeName>
</wfs:DescribeFeatureType>
results into a HTTP response with HTTP header:
Content-Type: application/gml+xml;version=3.1
Can you please describe the issue on the client side a little bit more so that we can understand what the impact on the client side is.
The client parses the response by iterating over a list of registered parser factories and asking them if they can handle the response. The decision is primarily made by looking at the returned output format. It appears there are a lot of equivalent format headers out there, so it would be best if the server returns the exact format that the client has asked for (and which is in the supported list of the server). An alternative would be to blindly trust the server, but then one would still have to deal with exception message format in a separate way (while now it's completely agnostic).
OK, thanks. This issue effects Deegree-Version: 3.3.14 and higher. Thus is requires a patch for 3.3 and 3.4.
i am trying to connect the next-generation WFS client module of Geotools (version 13.0) to the demo Deegree server over here:
http://demo.deegree.org/utah-workspace/services/wfs
I am sending the following POST request:
http://demo.deegree.org/utah-workspace/services/wfs?REQUEST=DescribeFeatureType&VERSION=1.1.0&SERVICE=WFS
with body containing requested output format 'text/xml; subtype=gml/3.1.1' :
<?xml version="1.0" encoding="UTF-8"?> <wfs:DescribeFeatureType xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:app="http://www.deegree.org/app" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ows="http://www.opengis.net/ows" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" handle="GeoTools 13.0(3e400364d95c06a3e449c34dbc3c587a12bbdfb6) WFS 1.1.0 DataStore @jandm-Latitude-E6530#1" outputFormat="text/xml; subtype=gml/3.1.1" service="WFS" version="1.1.0"> wfs:TypeNameapp:Airports/wfs:TypeName /wfs:DescribeFeatureType
but the server returns content type: 'application/gml+xml;version=3.1'