Visualizzazione dei risultati da 1 a 1 su 1
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466

    JavaFx: visualizzare pagina web con login

    Un saluto a tutti,

    Avrei bisogno di visualizzare una pagina web (la cui richiede accesso tramite un login form configurato attraverso il webserver), attraverso una applicazione Java.

    Per visualizzare il contenuto web uso questa classe:

    codice:
    import java.awt.*;
    import java.awt.event.ActionListener;
    import java.awt.event.*;
    
    import java.net.*;
    
    import java.util.*;
    import java.util.concurrent.*;
    
    import java.io.*;
    
    import javax.swing.*;
    import javafx.stage.*;
    import javafx.scene.*;
    import javafx.embed.*;
    import javafx.collections.*;
    import javafx.application.*;
    import java.awt.event.*;
    import java.awt.*;
    import javafx.scene.web.*;
    import javafx.embed.swing.*;
    import com.sun.javafx.application.*;
    
    import javax.swing.*;
    
    public class myBrowser extends JFXPanel
    {    
        private Dimension dim;
        private String website;
        private Stage stage;  
        private WebView browser;  
        // private JFXPanel jfxPanel;  
        private WebEngine webEngine;
    
        public myBrowser(String tmpWebsite)
        {
            // dim = tmpDim;
            website = tmpWebsite;
            InitBrowserWindow();  
        } 
    
        public myBrowser()
        {  
            // dim = tmpDim;
            website = "www.google.com";
            InitBrowserWindow();  
        } 
    
        private void InitBrowserWindow()
        {     
            // jfxPanel = new JFXPanel();  
            CreateScene();
            // this.add(jfxPanel);  
        }
    
        private void CreateScene() 
        {  
            PlatformImpl.startup(new Runnable() 
            {  
                @Override
                public void run() 
                {          
                    stage = new Stage();  
                     
                    stage.setTitle(website);  
                    stage.setResizable(true);  
                       
                    Group root = new Group();  
                    Scene scene = new Scene(root);
                    stage.setScene(scene);  
                     
                    // Set up the embedded browser:
                    browser = new WebView();
                    browser.setContextMenuEnabled(false);
                    browser.setFontScale(0.8);
                    browser.setZoom(0.80);
    
                    webEngine = browser.getEngine();
                    webEngine.load("http://" + website);
                    
                    ObservableList <Node> children = root.getChildren();
                    children.add(browser);                     
                     
                    JTetraBrowser.this.setScene(scene);
                }
            });  
        }
    }
    che posso aggiungere facilmente ad un pannello cosi, per esempio:


    codice:
    panel.add(new myBrowser("forum.html.it/");

    Il problema che riscontro � che la pagina che voglio aprire, richiede l'accesso attraverso username e password con un popup, da cui si ottiene l'errore 401 in caso di accesso denegato..

    Allo stato attuale del codice qui sopra postato, nel caso di aprire la pagina web che richiede l'accesso attraverso la classe myBrowser non riesco a visualizzare nulla, ma solo la scritta:

    401 - Unauthorized

    ovviamente perch� non viene gestito il popup di accesso o la richiesta di autenticazione.

    Come posso modificare il codice per gestire la richiesta con successo ?
    Ringrazio in anticipo.
    Ultima modifica di simo_85; 20-02-2017 a 13:43

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.