Gestion des liens pour mon navigateur Java
Forum Programmation : Gestion des liens pour mon navigateur Java
Bonjour.
J'ai developpé un petit navigateur web en java, sauf que je n'arrive pas à gérer les liens. Voici mon code:
| Citation :
|
Si vous avez d'autres remarques concernant mon code, n'hésitez pas...
Merci d'avance.
Et qu'est-ce qui ne marche pas ?
(HyperlinkListener:hyperlinkUpdate est bien appelé ? dans quelles méthodes ça rentre et ça ne rentre pas ?)
Au début, tu crées une réference "html" vers un objet JEditorPane qui est null.
Code :
|
Et plus loin (dans le corps d'une méthode, et dans un bloc try en plus), tu crées une nouvelle réference vers un JEditorPane, qui s'appelle aussi html.
Code :
|
En dehors du bloc try, cette réference n'existe pas.
Donc on peut s'attendre à ce que
Code :
|
renvoie une NullPointerException, ce qui est le cas (tu aurais du le préciser).
En remplaçant JEditorPane html = new JEditorPane( url1 ); par:
html = new JEditorPane(url1);
Tu n'auras pas cette erreur.
Par contre, si tu veux afficher l'addresse complète dans la barre d'adresse il faut utiliser: path = e.getURL().toString();
Parce que getPath() ça te donnera quelque chose comme "/forum". Rien sur l'hôte.
Ca ne sert pas à grand chose de demander le port à l'utilisateur puisque les serveurs HTTP écoutent sur le port 80. D'autant plus que tu ne l'utilises pas.
Tu crées aussi une chaîne qui contient l'adresse de Google, j'imagine que c'est pour en faire la page par défaut. Mais à aucun moment tu ne l'utilises. Pourtant tu as juste à remplacer:
tf1 = new JTextField(30)
par: tf1 = new JTextField(path,30)
Remplace f.show() par f.setVisible(true).
Et sinon, tu peux aussi implémenter HyperlinkListener (comme tu le fais pour ActionListener et MouseListener), utiliser addHyperlinkListener(this) et redéfinir la méthode hyperlinkUpdate dans ta classe.
Merci pour votre aide. Ca fonctionne maintenant. En fait je demande le port car il faut que j'essaye de me connecter aux ftp.
| _F_X_ a écrit : Merci pour votre aide. Ca fonctionne maintenant. En fait je demande le port car il faut que j'essaye de me connecter aux ftp. |
Le protocole est indiqué dans l'URL.
D'ailleurs, la classe URL de java contient la méthode getProtocol(). Une fois que tu as le protocole, tu peux en déduire le port que le serveur écoute.
En plus, tu te connectes sans utiliser le port.
ftp:// login : password @ site : port/...
Message édité par CRicky le 11-11-2006 à 15:18:56
Il y a 356 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

CRicky