This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Fan, I think the problem is that the variable float ta is defined with dimensions [time plev lat lon]. Instead, the order on the dimensions should be reversed to [lon lat plev time]. If you try to open the file with the ToolsUI FeatureType->Grids, you get a nicer error that says no grids are found in the file. Running the TDS in the debugger shows the same problem, but the TDS isn't giving a nice error message. Thanks for bringing this to our attention! -Lansing > Hi Lansing, > > I have a sample file at > > ftp://hydro1.sci.gsfc.nasa.gov/private/ffang/ta_AIRS.2002.09.01.L3.RetStd030.v5.0.14.0.G07283162057.hdf.nc > > We also aggregate these granules in time. Both granules and the aggregation > has the same symptom. > > -Fan > ________________________________________ > From: Unidata THREDDS Support [address@hidden] > Sent: Wednesday, April 10, 2013 1:38 PM > To: Fang, Fan (GSFC-610.2)[ADNET SYSTEMS INC] > Subject: [THREDDS #YXL-373395]: IndexOutOfBoundsException > > Hi Fan, > > Can you send me the file, or otherwise make it available? I'll look at it > and see what I find. > > -Lansing Madry > Unidata > Boulder, Colorado > > > Hi. > > > > I am testing a netCDF dataset on a TDS server version 4.3.14. Curiously > > the netcdf subset service gives me 500 Internal Server Error. The > > 'threddsServlet.log' shows a IndexOutOfBoundsException: > > > > 2013-04-08T17:36:45.411 +0000 [ 2624702][ 84] INFO - > > threddsServlet - Remote host: 128.183.162.99 - Request: "GET > > /thredds/ncss/grid/ESG_AIRX3STM_TA/2002/ta_AIRS.2002.12.01.L3.RetStd031.v5.0.14.0.G07295003749.hdf.nc/dataset.html > > HTTP/1.1" > > 2013-04-08T17:36:45.417 +0000 [ 2624708][ 84] ERROR - > > thredds.server.ncSubset.dataservice.NcssShowDatasetInfoImpl - > > ForecastModelRunServlet internal error > > java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 > > at java.util.ArrayList.rangeCheck(ArrayList.java:604) > > at java.util.ArrayList.get(ArrayList.java:382) > > at > > ucar.nc2.dt.grid.GridDatasetInfo.makeGridForm(GridDatasetInfo.java:266) > > at > > thredds.server.ncSubset.dataservice.NcssShowDatasetInfoImpl.showForm(NcssShowDatasetInfoImpl.java:51) > > ... > > > > I enclose the CDL here - wonder which netcdf definition here can lead to > > this error? > > > > The OPeNDAP service works fine, but we need netcdf subset/download > > service on the server side. If you need a sample netcdf data please let > > me know. > > > > Thanks. > > > > -Fan > > > > netcdf ta_AIRS.2002.12.01.L3.RetStd031.v5.0.14.0.G07295003749.hdf { > > dimensions: > > lat = 180 ; > > bnds = 2 ; > > lon = 360 ; > > plev = 17 ; > > time = UNLIMITED ; // (1 currently) > > variables: > > double lat(lat) ; > > lat:_CoordinateAxisType = "Lat" ; > > lat:axis = "Y" ; > > lat:bounds = "lat_bnds" ; > > lat:long_name = "latitude" ; > > lat:standard_name = "latitude" ; > > lat:units = "degrees_north" ; > > double lat_bnds(lat, bnds) ; > > double lon(lon) ; > > lon:_CoordinateAxisType = "Lon" ; > > lon:axis = "X" ; > > lon:bounds = "lon_bnds" ; > > lon:long_name = "longitude" ; > > lon:standard_name = "longitude" ; > > lon:units = "degrees_east" ; > > double lon_bnds(lon, bnds) ; > > double plev(plev) ; > > plev:_CoordinateAxisType = "Pressure" ; > > plev:_CoordinateZisPositive = "down" ; > > plev:axis = "Z" ; > > plev:long_name = "pressure" ; > > plev:positive = "down" ; > > plev:standard_name = "air_pressure" ; > > plev:units = "Pa" ; > > float ta(time, plev, lat, lon) ; > > ta:_FillValue = 1.e+20f ; > > ta:cell_measures = "area: areacella" ; > > ta:cell_methods = "time: mean" ; > > ta:long_name = "Air Temperature" ; > > ta:missing_value = 1.e+20f ; > > ta:standard_name = "air_temperature" ; > > ta:units = "K" ; > > double time(time) ; > > time:units = "days since 2000-01-01" ; > > time:_CoordinateAxisType = "Lon" ; > > time:axis = "T" ; > > time:bounds = "time_bnds" ; > > time:calendar = "standard" ; > > time:long_name = "time" ; > > time:standard_name = "time" ; > > double time_bnds(time, bnds) ; > > > > } > > > > > > > Ticket Details > =================== > Ticket ID: YXL-373395 > Department: Support THREDDS > Priority: Normal > Status: Open > > Ticket Details =================== Ticket ID: YXL-373395 Department: Support THREDDS Priority: Normal Status: Open