[Geoserver-devel] FW: Issue using custom dimensions in WMS GetMap request

We recently upgraded to Geoserver 2.5 from 2.2.4 and discovered our custom dimensions are no longer being recognized in a WMS GetMap request.

i.e. Given an invalid analysis time (dim_analysis_time=INVALID_TIME) should return an error. Instead, the KVP is being ignored.
http://localhost:8080/geoserver/NAVGEM/wms?service=WMS&version=1.3.0&request=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_xml&CRS=CRS%3A84&layers=NAVGEM:global_360x181.air_temp.ht_sfc&bbox=-180.5,-90.5,180.5,90.5&time=2014-09-17T18:00:00.000Z&elevation=2.0&dim_analysis_time=INVALID_TIME&width=660&height=330&format=image/png

I tracked the error down to the WMS.java class in package org.geoserver.wms when it tries to pass down custom dimensions to the readParameters. It seems to be looking for ‘custom_dimension_ANALYSIS_TIME’ in the metadata map instead of ‘custom_dimension_analysis_time’.
Our metadata map is as follows:
{time=DimensionInfoImpl [attribute=null, endAttribute=null, enabled=true, units=null, unitSymbol=null, presentation=LIST, resolution=null], elevation=DimensionInfoImpl [attribute=null, endAttribute=null, enabled=true, units=meter, unitSymbol=m, presentation=LIST, resolution=null], custom_dimension_analysis_time=DimensionInfoImpl [attribute=null, endAttribute=null, enabled=true, units=ISO8601, unitSymbol=null, presentation=LIST, resolution=null]}

Does anyone know of a workaround or fix?

Thanks,
Kristine

On Fri, Sep 19, 2014 at 1:01 AM, Bessette-Halsema, Dominique E <
Dominique.Bessette@anonymised.com> wrote:

We recently upgraded to Geoserver 2.5 from 2.2.4 and discovered our custom
dimensions are no longer being recognized in a WMS GetMap request.

i.e. Given an invalid analysis time (*dim_analysis_time=INVALID_TIME*)
should return an error. Instead, the KVP is being ignored.

http://localhost:8080/geoserver/NAVGEM/wms?service=WMS&version=1.3.0&request=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_xml&CRS=CRS%3A84&layers=NAVGEM:global_360x181.air_temp.ht_sfc&bbox=-180.5,-90.5,180.5,90.5&time=2014-09-17T18:00:00.000Z&elevation=2.0&
*dim_analysis_time=INVALID_TIME*&width=660&height=330&format=image/png
<http://localhost:8080/geoserver/NAVGEM/wms?service=WMS&version=1.3.0&request=GetMap&EXCEPTIONS=application%2Fvnd.ogc.se_xml&CRS=CRS%3A84&layers=NAVGEM:global_360x181.air_temp.ht_sfc&bbox=-180.5,-90.5,180.5,90.5&time=2014-09-17T18:00:00.000Z&elevation=2.0&dim_analysis_time=INVALID_TIME&width=660&height=330&format=image/png&gt;

I tracked the error down to the WMS.java class in package org.geoserver.wms
when it tries to pass down custom dimensions to the readParameters. It
seems to be looking for 'custom_dimension_ANALYSIS_TIME' in the metadata
map instead of 'custom_dimension_analysis_time'.
Our metadata map is as follows:
    {time=DimensionInfoImpl [attribute=null, endAttribute=null,
enabled=true, units=null, unitSymbol=null, presentation=LIST,
resolution=null], elevation=DimensionInfoImpl [attribute=null,
endAttribute=null, enabled=true, units=meter, unitSymbol=m,
presentation=LIST, resolution=null],
custom_dimension_analysis_time=DimensionInfoImpl [attribute=null,
endAttribute=null, enabled=true, units=ISO8601, unitSymbol=null,
presentation=LIST, resolution=null]}

Does anyone know of a workaround or fix?

I believe a fix will be needed, can you open a ticket on
http://jira.codehaus.org/browse/GEOS?
A pull request with a fix and a test would also be welcomed

Cheers
Andrea

--

GeoServer Professional Services from the experts! Visit
http://goo.gl/NWWaa2 for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

-------------------------------------------------------