NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

[thredds] THREDDS 4.3 WMS service. Error reading 'intervalTime'

Hi all,

We are testing the new THREDDS release 4.3 but the WMS service throws an
exception (attached file) with the following NetCDF.
<http://thredds.socib.es/thredds/wms/hf_radar/hf_radar_ibiza-scb_codarssproc001/L1/2012/dep0001_hf-radar-ibiza_scb-codarssproc001_L1_2012-09.nc?service=WMS&version=1.3.0&request=GetCapabilities>

<http://thredds.socib.es/thredds/wms/hf_radar/hf_radar_ibiza-scb_codarssproc001/L1/2012/dep0001_hf-radar-ibiza_scb-codarssproc001_L1_2012-09.nc?service=WMS&version=1.3.0&request=GetCapabilities>
<http://thredds.socib.es/thredds/wms/hf_radar/hf_radar_ibiza-scb_codarssproc001/L1/2012/dep0001_hf-radar-ibiza_scb-codarssproc001_L1_2012-09.nc?service=WMS&version=1.3.0&request=GetCapabilities>
 
dep0001_hf-radar-ibiza_scb-codarssproc001_L1_2012-09.nc<https://docs.google.com/a/socib.es/file/d/0B6PLQmFeeXzZVER3OGNpcE0zZlk/edit>
The release 4.2.10 doesn't throws that exception and works fine
http://thredds.socib.es/thredds/wms/hf_radar/hf_radar_ibiza-scb_codarssproc001/L1/2012/dep0001_hf-radar-ibiza_scb-codarssproc001_L1_2012-09.nc?service=WMS&version=1.3.0&request=GetCapabilities

We are using Tomcat 7 and Java 6. The threddsConfig.xml and wmConfig.xml
are also attached.

Kristian,

-- 

 Kristian Sebastian Blalid
SOS Division: Data Center Technical
Tel: 971439860 - Fax: 971439979
E-mail: kristian.sebastian@xxxxxxxx

PNG image

GRAVE: El Servlet.service() para el servlet [wms] en el contexto con ruta 
[/thredds] lanzó la excepción [javax.el.ELException: Error reading 
'intervalTime' en el tipo thredds.server.wms.ThreddsScalarLayer] con causa raíz
java.lang.NullPointerException
        at 
thredds.server.wms.config.LayerSettings.isIntervalTime(LayerSettings.java:141)
        at 
thredds.server.wms.ThreddsScalarLayer.isIntervalTime(ThreddsScalarLayer.java:216)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at javax.el.BeanELResolver.getValue(BeanELResolver.java:87)
        at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
        at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
        at 
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:189)
        at 
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:985)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fwhen_005f1(capabilities_005fxml_jsp.java:1287)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fchoose_005f1(capabilities_005fxml_jsp.java:1257)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fotherwise_005f0(capabilities_005fxml_jsp.java:1227)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fchoose_005f0(capabilities_005fxml_jsp.java:1095)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fif_005f4(capabilities_005fxml_jsp.java:1060)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fforEach_005f5(capabilities_005fxml_jsp.java:789)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fif_005f0(capabilities_005fxml_jsp.java:682)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspx_meth_c_005fforEach_005f4(capabilities_005fxml_jsp.java:638)
        at 
org.apache.jsp.WEB_002dINF.jsp.wms.capabilities_005fxml_jsp._jspService(capabilities_005fxml_jsp.java:227)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
        at 
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433)
        at 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at 
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
        at 
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)
        at 
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
        at 
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
        at 
org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
        at 
org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
        at 
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
        at 
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at 
thredds.servlet.filter.RequestQueryFilter.doFilter(RequestQueryFilter.java:120)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at 
thredds.servlet.filter.RequestPathFilter.doFilter(RequestPathFilter.java:102)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at 
thredds.server.RequestBracketingLogMessageFilter.doFilter(RequestBracketingLogMessageFilter.java:48)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
        at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:196)
        at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
        at 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
<?xml version="1.0" encoding="UTF-8"?>
<threddsConfig>

  <!-- all options are commented out in standard install - meaning use default 
values -->
  <!-- see 
http://www.unidata.ucar.edu/projects/THREDDS/tech/reference/ThreddsConfigXMLFile.html
 -->
  <serverInformation>
    <name>SOCIB TDS</name>
    <logoUrl>threddsIcon.gif</logoUrl>
    <logoAltText>SOCIB Thredds for data access and discovery</logoAltText>

    <abstract>Scientific Data</abstract>
    <keywords>meteorology, atmosphere, climate, ocean, earth science</keywords>

    <contact>
      <name>SOCIB Data centre</name>
      <organization>SOCIB</organization>
      <email>datacenter@xxxxxxxx</email>
      <!--phone></phone-->
    </contact>
    <hostInstitution>
      <name>SOCIB</name>
      <webSite>http://www.socib.es/</webSite>
      <logoUrl>myGroup.gif</logoUrl>
      <logoAltText>SOCIB</logoAltText>
    </hostInstitution>
  </serverInformation>

  <!--
  The <catalogRoot> element:
  For catalogs you don't want visible from the /thredds/catalog.xml chain
  of catalogs, you can use catalogRoot elements. Each catalog root config
  catalog is crawled and used in configuring the TDS.

  <catalogRoot>myExtraCatalog.xml</catalogRoot>
  <catalogRoot>myOtherExtraCatalog.xml</catalogRoot>
  -->

  <!--
   * Setup for generated HTML pages.
   *
   * NOTE: URLs may be absolute or relative, relative URLs must be relative
   * to the webapp URL, i.e., http://server:port/thredds/.
    -->
  <htmlSetup>
    <!--
     * CSS documents used in generated HTML pages.
     * The CSS document given in the "catalogCssUrl" element is used for all 
pages
     * that are HTML catalog views. The CSS document given in the 
"standardCssUrl"
     * element is used in all other generated HTML pages.
     * -->
    <standardCssUrl>tds.css</standardCssUrl>
    <catalogCssUrl>tdsCat.css</catalogCssUrl>

    <!--
     * The URLs (relative to "/thredds/") and alternate text for both
     * folder and dataset icons used in HTML catalog views.
     * -->
    <folderIconUrl>folder.gif</folderIconUrl>
    <folderIconAlt>Folder</folderIconAlt>
    <datasetIconUrl>dataset.gif</datasetIconUrl> <!-- Not currently used. -->
    <datasetIconAlt>Dataset</datasetIconAlt>     <!-- Not currently used. -->

  </htmlSetup>

  <!--
   The <CatalogServices> element:
   - Services on local TDS served catalogs are always on.
   - Services on remote catalogs are set with the allowRemote element
   below. They are off by default (recommended).
   -->
  <CatalogServices>
    <allowRemote>false</allowRemote>
  </CatalogServices>

  <!--
  Configuring the CDM (netcdf-java library)
  see 
http://www.unidata.ucar.edu/software/netcdf-java/reference/RuntimeLoading.html

  <nj22Config
    <ioServiceProvider class="edu.univ.ny.stuff.FooFiles"/>
    <coordSysBuilder convention="foo" class="test.Foo"/>
    <coordTransBuilder name="atmos_ln_sigma_coordinates" type="vertical" 
class="my.stuff.atmosSigmaLog"/>
    <typedDatasetFactory datatype="Point" 
class="gov.noaa.obscure.file.Flabulate"/>
    <table type="GRIB1" filename="/home/rkambic/grib/tables/userlookup.lst"/>
    <table type="GRIB2" 
filename="/home/rkambic/grib/tables/grib2userparameters"/>
  </nj22Config>
  -->

  <!--
  CDM uses the DiskCache directory to store temporary files, like uncompressed 
files.
  <DiskCache>
    <alwaysUse>false</alwaysUse>
    <scour>1 hour</scour>
    <maxSize>1 Gb</maxSize>
  </DiskCache>
  -->
  <DiskCache>
    <alwaysUse>true</alwaysUse>
    <scour>1 hour</scour>
    <maxSize>4 Gb</maxSize>
  </DiskCache>


  <!--
  Caching open NetcdfFile objects.
  default is to allow 200 - 400 open files, cleanup every 10 minutes
  <NetcdfFileCache>
    <minFiles>200</minFiles>
    <maxFiles>400</maxFiles>
    <scour>10 min</scour>
  </NetcdfFileCache>
  -->
  <NetcdfFileCache>
    <minFiles>0</minFiles>
    <maxFiles>100</maxFiles>
    <scour>10 min</scour>
  </NetcdfFileCache>

  <!--
  The <HTTPFileCache> element:
  allow 20 - 40 open datasets, cleanup every 10 minutes
  used by HTTP Range requests.
  <HTTPFileCache>
    <minFiles>20</minFiles>
    <maxFiles>40</maxFiles>
    <scour>10 min</scour>
  </HTTPFileCache>
  -->
  <HTTPFileCache>
    <minFiles>0</minFiles>
    <maxFiles>40</maxFiles>
    <scour>10 min</scour>
  </HTTPFileCache>

  <!--
  Writing GRIB indexes.
  <GribIndexing>
    <setExtendIndex>false</setExtendIndex>
    <alwaysUseCache>false</alwaysUseCache>
  </GribIndexing>
  -->

  <!--
  Persist joinNew aggregations to named directory. scour every 24 hours, delete 
stuff older than 30 days
  <AggregationCache>
    <scour>24 hours</scour>
    <maxAge>30 days</maxAge>
  </AggregationCache>
  -->
  <AggregationCache>
    <scour>20 min</scour>
    <maxAge>1 hours</maxAge>
  </AggregationCache>
  

  <!--
  How to choose the template dataset for an aggregation. latest, random, or 
penultimate
  <Aggregation>
    <typicalDataset>random</typicalDataset>
  </Aggregation>
  -->

  <!--
  The Netcdf Subset Service is off by default.
  <NetcdfSubsetService>
    <allow>false</allow>
    <scour>10 min</scour>
    <maxAge>-1 min</maxAge>
    <metarDataDir>/opt/tomcat/content/thredds/public/stn/</metarDataDir>
    <metarRawDir>/data/ldm/pub/decoded/netcdf/surface/metar/</metarRawDir>
  </NetcdfSubsetService>
  -->

  <!--
  <Opendap>
    <ascLimit>50</ascLimit>
    <binLimit>500</binLimit>
    <serverVersion>opendap/3.7</serverVersion>
  </Opendap>
    -->
  
  <!--
  The WCS Service is off by default.
  Also, off by default (and encouraged) is operating on a remote dataset.
  <WCS>
    <allow>false</allow>
    <allowRemote>false</allowRemote>
    <scour>15 min</scour>
    <maxAge>30 min</maxAge>
  </WCS>
  -->

  <!--
  <WMS>
    <allow>false</allow>
    <allowRemote>false</allowRemote>
    <maxImageWidth>2048</maxImageWidth>
    <maxImageHeight>2048</maxImageHeight>
  </WMS>
  -->
  <WMS>
    <allow>true</allow>
    <allowRemote>false</allowRemote>
    <maxImageWidth>2048</maxImageWidth>
    <maxImageHeight>2048</maxImageHeight>
  </WMS>

  <NCISO>
    <ncmlAllow>true</ncmlAllow>
    <uddcAllow>true</uddcAllow>
    <isoAllow>true</isoAllow>
  </NCISO>

  <!-- CatalogGen service is off by default.
  <CatalogGen>
    <allow>false</allow>
  </CatalogGen>
   -->

  <!-- DLwriter service is off by default.
       As is support for operating on remote catalogs.
  <DLwriter>
    <allow>false</allow>
    <allowRemote>false</allowRemote>
  </DLwriter>
   -->

  <!-- DqcService is off by default.
  <DqcService>
    <allow>false</allow>
  </DqcService>
   -->

  <!--
   Link to a Viewer application on the HTML page:
   <Viewer>my.package.MyViewer</Viewer>
   -->

   <!--
   Add a DataSource - essentially an IOSP with access to Servlet request 
parameters
   <DatsetSource>my.package.DatsetSourceImpl</DatsetSource>
   -->

  <!--
  Modify Logging parameters. Normally use log4j.xml
  <Logging>
    <DatePattern></DatePattern>
    <MaxFileSize></MaxFileSize>
    <MaxFiles></MaxFiles>
  </Logging>
  -->

</threddsConfig>
<?xml version="1.0" encoding="UTF-8"?>
<!--
Detailed configuration of the WMS service.  This config file can be used to
set default styling parameters for each dataset/variable, and to enable or 
disable
the GetFeatureInfo operation.

See 
http://www.resc.reading.ac.uk/trac/myocean-tools/wiki/WmsDetailedConfiguration
for more information.
-->
<!DOCTYPE wmsConfig [

<!ELEMENT wmsConfig (global, overrides?)>

<!ELEMENT global (defaults, standardNames?)>

<!ELEMENT defaults (allowFeatureInfo, defaultColorScaleRange, 
defaultPaletteName, defaultNumColorBands, logScaling)>

<!ELEMENT standardNames (standardName*)>

<!ELEMENT standardName (defaultColorScaleRange?, defaultPaletteName?, 
defaultNumColorBands?, logScaling?)>
<!ATTLIST standardName name CDATA #REQUIRED>
<!ATTLIST standardName units CDATA #REQUIRED>

<!ELEMENT overrides (datasetPath*)>

<!ELEMENT datasetPath (pathDefaults?, variables?)>
<!ATTLIST datasetPath pathSpec CDATA #REQUIRED>

<!ELEMENT pathDefaults (allowFeatureInfo?, defaultColorScaleRange?, 
defaultPaletteName?, defaultNumColorBands?, logScaling?)>

<!ELEMENT variables (variable*)>

<!ELEMENT variable (defaultColorScaleRange?, defaultPaletteName?, 
defaultNumColorBands?, logScaling?)>
<!ATTLIST variable id CDATA #REQUIRED>

<!ELEMENT allowFeatureInfo (#PCDATA)>
<!ELEMENT defaultColorScaleRange (#PCDATA)>
<!ELEMENT defaultPaletteName (#PCDATA)>
<!ELEMENT defaultNumColorBands (#PCDATA)>
<!ELEMENT logScaling (#PCDATA)>
]>
<wmsConfig>

    <global>
        <!-- These settings apply to all datasets unless overridden below -->

        <defaults>
            <!-- The global defaults. All elements are mandatory -->
            <allowFeatureInfo>true</allowFeatureInfo>
            <defaultColorScaleRange>-50 50</defaultColorScaleRange>
            <defaultPaletteName>ferret</defaultPaletteName>
            <defaultNumColorBands>20</defaultNumColorBands>
            <logScaling>false</logScaling>
        </defaults>

        <standardNames>
            <!-- Use this section to set defaults per standard name -->
            <!-- Units must come from the UDUNITS vocabulary -->
            <standardName name="sea_water_potential_temperature" 
units="Celsius">
                <defaultColorScaleRange>11.5 28</defaultColorScaleRange>
            </standardName>
            <standardName name="sea_water_temperature" units="Celsius">
                <defaultColorScaleRange>11.5 28</defaultColorScaleRange>
            </standardName>
            <standardName name="sea_surface_height_above_sea_level" 
units="meter">
                <defaultColorScaleRange>-0.2 0.2</defaultColorScaleRange>
            </standardName>
            <standardName name="sea_water_salinity" units="">
                <defaultColorScaleRange>35.8 38.5</defaultColorScaleRange>
            </standardName>
            <standardName name="sea_water_potential_density" units="kg m-3">
                <defaultColorScaleRange>1025 1029</defaultColorScaleRange>
            </standardName>
            <standardName name="sea_water_velocity" units="meter second-1">
                <defaultColorScaleRange>0 1</defaultColorScaleRange>
            </standardName>
            <standardName name="barotropic_sea_water_velocity" units="meter 
second-1">
                <defaultColorScaleRange>0 0.5</defaultColorScaleRange>
            </standardName>
            <standardName name="mass_concentration_of_chlorophyll_in_sea_water" 
units="kg m-3">
                <logScaling>true</logScaling>
            </standardName>
            <!-- TODO: how about allowing "*fraction" to map to 0:1? -->
            <!-- TODO: how about allowing multiple standard names to map to the 
same settings,
                 either through a glob expression or through a list? -->
        </standardNames>
    </global>

    <overrides>
        
        <datasetPath pathSpec="testAll/*eta_211.nc">
            <!-- Will apply to all paths that match the path spec above -->
            <pathDefaults>
                <!-- These will apply to all variables in this path unless 
overridden below -->
                <allowFeatureInfo>false</allowFeatureInfo>
                <defaultPaletteName>occam</defaultPaletteName>
            </pathDefaults>

            <variables>
                <!-- Configure variables individually according to their 
internal ID.
                     This is the most specific setting and will override any 
others -->
                <variable id="Z_sfc">
                    <defaultColorScaleRange>10 20</defaultColorScaleRange>
                </variable>
            </variables>
        </datasetPath>
        
    </overrides>

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