Öffnen einer URL aus Java

Wir schreiben einen Open-Source-JDBC-Treiber für BigQuery und haben folgendes Problem festgestellt:

Wir möchten unseren Treiber mit Oauth 2 als installierte Anwendung autorisieren. Unter Windows XP, Windows 7 x 64, Windows 7 x 64 + RDP funktioniert es einwandfrei. Auf der Testbench, bei der es sich um einen Windows Server 2008 R2 + RDP handelt, schlägt dies jedoch fehl.

Grundsätzlich öffnen wir einen Webbrowser, er meldet sich an, wir fangen die Antwort ab und authentifizieren den Benutzer.

Hier ist der Code für die URL-Eröffnung:

    private static void browse(String url) {
    // first try the Java Desktop
    logger.debug("First try the Java Desktop");
    if (Desktop.isDesktopSupported()) {
        Desktop desktop = Desktop.getDesktop();
        if (desktop.isSupported(Action.BROWSE))
            try {
                desktop.browse(URI.create(url));
                return;
            } catch (IOException e) {
                // handled below
            }
    }
    // Next try rundll32 (only works on Windows)
    logger.debug("Try the rundll32");
    try {
        Runtime.getRuntime().exec(
                "rundll32 url.dll,FileProtocolHandler " + url);
        return;
    } catch (IOException e) {
        // handled below
    }
    // Next try browsers
    logger.debug("Try with browsers");
    BareBonesBrowserLaunch.openURL(url);
}

Was ich herausgefunden habe, ist: BareBonesBrowserLaunch öffnet weder den Link noch den FileProtocolHandler.

Die URL-Länge liegt etwas unter 250 Zeichen.

Jede Hilfe wäre dankbar!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage