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@xxxxxxxx
P.O. Box 3000
Boulder, CO 80307-3000 http://www.unidata.ucar.edu/
---------------------------------------------------------------------------
==============================================================================
To unsubscribe thredds, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
==============================================================================