Https Verbindung aufbauen zum File Download

sebi13

Mitglied
Hey, ich wollte wohl eine Https Verbindung aufbauen, um eine Datei downzuloaden, jedoch komme ich nicht auf die Lösung, damit das auch richtig funktioniert.

Bekomme immer diese Exception:
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target


Hier mein Code:

Java:
package process_1;

import java.net.*;
import java.io.*;
import java.security.cert.*;
	
public class process_1 {

	public static void main(String[] args) {
		
		String username = "username";
		String password = "password";
		
		
		
		
		try {
			
			URL url = new URL("https-Adresse");
			String auth = username +  ":" + password;
			String encoding = new sun.misc.BASE64Encoder().encode(auth.getBytes());
			URLConnection uc = url.openConnection();
			uc.setRequestProperty("Authorization", "Basic " + encoding);
		
		
			InputStream data = (InputStream) uc.getInputStream();
			BufferedReader in = new BufferedReader (new InputStreamReader (data));
			
			String line;
			
			while((line = in.readLine()) != null) {
				System.out.println(line);
			}
		}
		

		
	
		catch (IOException e) {
			System.out.println("Konnte die Datei nicht lesen " + e.getMessage());	
		}
	
		
	}

}
 

GUI-Programmer

Top Contributor
Hier mal mein Code, der zumindest mit den Java-Forum Bild funktioniert:
Java:
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;

public class DateiDownload {
	public static void main(String[] args) throws Exception {
		URL url = new URL("http://www.java-forum.org/images/misc/java_forum_org.gif");
		InputStream is = url.openStream();
		String filename = new File(url.getFile()).getName();
		File file = new File(System.getProperty("user.home")+"/Downloads/"+filename);
		file.createNewFile();
		FileOutputStream fos = new FileOutputStream(file);
		byte[] buffer = new byte[0xFFFF];
		for(int len; (len = is.read(buffer)) != -1;) {
			fos.write(buffer, 0, len);
		}
		fos.close(); 
	}
}
 

sebi13

Mitglied
ne auf die URL komme ich per Browser ohne Probleme drauf, aber nicht aus meinem Java Programm, da der irgendwie Probs mit dem SSL Handshake hat, wieso auch immer
bei dir findet ja auch keine Authorisierung wie bei mir statt
 

sebi13

Mitglied
So das Problem ist gelöst, für alle die was ähnliches machen wollen, habe gerade einen hilfreichen Link gefunden:

Fix certificate problem in HTTPS - Real's Java How-to

mein Quellcode sind nun folgendermaßen aus


Java:
package process_1;

import java.net.*;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import java.io.*;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.*;

	
public class process_1 {

	public static void main(String[] args) throws KeyManagementException, NoSuchAlgorithmException{
		
		
		TrustManager[] trustAllCerts = new TrustManager[] {
			       new X509TrustManager() {
			          public java.security.cert.X509Certificate[] getAcceptedIssuers() {
			            return null;
			          }

			          public void checkClientTrusted(X509Certificate[] certs, String authType) {  }

			          public void checkServerTrusted(X509Certificate[] certs, String authType) {  }

			       }
			    };
		
		SSLContext sc = SSLContext.getInstance("SSL");
	    sc.init(null, trustAllCerts, new java.security.SecureRandom());
	    HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());

	    // Create all-trusting host name verifier
	    HostnameVerifier allHostsValid = new HostnameVerifier() {
	        public boolean verify(String hostname, SSLSession session) {
	          return true;
	        }
	    };
		
		HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);
		
		String username = "username";
		String password = "password";
		

		try {
			URL url = new URL("https-Adresse");
			String auth = username +  ":" + password;
			String encoding = new sun.misc.BASE64Encoder().encode(auth.getBytes());
			URLConnection uc = url.openConnection();
			uc.setRequestProperty("Authorization", "Basic " + encoding);
		
		
			InputStream data = (InputStream) uc.getInputStream();
			BufferedReader in = new BufferedReader (new InputStreamReader (data));
			
			String line;
			
			while((line = in.readLine()) != null) {
				System.out.println(line);
			}
		}
	
	    catch (IOException e) {
	        System.out.println("Konnte die Datei nicht lesen " + e.getMessage());   
	    }
			
		
	}

}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J javafx mediaplayer mit https Java Basics - Anfänger-Themen 3
S HTML-Quelltext hinter HTTPS Java Basics - Anfänger-Themen 1
E Java, Firefox und HTTPS Java Basics - Anfänger-Themen 12
M FTP-Verbindung mit Apache Commons Net Java Basics - Anfänger-Themen 5
T User input in Verbindung mit ChronoUnit anpassen und falls falsche Eingabe getätigtwird Java Basics - Anfänger-Themen 7
D Verbindung zu xampp Java Basics - Anfänger-Themen 4
C SFTP Verbindung nicht möglich Java Basics - Anfänger-Themen 4
G Socket Verbindung aufbauen Java Basics - Anfänger-Themen 11
I Best Practice Saubere Verbindung zwischen API und Business Layer mit DTO's Java Basics - Anfänger-Themen 2
B Quicksort in Verbindung mit einem Projekt Java Basics - Anfänger-Themen 1
S Verbindung von einer Excel Datei zu Java-- Java Basics - Anfänger-Themen 4
R Error, wenn mehrere Clients gleichzeitig die Verbindung beenden Java Basics - Anfänger-Themen 16
R Keine Verbindung mit MariaDB Java Basics - Anfänger-Themen 18
M Datenbank verbindung Java Basics - Anfänger-Themen 19
J Java Verbindung mit mysql Datenbank Java Basics - Anfänger-Themen 3
R Keine Verbindung zu MySql über Netbeans Java Basics - Anfänger-Themen 15
R Input/Output Verbindung mit mySql-Datenbank Java Basics - Anfänger-Themen 9
J toString-Methode in Verbindung mit varArgs-Konstruktor Java Basics - Anfänger-Themen 18
B Wie steht UML mit Java in Verbindung? Java Basics - Anfänger-Themen 1
P Schleife für insert() und delete() im StringBuilder in Verbindung mit indexOf() Java Basics - Anfänger-Themen 7
P Verbindung von Zwei Kreisen löschen ! Java Basics - Anfänger-Themen 6
D Eine MySQL Verbindung in mehreren Klassen Java Basics - Anfänger-Themen 8
Meeresgott OOP Socket Verbindung richtig Kapseln Java Basics - Anfänger-Themen 0
V Was bewirkt das Schlüsselwort extends in Verbindung mit class bzw. public class ? Java Basics - Anfänger-Themen 2
N httpclient - Verbindung hängt ? Java Basics - Anfänger-Themen 13
P Interface Verbindung GUI zum Programm Java Basics - Anfänger-Themen 2
V Arrays aus eigener Klasse erstellt, zuweisung aber spuckt Fehler in verbindung mit main Methode aus. Java Basics - Anfänger-Themen 3
A Erste Schritte Verbindung zu MySQL Datenbank herstellen Java Basics - Anfänger-Themen 7
M Junit Tests durchführen, die eine Verbindung zu einer Daten erfordern Java Basics - Anfänger-Themen 3
E mit java-anwendung internet verbindung unterbrechen Java Basics - Anfänger-Themen 5
L Verbindung von Anwendung mit GUI Java Basics - Anfänger-Themen 6
M Keine Datenbank verbindung Java Basics - Anfänger-Themen 14
H Problem mit Regex in Verbindung mit BufferedReader Java Basics - Anfänger-Themen 4
P Zugriff auf Attribute einer Klasse, zu der keine Verbindung besteht Java Basics - Anfänger-Themen 11
S Fehler beim Auslösen des ActionListeners in Verbindung mit einer Queue Java Basics - Anfänger-Themen 5
T socket.close aber verbindung besteht noch Java Basics - Anfänger-Themen 4
S Datentypen Regex in Verbindung mit einem Integer Wert Java Basics - Anfänger-Themen 3
E Input/Output Socket bekommt keine Verbindung bei funktionierendem Fremdziel Java Basics - Anfänger-Themen 2
0 Postgres verbindung Java Basics - Anfänger-Themen 4
F Verbindung zu MySql Datenbank Java Basics - Anfänger-Themen 4
B Verbindung zu einen anderen Rechner Java Basics - Anfänger-Themen 2
B Derby-Java-Verbindung Java Basics - Anfänger-Themen 2
I Datenbank - nach erster Verbindung keine Verbindung mehr Java Basics - Anfänger-Themen 3
J Access-Verbindung Java Basics - Anfänger-Themen 2
H Probleme mit .Jar in Verbindung mit Bildern Java Basics - Anfänger-Themen 10
S Verbindung Klassen<-> Klassen/DB Java Basics - Anfänger-Themen 2
E DB-Verbindung zu OpenOffice: Base Java Basics - Anfänger-Themen 3
J VPN Verbindung Java Basics - Anfänger-Themen 6
M Verbindung zu einem Server über Eclipse Java Basics - Anfänger-Themen 6
G FTP Verbindung in Applet Java Basics - Anfänger-Themen 3
S Java Applet - Verbindung zum Eigenen Server Java Basics - Anfänger-Themen 2
J DB-Verbindung Java Basics - Anfänger-Themen 2
TiME-SPLiNTER mehrere HTTPRequests mit selber Verbindung Java Basics - Anfänger-Themen 2
F Peer-to-Peer Verbindung? Java Basics - Anfänger-Themen 5
B Verbindung zur Datenbank (SQL.) Java Basics - Anfänger-Themen 13
R Java, Bluetooth: mit PC eine SPP Verbindung aufbauen Java Basics - Anfänger-Themen 1
G Link Verbindung Java Basics - Anfänger-Themen 2
G Verbindung zu einer Oracle DB aufbauen Java Basics - Anfänger-Themen 2
K Verbindung zu MySQL Java Basics - Anfänger-Themen 4
G Verbindung herstellen Java Basics - Anfänger-Themen 3
M Telnet Verbindung aufbauen Java Basics - Anfänger-Themen 2
M SQL Verbindung Java Basics - Anfänger-Themen 9
B Client - Server Verbindung über sockets mysql DB ansprechen? Java Basics - Anfänger-Themen 6
C Collection in Verbindung mit String.split speicherlastig Java Basics - Anfänger-Themen 20
G SSL Verbindung testen? Java Basics - Anfänger-Themen 1
J Problem mit forschleifen in Verbindung mit Kondtional operat Java Basics - Anfänger-Themen 2
M JSP --> Verbindung zur MySQL Datenbank geht nicht ! HILFF Java Basics - Anfänger-Themen 7
X 1 MySQL-Verbindung und viele Threads Java Basics - Anfänger-Themen 4
S Server/Client Verbindung Java Basics - Anfänger-Themen 2
R JDBC Verbindung geht nicht Java Basics - Anfänger-Themen 4
S MySQL-Verbindung Java Basics - Anfänger-Themen 4
G addKeyListener in verbindung mit JFrame !? Java Basics - Anfänger-Themen 2
D java in verbindung mit svg und html Java Basics - Anfänger-Themen 3
J Verbindung zu dbf Dateien Java Basics - Anfänger-Themen 6
D Verbindung von Methoden und Felder Java Basics - Anfänger-Themen 3
C string über server/client verbindung senden ? Java Basics - Anfänger-Themen 4
N SSH-Verbindung zu entferntem Rechner aufbauen Java Basics - Anfänger-Themen 5
G Programmstart mit JAR File - keine DB-Verbindung Java Basics - Anfänger-Themen 2
megachucky GUI-Problem in Verbindung mit while-Schleife und Listener Java Basics - Anfänger-Themen 4
W Erste Schritte Ein Spielfeld aufbauen/generieren Java Basics - Anfänger-Themen 1
D Können if Anweisungen aufeinander aufbauen? Java Basics - Anfänger-Themen 1
B Treetable (rekursive Funktion) aufbauen von Datenbank Java Basics - Anfänger-Themen 4
Meeresgott OOP Gui, Logik und Datenbank richtig aufbauen Java Basics - Anfänger-Themen 43
S if-Block dynamisch aufbauen Java Basics - Anfänger-Themen 5
lumo Applikation neu aufbauen? Java Basics - Anfänger-Themen 3
D schachbrett aufbauen Java Basics - Anfänger-Themen 29
P Tree aus XML Daten aufbauen Java Basics - Anfänger-Themen 9
G JSF: Controls aufbauen bzw. ausblenden Java Basics - Anfänger-Themen 2
K Hier noch ein Konstruktor aufbauen Java Basics - Anfänger-Themen 6
J Tabelle mit mehreren Zeilen dynamisch aufbauen Java Basics - Anfänger-Themen 2
S JTree aktualisieren bzw. komplett neu aufbauen Java Basics - Anfänger-Themen 6
G Programm modular aufbauen Java Basics - Anfänger-Themen 24

Ähnliche Java Themen

Neue Themen


Oben