[thredds] 4.0.24: aggrigation, WMS

Hi! Finally able to throw some more resources at setting up our TDS
server.  There are some interesting things going on that might be bugs or
might be some wet behind the ear struggling and would love guidance.

Queries:

1. Aggregation inside datasetFmrc
2. WMS GetLegendGraphic

----

1. Aggregation inside datasetFmrc

  <datasetFmrc name="Collections" path="fmrc/ROMS">
    <metadata inherited="true">
      <dataFormat>NetCDF</dataFormat>
      <documentation type="summary">JPL ROMS</documentation>
      <serviceName>all_services</serviceName>
    </metadata>
    <netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2";>
      <aggregation dimName="time" type="forecastModelRunCollection"
recheckEvery="120 min">
        <scan location="/dp2/space/data/forecasts/ROMS/PWS/2009/raw/"
suffix=".nc" dateFormatMark="pws_fcst_#yyyyMMddHH" />
      </aggregation>
    </netcdf>
  </datasetFmrc>

Error seen (models.log):

[31/Jul/2009:19:16:32] ERROR thredds.catalog.InvDatasetFmrc : Error
making catalog for collections
java.lang.IllegalArgumentException: no grids
        at ucar.nc2.dt.fmrc.FmrcImpl.init(FmrcImpl.java:123)
        at ucar.nc2.dt.fmrc.FmrcImpl.<init>(FmrcImpl.java:85)
        at thredds.catalog.InvDatasetFmrc.makeFmrc(InvDatasetFmrc.java:469)
        at
thredds.catalog.InvDatasetFmrc.makeCatalog(InvDatasetFmrc.java:307)
        at
thredds.catalog.InvDatasetFmrc.makeCatalog(InvDatasetFmrc.java:171)
        at
thredds.servlet.DataRootHandler.makeDynamicCatalog(DataRootHandler.java:1247)
        at
thredds.servlet.DataRootHandler.getCatalog(DataRootHandler.java:1219)
        at
thredds.server.catalogservice.LocalCatalogServiceController.handleRequestInternal(LocalCatalogServiceController.java:191)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
thredds.servlet.filter.CatalogServiceFilter.doFilter(CatalogServiceFilter.java:107)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
thredds.servlet.filter.RequestQueryFilter.doFilter(RequestQueryFilter.java:121)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
thredds.servlet.filter.RequestPathFilter.doFilter(RequestPathFilter.java:105)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
        at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
        at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
        at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
        at java.lang.Thread.run(Thread.java:619)


Using the CDM validation service, it says we have grids:

http://motherlode.ucar.edu:8080/cdmvalidator/validate?URL=http%3A%2F%2F137.229.40.88%2Fopendap%2FdodsC%2Fdp2%2Fdata%2Fforecasts%2FROMS%2FPWS%2F2009%2Fraw%2Fpws_fcst_2009071306.nc

There is one more odd bit.

Going to the Opendap form and clicking on temp checkbox:

http://137.229.40.88/thredds/dodsC/dp2/data/forecasts/ROMS/PWS/2009/raw/pws_fcst_2009071306.nc.html

It does seem the grid is not recognized as the text boxes get filled in
with:
 time: 0:1:0  depth: 0:1:0  lat: 0:1:0  lon: 0:1:0

The same file via Hyrax 1.4.0:

http://penguin.sfos.uaf.edu/opendap/forecasts/ROMS/PWS/2009/raw/pws_fcst_2009071306.nc.html

will yield the proper dimension values for time, depth, lat, lon:
  time: 0:1:48  depth: 0:1:15  lat: 0:1:152  lon: 0:1:346

I'd love some help on what I can do to get you some more information or
ways I can tweak the above to work a bit better.

2. WMS GetLegendGraphic, two items:

(a) packed vs unpacked data

For the above dataset, I have a packed and unpacked version (raw).  The
GetLegendGraphic is different between the two.

Packed:

http://137.229.40.88/opendap/wms/dp2/data/forecasts/ROMS/PWS/2009/07/pws_fcst_2009073106.nc.bz2?REQUEST=GetLegendGraphic&LAYERS=temp&LAYER=temp&PALETTE=redblue

Unpacked(raw):

http://137.229.40.88/opendap/wms/dp2/data/forecasts/ROMS/PWS/2009/raw/pws_fcst_2009073106.nc?REQUEST=GetLegendGraphic&LAYERS=temp&LAYER=temp&PALETTE=redblue

Are the scale and add offset attributes used?

(b)

What is advertised in GetCapabilities is incorrect for GetLegendGraphic,
well maybe not incorrect, but using the advertised link generates an
error:

http://137.229.40.88/opendap/wms/dp2/data/forecasts/ROMS/PWS/2009/07/pws_fcst_2009073106.nc.bz2?REQUEST=GetLegendGraphic&LAYERS=temp&LAYER=temp&PALETTE=redblue

complains that LAYERS is not set.  If you add an S to LAYER, then you
generate a complaint that LAYER is not set.  Turns out you need both.

Thanks!
Rob Cermak
Alaska Ocean Observing System



  • 2009 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the thredds archives: