Update Dispatcher.findService to deal with multiple acceptVersion parameters

Description

The OWS 1.1 negotiation protocol states the service should use the first version supported among the one supplied in the acceptVersions list (not the biggest one of the ones provided).
The dispatcher should be updated to handle this as well.
There is no urgency now anyways, this may hit only a wcs client stating acceptsVersions=1.0.0,1.1.1 (that is, I prefer 1.0.0 but can talk 1.1.1 as well) which is quite unlikely.

Environment

None

Activity

Show:
codehaus
April 10, 2015, 4:16 PM

CodeHaus Comment From: jratike80 - Time: Sun, 8 Feb 2015 12:13:21 -0600
---------------------
<p>Is this a correct way to test the behaviour:</p>

<p><a href="http://localhost:8080/geoserver/ows?service=wms&amp;request=GetCapabilities&amp;AcceptVersions=1.1.1,1.3.0" class="external-link" rel="nofollow">http://localhost:8080/geoserver/ows?service=wms&amp;request=GetCapabilities&amp;AcceptVersions=1.1.1,1.3.0</a></p>

<p>For me it seems that AcceptVersion does not have any effect at all. For example AcceptVersions=4.0 should return an Exception with exceptionCode="VersionNegotiationFailed".</p>

<p>The OWS 1.1.0 document is

<a href="http://portal.opengeospatial.org/files/?artifact_id=20040" class="external-link" rel="nofollow">http://portal.opengeospatial.org/files/?artifact_id=20040</a></p>

codehaus
April 10, 2015, 4:16 PM

CodeHaus Comment From: aaime - Time: Sun, 8 Feb 2015 14:06:46 -0600
---------------------
<p>Indeed it's not handled properly right now. I have the work on the more general issue of figuring out the right version to use started here, but it does not yet check acceptVersion, that's one thing I want to add: <a href="https://github.com/geoserver/geoserver/pull/574/files" class="external-link" rel="nofollow">https://github.com/geoserver/geoserver/pull/574/files</a></p>

<p>Given the change touches the most core bit of GeoServer, the class that acts as the entry point for each and every OGC request, I'll try to resume that work on the new master series. To be honest, I've tried to get variants of that one for a few years now, but each time the work to complete it is too much for my spare time...</p>

Assignee

Unassigned

Reporter

codehaus

Triage

None

Fix versions

None

Affects versions

Priority

Medium
Configure