This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
> > > Hey IDV folks > > > > > > I am having trouble opening a NCML file on a thredds server. > > http://staging.asascience.com:8989/thredds/test.xml > > > > There are two data sets: > > CTD_NC > > CTD_ncml > > > > IDV can: > > Open the same ncml locally... > > Open the NC file with the same description > > > > But when I put the ncml through the TDS I get the following? > > Hi David, The problem is that neither the nc nor ncml file properly define this file as a trajectory dataset, so when the IDV opened this file through the TDS server, it would try to do it as a typed dataset. Unless you add an adapter to the trajectory type dataset to this specific file, you will not be able to use a TDS server to serve this file. When you opened both nc and ncml file as local file, the IDV just tried it as a netcdf file and will not have any problem. Yuan > > java.io.IOException: Server returned HTTP response code: 400 for URL: > http://staging.asascience.com:8989/thredds/dodsC/idvtest/ctd.ncml > > at > sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown > Source) > > at > org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown > Source) > > at > org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown > Source) > > at > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > > at > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > > at org.apache.xerces.parsers.XMLParser.parse(Unknown > Source) > > at > org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) > > at > org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) > > at org.jdom.input.SAXBuilder.build(SAXBuilder.java:489) > > at org.jdom.input.SAXBuilder.build(SAXBuilder.java:847) > > at > ucar.nc2.ncml.NcMLReader.readNcML(NcMLReader.java:213) > > at > ucar.nc2.ncml.NcMLReader.readNcML(NcMLReader.java:184) > > at > ucar.nc2.dataset.NetcdfDataset.acquireNcml(NetcdfDataset.java:788) > > at > ucar.nc2.dataset.NetcdfDataset.openOrAcquireFile(NetcdfDataset.java:664) > > at > ucar.nc2.dataset.NetcdfDataset.openDataset(NetcdfDataset.java:434) > > at > ucar.nc2.dataset.NetcdfDataset.acquireDataset(NetcdfDataset.java:514) > > at > ucar.nc2.dataset.NetcdfDataset.acquireDataset(NetcdfDataset.java:491) > > at > ucar.nc2.dt.TypedDatasetFactory.open(TypedDatasetFactory.java:155) > > at > ucar.unidata.data.sounding.CdmTrackAdapter.<init>(CdmTrackAdapter.java:1 > 24) > > at > ucar.unidata.data.sounding.TrackDataSource.doMakeAdapter(TrackDataSource > .java:533) > > at > ucar.unidata.data.sounding.TrackDataSource.initTrack(TrackDataSource.jav > a:489) > > at > ucar.unidata.data.sounding.TrackDataSource.getAdapters(TrackDataSource.j > ava:547) > > at > ucar.unidata.data.sounding.TrackDataSource.initAfter(TrackDataSource.jav > a:268) > > at > ucar.unidata.data.DataSourceImpl.initAfterCreation(DataSourceImpl.java:7 > 27) > > at > ucar.unidata.data.FilesDataSource.initAfterCreation(FilesDataSource.java > :270) > > at > ucar.unidata.data.sounding.TrackDataSource.initAfterCreation(TrackDataSo > urce.java:283) > > at > ucar.unidata.data.DataManager.createDataSource(DataManager.java:1490) > > at > ucar.unidata.idv.IntegratedDataViewer.createDataSource(IntegratedDataVie > wer.java:1967) > > at > ucar.unidata.idv.IntegratedDataViewer.makeDataSource(IntegratedDataViewe > r.java:1884) > > at > ucar.unidata.idv.IntegratedDataViewer.makeDataSource(IntegratedDataViewe > r.java:1818) > > at > ucar.unidata.idv.IntegratedDataViewer.makeDataSource(IntegratedDataViewe > r.java:1791) > > at > ucar.unidata.idv.chooser.IdvChooser.makeDataSource(IdvChooser.java:907) > > at > ucar.unidata.idv.chooser.ThreddsHandler.processNodes(ThreddsHandler.java > :745) > > at > ucar.unidata.idv.chooser.ThreddsHandler.doLoad(ThreddsHandler.java:604) > > at > ucar.unidata.idv.chooser.XmlChooser.doLoadInThread(XmlChooser.java:672) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown > Source) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > > at java.lang.reflect.Method.invoke(Unknown Source) > > at ucar.unidata.util.Misc$2.run(Misc.java:1033) > > at ucar.unidata.util.Misc$3.run(Misc.java:1061) > > > > > > This URL does indeed return a error 400 - there should be something on > the end to get the opendap data I think? > > http://staging.asascience.com:8989/thredds/dodsC/idvtest/ctd.ncml > > > > For instance... > > http://staging.asascience.com:8989/thredds/dodsC/idvtest/ctd.ncml?altitu > de[0:1:16165] > > > > Hope this helps and feel free to try the server yourself! > > > > David Stuebe > > > > Applied Science Associates > > 55 Village Square Drive > > South Kingstown, RI 02879 > > > > Phone: 401 789 6224 > > Web: www.asascience.com > > Email: address@hidden > > > > > Ticket Details =================== Ticket ID: RMR-226806 Department: Support IDV Priority: Normal Status: Open