Re: [thredds] aggregation / arithmetic between variables

Hi Roland, all,

I think I know what's going on here.  The WMS code uses different strategies to 
read data from disk, depending upon whether the data are 
compressed/uncompressed, local/remote.  It probably can't figure out a strategy 
for this "virtual" dataset.  I didn't anticipate this so apologies for the 
unhelpful error message.

I'm pretty sure the error is precisely here:

String fileType = nc.getFileTypeId();
return fileType.equals("netCDF") || fileType.equals("HDF4")
               ? DataReadingStrategy.SCANLINE
               : DataReadingStrategy.BOUNDING_BOX;

I guess getFileTypeId() returns null in this case.  Ethan, in the next bugfix 
release could you change this to:

return "netCDF".equals(fileType)|| "HDF4".equals(fileType)
               ? DataReadingStrategy.SCANLINE
               : DataReadingStrategy.BOUNDING_BOX;

I've just changed this on my tds-refactor branch of ncWMS (but not actually 
tested it!), so you (Ethan) might just be able to sync your code with mine.  
It's already changed on ncWMS trunk.

Cheers, Jon

On Apr 15, 2011, at 8:30 AM, Roland Schweitzer wrote:

> Hi,
> I'd like to take up this conversation again and really this is a question for 
> Jon Blower and the ncWMS folks.
> Benno reported privately that the previous example had a few problems with 
> just the raw data, so I've put up what I hope is a very simple example we can 
> use to work through the issues.
> The data URL is: 
> which consists of a monthly climatology and one transformed variable 
> (sst_average) a dynamically generated average of all 12 months of the sst 
> variable.
> We can plot the sst_average with our standard tools (Ferret, toolsUI, etc), 
> but the WMS request for GetCapabilities fails (just following the link in the 
> browser) with the following error.
> Jon, any suggestions for how to track down this error?
> Roland
> 2011-04-15T15:15:20.028 +0000 [     14083][      19] INFO  - 
> thredds.server.wms.ThreddsWmsController - Remote host: - 
> Request: "GET /thredds/wms
> /examples/average.jnl?service=WMS&version=1.3.0&request=GetCapabilities 
> HTTP/1.1"
> 2011-04-15T15:15:20.939 +0000 [     14994][      19] ERROR - 
> thredds.server.wms.ThreddsWmsController - dispatchWmsRequest(): Exception:
> java.lang.NullPointerException
>    at 
>    at thredds.server.wms.ThreddsDataset.<init>(
>    at 
> thredds.server.wms.ThreddsWmsController.dispatchWmsRequest(