Plus signs in dataset names and IDs?
Nathan Potter
ndp at opendap.org
Fri Jun 29 13:33:52 MDT 2007
Ethan,
So my catalog contains this dataset:
<dataset name="CCEXTTAU-INTEX.Organic-plus-Black.Carbon.Aerosol"
urlPath="wcs/2a9dbfe0-b8db-4393-b9de-4271fdba62f0"
ID="wcs/DataFed/NetCDF/CCEXTTAU-INTEX.Organic-+-
Black.Carbon.Aerosol" >
<property name="wcs-request" value="http://
webapps.datafed.net/ogc_NASA.wsfl?
SERVICE=WCS&REQUEST=GetCoverage&VERSION=1.0.0&CRS=EPSG:
4326&COVERAGE=GOCART_G_OL.CCEXTTAU&TIME=2007-06-24T23:00:00&
BBOX=-180,-90,180,90,0,0&WIDTH=-1&HEIGHT=-1&DEPTH=-1&FOR
MAT=NetCDF" />
<property name="returnType" value="netCDF" />
<property name="cacheTime" value="600" />
<serviceName>OPeNDAP-Hyrax</serviceName>
</dataset>
I I changed the "+ to the word "plus" in all cases. Then I went back
and tried making one "plus" a "+" and checked again... Anyway, the
version above works when I try to load the catalog:
http://ndp.opendap.org:8080/opendap/SingleDirWcs/DataFedNetCDF.html
And causes the NullPointerException when I try to load the dataset page:
http://ndp.opendap.org:8080/opendap/SingleDirWcs/DataFedNetCDF.html?
dataset=wcs/DataFed/NetCDF/CCEXTTAU-INTEX.Organic-+-Black.Carbon.Aerosol
So it looks like the we are seeing the same problem, but with a
different symptoms.
N
On Jun 29, 2007, at 12:15 PM, Ethan Davis wrote:
> Hi Nathan,
>
> What kind of request are you getting this error on? Can you give me
> the full URL?
>
> In the mean time, here's what I found ...
>
> I'm not getting a NullPointerException like you are but I'm getting
> some failed requests that should succeed.
>
> A THREDDS catalog can legally have dataset names and IDs that
> contain plus signs ("+"). The TDS HTML view of a catalog is mostly
> fine as well. The problem is when a dataset ID containing a plus
> sign is used in the query part of a URL as a parameter value. For
> instance, here's an example of an HTML view of a single dataset:
>
> http://localhost:8080/thredds/catalog/testAll/test+dir/catalog.html?
> dataset=testDatasetScan/test+dir
>
> The plus sign that is part of the dataset parameter value should be
> url-encoded as "%2B" but as is when the "dataset" parameter value
> is requested (req.getParameter("dataset")) the return value is
> "testDatasetScan/test dir".
>
> We'll add this to our list of needed fixes. But in the mean time,
> try to avoid directories and datasets with plus signs in their
> names. Same goes for spaces.
>
> Sorry for the restrictions.
>
> Ethan
>
>
> Nathan Potter wrote:
>>
>> Is the "+" character allowed in either the name or ID attributes
>> of a <dataset>?
>>
>> When I tried that I got a null pointer exception from the THREDDS
>> code (see stack trace below).
>>
>> When I removed the "+" things worked.
>>
>> N
>>
>>
>>
>> 2007-06-28T16:06:47.584 -0700 [ 1337941][ 26] [HTTP-GET]
>> DEBUG - opendap.coreServlet.DispatchServlet - Request being
>> handled by: opendap.bes.ThreddsDispatchHandler
>> 2007-06-28T16:06:47.585 -0700 [ 1337942][ 26] [HTTP-GET]
>> ERROR - opendap.coreServlet.OPeNDAPException - anyExceptionHandler
>> (): java.lang.NullPointerException
>> java.lang.NullPointerException
>> at
>> thredds.servlet.CatalogServicesServlet.handleCatalogServiceRequest
>> (CatalogServicesServlet.java:226)
>> at thredds.servlet.DataRootHandler.processReqForCatalog
>> (DataRootHandler.java:1117)
>> at opendap.bes.ThreddsDispatchHandler.handleRequest
>> (ThreddsDispatchHandler.java:215)
>> at opendap.coreServlet.DispatchServlet.doGet
>> (DispatchServlet.java:440)
>> 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.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.coyote.http11.Http11Processor.process
>> (Http11Processor.java:869)
>> at org.apache.coyote.http11.Http11BaseProtocol
>> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:
>> 664)
>> at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
>> (PoolTcpEndpoint.java:527)
>> at
>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt
>> (LeaderFollowerWorkerThread.java:80)
>> at org.apache.tomcat.util.threads.ThreadPool
>> $ControlRunnable.run(ThreadPool.java:684)
>> at java.lang.Thread.run(Thread.java:613)
>>
>>
>>
>>
>>
>> =
>> Nathan Potter ndp at opendap.org
>> OPeNDAP, Inc. 541.752.1852
>>
>
> --
> Ethan R. Davis Telephone: (303)
> 497-8155
> Software Engineer Fax: (303)
> 497-8690
> UCAR Unidata Program Center E-mail:
> edavis at ucar.edu
> P.O. Box 3000
> Boulder, CO 80307-3000 http://
> www.unidata.ucar.edu/
> ----------------------------------------------------------------------
> -----
>
>
=
Nathan Potter ndp at opendap.org
OPeNDAP, Inc. 541.752.1852
==============================================================================
To unsubscribe thredds, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
==============================================================================
More information about the Thredds
mailing list