Przeglądarka w Javie

0

A więc, stworzyłem prototyp przeglądarki internetowej (ma być ona wbudowana pod pisany przeze mnie system operacyjny). Rzecz jest prosta: Do pola tekstowego jTextField1 wpisuje się adres, po kliknięciu jButton1 (jeszcze nie działa skrót "Enter"), do adresu dopisywany jest przedrostek "http://", a następnie strona jest otwierana w jEditorPane1. Kod działania przycisku wygląda następująco:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        String adress = jTextField1.getText();
        if (adress != null) {
            String url = "http://" + adress;
            try {
                URL page = new URL(url);
                try {
                    jEditorPane1.setPage(page);
                } catch (IOException ex) {
                    Logger.getLogger(InterNetPanel.class.getName()).log(Level.SEVERE, null, ex);
                }
                jEditorPane1.setDocument((HTMLDocument)jEditorPane1.getDocument());
            } catch (MalformedURLException ex) {
                Logger.getLogger(InterNetPanel.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

Cały program można pobrać tutaj: http://www.sendspace.pl/file/359e396a600ee1a5f00a8eb (po włączeniu, należy kliknąć przycisk "InterNet" znajdujący się mniejwięcej na środku ekranu).

Na czym polega problem? Otóż, ten prototyp przeglądarki nie obsługuje żadnych skryptów poza czystym HTML, a i ten czasami zawodzi (chociażby przy

<a>
  • wyświetla hiperłącza jak zwykły tekst). Przewiduję trzy możliwe odpowiedzi:
  1. Java posiada bibliotekę umożliwiającą czytanie tych skryptów
  2. Java nie posiada takiej biblioteki, będę musiał zrobić to sam
  3. Nie da się

Która odpowiedź jest prawidłowa (i, w miarę możliwości, proszę o więcej szczegółów)?

3

Ustalmy fakty: nie znasz podstaw, nie rozumiesz pojęć "przeglądarka internetowa", "system operacyjny" itd.

0

Jeśli chcesz stworzyć przeglądarkę na bazie istniejącego silnika to jest do dyspozycji np WebView w JavieFX 2: http://docs.oracle.com/javafx/2/api/javafx/scene/web/WebView.html
WebView/ WebEngine w JavieFX od Oracle są bazowane na WebKicie.

Goły Swing ma kiepskie wparcie dla HTML i chyba zerowe dla JavaScript, no ale to jest toolkit chyba od kilkunastu lat nierozwijany.

jEditorPane1.setDocument((HTMLDocument)jEditorPane1.getDocument());

Co ta linijka ma niby robić? Bo moim zdaniem nie robi nic pożytecznego.

1 użytkowników online, w tym zalogowanych: 0, gości: 1