[Geoserver-devel] Failure to resample coverage in 1.5.0-beta2 WCS

Hi list,

I've been experimenting a bit with the 1.5.beta2 WCS and have run into a problem which looks like its caused when resampling the data (within the same CRS) when the source and target grids don't have the same width:height ratio (although it seems to work when the ratio matches to within a few decimal places). Probably really a GeoTools problem, but since I'm meeting it through GeoServer then I'll post it here.

In this case the source data header (ArcGrid) is

ncols 403
nrows 300
xllcorner 4428336.328601
yllcorner 5800831.4255006
cellsize 1.6166666666693

and request is
http://localhost:8080/geoserver/wcs?service=WCS&request=GetCoverage&Version=1.0.0&coverage=my:coverage&crs=EPSG:31468&response_crs=EPSG:31468&bbox=4428336.328601,5800831.4255006,4428986.328601,5801316.4255006&width=130&height=97&format=JPEG

and I get the stacktrace below.

When I try the same request on source data

ncols 1298
nrows 967
xllcorner 4428336.3286009
yllcorner 5800831.4255015
cellsize 0.5

or

ncols 130
nrows 97
xllcorner 4428336.328601
yllcorner 5800831.4255006
cellsize 5

Then I get the expected image result.

(in case it helps, the GeoTools coverage jar gt2-coverage-2.3.1-SNAPSHOT.jar is dated 2007-01-18 15:21)

Cheers,

Edward Nash

Request: null
coverage:preagro:2003
output format:JPEG
version:1.0.0
envelope:Env[4428336.328601 : 4428986.328601, 5800831.4255006 : 5801316.4255006]
interpolation:null
89308547 [WARNUNG] org.vfny.geoserver.servlets.AbstractService - service exception while executing request:
Request: null
coverage:preagro:2003
output format:JPEG
version:1.0.0
envelope:Env[4428336.328601 : 4428986.328601, 5800831.4255006 : 5801316.4255006]
interpolation:null
cause: java.lang.IllegalArgumentException: The operation name parameter may not be null.
89308547 [WARNUNG] org.vfny.geoserver.wcs.WcsException - encountered error: java.lang.IllegalArgumentException: The operation name parameter may not be null.
org.vfny.geoserver.wcs.WcsException: java.lang.IllegalArgumentException: The operation name parameter may not be null.
  at org.vfny.geoserver.wcs.responses.CoverageResponse.execute(CoverageResponse.java:247)
  at org.vfny.geoserver.wcs.responses.CoverageResponse.execute(CoverageResponse.java:191)
  at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:535)
  at org.vfny.geoserver.servlets.AbstractService.doGet(AbstractService.java:340)
  at org.geoserver.request.Dispatcher.dispatch(Dispatcher.java:195)
  at org.geoserver.request.Dispatcher.handleRequestInternal(Dispatcher.java:58)
  at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
  at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
  at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:347)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:122)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
  at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
  at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
  at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
  at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
  at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
  at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalArgumentException: The operation name parameter may not be null.
  at javax.media.jai.JAI.createNS(JAI.java:1058)
  at org.geotools.coverage.processing.operation.Resampler2D.reproject(Resampler2D.java:521)
  at org.geotools.coverage.processing.operation.Resample.doOperation(Resample.java:201)
  at org.vfny.geoserver.util.WCSUtils.scale(WCSUtils.java:205)
  at org.vfny.geoserver.wcs.responses.CoverageResponse.getFinalCoverage(CoverageResponse.java:430)
  at org.vfny.geoserver.wcs.responses.CoverageResponse.execute(CoverageResponse.java:235)
  ... 32 more

--
preagro TP7 - Geodateninfrastruktur
http://www.preagro.de

Universität Rostock
Agrar- und Umweltwissenschaftliche Fakultät
Professur für Geodäsie und Geoinformatik
Justus-von-Liebig-Weg 6
18059 Rostock

Tel: +49 381 498 2164
Fax: +49 381 498 2188
Web: http://www.auf.uni-rostok.de/gg

Edward Nash ha scritto:

Hi list,

I've been experimenting a bit with the 1.5.beta2 WCS and have run into a problem which looks like its caused when resampling the data (within the same CRS) when the source and target grids don't have the same width:height ratio (although it seems to work when the ratio matches to within a few decimal places). Probably really a GeoTools problem, but since I'm meeting it through GeoServer then I'll post it here.

Yeah, we noticed. This has been solved a few days ago, should be working
properly with the next beta/rc.
Thank you for the report anyways, feedback is always appreciated :slight_smile:
Cheers
Andrea

Thanks for the quick answer! Is there any way to get hold of the fixed version now (I just downloaded and compiled the 1.5 branch from SVN and I'm still getting the same error - do I also need to do the same for geotools-2.3.x, or am I being too impatient?)

Cheers,

Edward Nash

Andrea Aime wrote:

Edward Nash ha scritto:

Hi list,

I've been experimenting a bit with the 1.5.beta2 WCS and have run into a problem which looks like its caused when resampling the data (within the same CRS) when the source and target grids don't have the same width:height ratio (although it seems to work when the ratio matches to within a few decimal places). Probably really a GeoTools problem, but since I'm meeting it through GeoServer then I'll post it here.

Yeah, we noticed. This has been solved a few days ago, should be working
properly with the next beta/rc.
Thank you for the report anyways, feedback is always appreciated :slight_smile:
Cheers
Andrea

Just to say that I've answered my own question by building the geotools-2.3.1 branch from SVN and that's solved the problem (in case anyone else is also impatiently waiting for the fix!).

Cheers,

Edward Nash

Edward Nash wrote:

Thanks for the quick answer! Is there any way to get hold of the fixed version now (I just downloaded and compiled the 1.5 branch from SVN and I'm still getting the same error - do I also need to do the same for geotools-2.3.x, or am I being too impatient?)

Cheers,

Edward Nash

Andrea Aime wrote:

Edward Nash ha scritto:

Hi list,

I've been experimenting a bit with the 1.5.beta2 WCS and have run into a problem which looks like its caused when resampling the data (within the same CRS) when the source and target grids don't have the same width:height ratio (although it seems to work when the ratio matches to within a few decimal places). Probably really a GeoTools problem, but since I'm meeting it through GeoServer then I'll post it here.

Yeah, we noticed. This has been solved a few days ago, should be working
properly with the next beta/rc.
Thank you for the report anyways, feedback is always appreciated :slight_smile:
Cheers
Andrea

Edward Nash ha scritto:

Just to say that I've answered my own question by building the geotools-2.3.1 branch from SVN and that's solved the problem (in case anyone else is also impatiently waiting for the fix!).

Nice to know it works for you too (I was away while you were wondering).
Keep the feedback coming :slight_smile:
Cheers
Andrea