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.
NetcdfFile doesnt know anything about dods. Use NetcdfDataset.open() instead. Jon Blower wrote:
Thanks John. The following code worked: System.setProperty("http.proxyHost", "myproxyhost.com"); System.setProperty("http.proxyPort", "8080"); Authenticator.setDefault(new Authenticator() { public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication("myusername", "mypassword".toCharArray()); } }); NetcdfFile file = new DODSNetcdfFile("http://www.cdc.noaa.gov/cgi-bin/nph-nc/Datasets/ncep.reanaly sis/pressure/uwnd.1992.nc", null); Note that I had to explicitly use the DODSNetcdfFile() constructor. When I tried using NetcdfFile.open(<url>) the code seems to use the httpclient libraries and hence does not connect. I thought that if I passed a DODS URL to the NetcdfFile.open() method, it would automatically recognise a DODS url and construct a DODSNetcdfFile in the background? Regards, Jon-----Original Message-----From: address@hidden [mailto:address@hidden] On Behalf Of John CaronSent: 10 October 2005 17:43 To: Jon Blower Cc: address@hidden; address@hidden Subject: Re: Reading remote files through authenticating proxy Jon Blower wrote:Hi all,Does anyone know how (using the Java NetCDF libs) I canread a remoteNetCDF or OpenDAP/DODS file through an authenticating proxy server using Basic authentication?Thanks, Jon -------------------------------------------------------------- Dr Jon Blower Tel: +44 118 378 5213 (direct line) Technical Director Tel: +44 118 378 8741 (ESSC) Reading e-Science Centre Fax: +44 118 378 6413 ESSC Email: address@hidden University of Reading 3 Earley Gate Reading RG6 6AL, UK --------------------------------------------------------------Do this through the java.net library, eg:java.net.Authenticator.setDefault( new SimpleAuthenticator(name, pass));public class SimpleAuthenticator extends Authenticator { private String username, password;public SimpleAuthenticator(String username,String password){ this.username = username; this.password = password; }protected PasswordAuthentication getPasswordAuthentication(){ return new PasswordAuthentication( username,password.toCharArray()); } } You can google Authenticator.setDefault, eg: http://www.javaworld.com/javaworld/javatips/jw-javatip46.htmlI should caution that at some point, netcdf-java may switch to using apache commons httpclient library when accessing OpenDAP. That uses a slightly different mechanism for authentication, but it wont be hard to switch, if and when that happens.