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

[netCDFJava #UUT-550794]: setGlobalProxy yields ssl error



netcdf 4.3.l5 uses the (now very old) apache httpclient version 3.
netcdf 4.6.x uses the apache httpclient version 4.4. The API
for apache httpclient has changed drastically between v3 and v4.4
so the fix I did in https://github.com/Unidata/thredds/pull/924
will not work for apache httpclient v3.
I cannot at the moment see a way to help with this.
Ideally, you need to talk to the person responsible for nctoolbox and get them 
to
upgrade to the latest version of apache httpclient. However, I believe they
will be very reluctant to do this because of the huge changes required by the
new httpclient API.

Is there any way you can avoid using the proxy by downloading the data on 
another
machine to which you have access?


> 
> I try to download climatic data via OPeNDAP from CFSR database e.g. at 
> https://nomads.ncdc.noaa.gov/thredds/dodsC/modeldata/cmd_pgbh/2008/200811/20081101/pgbh00.gdas.2008110100.grb2
>  .
> Because I do that at work, it is mandatory to go through a Proxy.
> 
> I want to use the MatLab tollbox nctoolbox, because I already developed 
> routines for these functiones in recent years.
> nctoolbox requires to use a quite old netCDF-java version (4.3.15).
> The reason is a dependancy conflict with the HTTPClient library between 
> Matlab and newer netCDF versions.
> 
> Unfortunately, I run into an error trying to work with a Proxy using 
> netCDF-java 4.3.15.
> I have attached example code
> 
> I compiled example Code (attached in "20171024_Code.java") with the 
> netCDF-4.3.15.jar and the dependent libraries mentioned at 
> https://mvnrepository.com/artifact/edu.ucar/netcdf/4.3.15 and 
> commons-codec-1.10.jar.
> The libraries I used are listed below:
> 
> Mode                LastWriteTime     Length Name
> ----                -------------     ------ ----
> -a---        06.11.2014     08:14     284184 commons-codec-1.10.jar
> -a---        19.10.2017     15:21     305001 commons-httpclient-3.1.jar
> -a---        19.10.2017     15:23     210019 ehcache-1.6.0.jar
> -a---        19.10.2017     15:22       2254 jcip-annotations-1.0.jar
> -a---        19.10.2017     15:24      17308 jcl-over-slf4j-1.6.4.jar
> -a---        19.10.2017     15:23     153115 jdom-1.1.jar
> -a---        19.10.2017     15:20    2132019 je-4.0.92.jar
> -a---        19.10.2017     15:21     795871 jna-3.0.9.jar
> -a---        19.10.2017     15:22     569231 joda-time-2.0.jar
> -a---        19.10.2017     15:15    4491387 netcdf-4.3.15.jar
> -a---        19.10.2017     15:20     450279 protobuf-java-2.4.1.jar
> -a---        19.10.2017     15:23     554349 quartz-2.1.1.jar
> -a---        19.10.2017     15:23      25962 slf4j-api-1.6.4.jar
> -a---        19.10.2017     15:24       8887 slf4j-jdk14-1.6.4.jar
> -a---        19.10.2017     15:22     126884 udunits-0.2.jar
> 
> 
> The example code compiles fine using the command:
> 
> javac -cp 
> ".;netcdf-4.3.15.jar;commons-httpclient-3.1.jar;jcip-annotations-1.0.jar;je-4.0.92.jar;jna-3.0.9.jar;joda-time-2.0.jar;protobuf-java-2.4.1.jar;udunits-0.2.jar;ehcache-1.6.0.jar;jdom-1.1.jar;quartz-2.1.1.jar;slf4j-api-1.6.4.jar;jcl-over-slf4j-1.6.4.jar;slf4j-jdk14-1.6.4.jar;commons-codec-1.10.jar"
>  .\JavaProxyTest_version4_3_15.java
> 
> I execute the generated class using the command:
> 
> java -cp  
> ".;netcdf-4.3.15.jar;commons-httpclient-3.1.jar;jcip-annotations-1.0.jar;je-4.0.92.jar;jna-3.0.9.jar;joda-time-2.0.jar;protobuf-java-2.4.1.jar;udunits-0.2.jar;ehcache-1.6.0.jar;jdom-1.1.jar;quartz-2.1.1.jar;slf4j-api-1.6.4.jar;jcl-over-slf4j-1.6.4.jar;slf4j-jdk14-1.6.4.jar;commons-codec-1.10.jar"
>  JavaProxyTest_version4_3_15
> 
> This invokes an ssl error message, which is attached in "20171024_Error.txt".
> 
> 
> The error occurs for both Java 8 and Java 9.
> 
> jdk1.8.0_144:
> java version "1.8.0_144"
> Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
> Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
> 
> jdk-9:
> java version "9"
> Java(TM) SE Runtime Environment (build 9+181)
> Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
> 
> 
> I think this issue was already solved for version 4.6.10 in Thread 
> #RAN-171087 
> (http://www.unidata.ucar.edu/support/help/MailArchives/netcdf/msg14093.html).
> 
> But I am unable to reproduce the solution of this thread 
> (https://github.com/Unidata/thredds/pull/924/files) for the 4.3.15 source 
> code.
> 
> Could you help me with that ?
> 
> Best regards
> Marius
> 
> 

=Dennis Heimbigner
  Unidata


Ticket Details
===================
Ticket ID: UUT-550794
Department: Support netCDF Java
Priority: Normal
Status: Open
===================
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.