Recently I had been struggling with some code to get a https connection to work. It was coming up with an error that no trusted certificates could be found. I resolved that thanks to some feedback and sites but i've encountered a new problem -- I'm working on the program on Windows and putting into a unix server to be run. This worked fine initially with no problems, then the server changed from http to https, so I had to implement some changes to deal with this -- now however, even though it works fine on windows when put on unix, it throws up this error
java.net.ConnectException: Connection refused
here's the code..
Any ideas why unix isnt liking this? Thanks a lotCode:java.security.Security.insertProviderAt(new sun.security.provider.Sun(),2); java.security.Security.addProvider(new sun.security.provider.Sun()); java.security.Security.insertProviderAt(new com.sun.net.ssl.internal.ssl.Provider(),1); // set protocol to java.protocol.handler.pkgs property to 'HTTP' // -- to do with if report server site is HTTPS System.setProperty("java.protocol.handler.pkgs","HTTP"); // Trustmanager -- set to trust any certificate for a secure server TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() { public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } public void checkClientTrusted( java.security.cert.X509Certificate[] certs, String authType) { } public void checkServerTrusted( java.security.cert.X509Certificate[] certs, String authType) { } } }; try { SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, trustAllCerts, new java.security.SecureRandom()); HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); } catch (Exception e) { e.printStackTrace(); } URL url = null; try { url = new URL( rptUrl ); //rptUrl contains url to use } catch (MalformedURLException mue) { mue.printStackTrace(); } //HttpsURLConnection c; try { URLConnection c = url.openConnection(); //set cache and request method settings c.setUseCaches(false); //set other headers c.setRequestProperty ("Content-Type", "application/pdf"); //connect to the server.. c.connect(); ////some code about what to do with file etc etc....


Reply With Quote


Bookmarks