[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Error reading catalog with latest (2.2.16) toolsUI jar



Hi Kyle,

Thanks for looking into this. I think you've hit upon the solution, but ultimately I think it will take updates to the PyDAP server to truly fix the problem (or text versions of the entire hierarchy). The test catalog is valid and it reads just fine in my software. However, each of the catalogRef elements points to another catalog generated by PyDAP each of which has the same problems as the original so my software fails again when tries to work with the next level down.

Roland

Kyle Halliday wrote:
Hi Roland -

I've taken a closer look at the THREDDS being generated by our PyDAP server, and I've found a number of errors. Fortunately, they shouldn't be too difficult to correct.
I was able to get the XML from http://climate.llnl.gov/dap/ipcc4?thredds to validate after:
1) Adding the encoding="utf-8" attribute to the XML declaration.
2) Adding the DOCTYPE declaration: <!DOCTYPE catalog SYSTEM "http://www.unidata.ucar.edu/projects/THREDDS/xml/InvCatalog.0.6.dtd";>
3) Referencing the xlink namespace in the catalog tag: xmlns:xlink="http://www.w3.org/1999/xlink";
4) Adding "name" and "version" attributes to the catalog tag.
5) Changing all catalogRef "href" and "title" attributes to "xlink:href" and "xlink:title", respectively.


Below is the corrected version of the THREDDS catalog, which I was able to validate with the THREDDS validation form.
I've also temporarily posted this at: http://www-pcmdi.llnl.gov/test/thredds.xml
Does this parse successfully using your Java code?


Thanks,
Kyle

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE catalog SYSTEM "http://www.unidata.ucar.edu/projects/THREDDS/xml/InvCatalog.0.6.dtd";>
<catalog xmlns="http://www.unidata.ucar.edu/thredds"; xmlns:xlink="http://www.w3.org/1999/xlink"; name="test" version="1.0">
<dataset name="PyDAP server">
<service base="http://climate.llnl.gov/dap"; name="PyDAP server" serviceType="DODS"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/2xco2/?thredds"; xlink:title="ipcc4/2xco2"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/sresb1/?thredds"; xlink:title="ipcc4/sresb1"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/1pctto4x/?thredds"; xlink:title="ipcc4/1pctto4x"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/commit/?thredds"; xlink:title="ipcc4/commit"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/20c3m/?thredds"; xlink:title="ipcc4/20c3m"/>


<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/amip/?thredds"; xlink:title="ipcc4/amip"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/pdcntrl/?thredds"; xlink:title="ipcc4/pdcntrl"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/slabcntl/?thredds"; xlink:title="ipcc4/slabcntl"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/picntrl/?thredds"; xlink:title="ipcc4/picntrl"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/sresa2/?thredds"; xlink:title="ipcc4/sresa2"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/sresa1b/?thredds"; xlink:title="ipcc4/sresa1b"/>
<catalogRef xlink:href="http://climate.llnl.gov/dap/ipcc4/1pctto2x/?thredds"; xlink:title="ipcc4/1pctto2x"/>
</dataset>
</catalog>





Organization: UCAR/Unidata
Keywords: 200607182040.k6IKeZSZ000730
Date: Tue, 18 Jul 2006 15:40:12 -0500
From: Roland Schweitzer <address@hidden>
To: address@hidden
Subject: Error reading catalog with latest (2.2.16) toolsUI jar
Sender: address@hidden
X-Brightmail: Whitelisted1
X-Brightmail-Tracker: AAAAAA==

Hi Folks,

I sent a message on this subject to the support-thredds address at Unidata, but it occurred to me that this might be a "community question" that the pyDAP developer might want to weigh in on so here goes...

When I attempt to read this catalog: http://climate.llnl.gov/dap/ipcc4?thredds (which I believe is being automatically generated by the pyDAP server) I get the following error:

Exception in thread "Thread-11" java.lang.NullPointerException
at thredds.catalog.InvCatalogRef.<init>(InvCatalogRef.java:70)
at thredds.catalog.parser.jdom.InvCatalogFactory10.readCatalogRef(InvCatalogFactory10.java:153)


at thredds.catalog.parser.jdom.InvCatalogFactory10.readDatasetInfo(InvCatalogFactory10.java:266)

at thredds.catalog.parser.jdom.InvCatalogFactory10.readDataset(InvCatalogFactory10.java:182)

at thredds.catalog.parser.jdom.InvCatalogFactory10.readCatalog(InvCatalogFactory10.java:135)

at thredds.catalog.parser.jdom.InvCatalogFactory10.parseXML(InvCatalogFactory10.java:89)

at thredds.catalog.InvCatalogFactory.readXML(InvCatalogFactory.java:324)
at thredds.catalog.InvCatalogFactory.readXML(InvCatalogFactory.java:299)
at thredds.catalog.ui.CatalogFactoryCancellable.access$701(CatalogFactoryCancellable.java:42)


at thredds.catalog.ui.CatalogFactoryCancellable$OpenCatalogTask.run(CatalogFactoryCancellable.java:155)

  at java.lang.Thread.run(Unknown Source)

I have tried both my own code which I know uses 2.2.16 and the toolsUI that launches from http://www.unidata.ucar.edu/software/netcdf-java/v2.2/webstart/netCDFtools-2.2.jnlp.


I could not get the validation form at http://motherlode.ucar.edu:8080/thredds/validateForm.html to work against this URL either.


Any ideas?

Thanks,
Roland

===============================================================================

To unsubscribe thredds, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
===============================================================================




=============================================================================== To unsubscribe thredds, visit: http://www.unidata.ucar.edu/mailing-list-delete-form.html ===============================================================================


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.