Ouvrir une page HTML [Résolu]

lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 11:10 - Dernière réponse : lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention
- 19 juil. 2007 à 15:28
Bonjour,

Je suis à la recherche d'une solution pour ouvrir une page HTML depuis du code JAVA. Sachant que je travaille avec un jdk 1.4 et éventuellement 1.5. Je suis bloquée dans ses jdk par des contraintes de mon entreprise....oui je sais c'est pas le top ;-).

Auriez vous une petite piste?

merci beaucoup

Lafolle
Afficher la suite 

12 réponses

Répondre au sujet
cs_Kysic 332 Messages postés mardi 12 juillet 2005Date d'inscription 17 juillet 2010 Dernière intervention - 19 juil. 2007 à 15:16
+3
Utile
Bizare, chez moi
import java.awt.BorderLayout;
import java.awt.Container;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.io.*;

import javax.swing.*;

public class Essai {
    public static void main(String[] args) {
   
     JFrame frame = new JFrame("Drag");

     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   

     Container content = frame.getContentPane();

     JPanel inner = new JPanel();
     JLabel text = new JLabel(ConnexionServer("http://www.perdu.com/"));
     inner.add(text);
     content.add(inner);

     frame.pack();

     frame.show();
    //      System.out.println(ConnexionServer("http://pc-126.cesr.fr/"));
    }

    public static String ConnexionServer(String adresse){
        String toreturn = null;
             try{
                 //creation d'un objet URL
                 URL url = new URL(adresse);
                 //on etablie une connection a cette url
                 try{
                     URLConnection uc = url.openConnection();
                     //on y cree un flux de lecture
                     InputStream in = uc.getInputStream();
                     // on lit le premier bit
                     int c = in.read();
                     //on cree un StringBuilder pour par la suite y ajouter tout les bit lus
                     StringBuilder build = new StringBuilder();
                     //tant que c n'est pas egale au bit indiquant la fin d'un flux...
                     while(c != -1) {
                         build.append((char) c);
                         //...on l'ajoute dasn le StringBuilder...
                         c = in.read();
                         //...on lit le suivant
                     }
                     //on retourne le code de la page
                     toreturn = build.toString();
                }
                catch(MalformedURLException e) {e.printStackTrace();}
             }
            catch(IOException e) {e.printStackTrace();}
             return toreturn;
    }
}
fonctionne (même si déprécié).
et sinon, comme là dit amundain:
new JEditorPane text = new JEditorPane("http://www.google.fr");
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Kysic
cs_Kysic 332 Messages postés mardi 12 juillet 2005Date d'inscription 17 juillet 2010 Dernière intervention - 19 juil. 2007 à 11:28
0
Utile
Bonjour,
pas très précis comme question, si la page est local, vous
pouvez l'ouvrir comme un fichier normal, si elle distante avec une
URLConnection, si le but est de la parser, il y a HTML Parser (qu'une
simple recherche sur le web permet de trouver). Si le but est de faire
ouvrir le navigateur web sur une page, il faut regarder du côté des
lignes de commande.
http://kysicurl.free.fr/
Commenter la réponse de cs_Kysic
lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 11:38
0
Utile
çà veut dire quoi exactement "Parser???"
Commenter la réponse de lafolle24320
cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 19 juil. 2007 à 11:39
0
Utile
oui et puis reste à savoir si c'est du J2SE, ou du J2EE... et où tu veux l'ouvrir ta page HTML !
Commenter la réponse de cs_DARKSIDIOUS
cs_Kysic 332 Messages postés mardi 12 juillet 2005Date d'inscription 17 juillet 2010 Dernière intervention - 19 juil. 2007 à 13:22
0
Utile
En gros, le verbe "parser" veut dire analyser (syntaxiquement) le contenu d'un document pour en extraire l'information, et le nom "parser" ou analyseur syntaxique désigne l'algorithme ou le programme qui s'en charge.
Définition web:
<li>Parser est l'acte par lequel un document est
examiné, et par lequel l'information contenue à l'intérieur de ce
document est filtré dans le contexte des éléments structurant
l'information.http://www.visionduweb.com/lesplus/lexique/p.php4&usg=AFQjCNGSF9wkR8w_eFPE-ymF2Sz8RLH5Dw' target='_blank'>www.visionduweb.com/lesplus/lexique/p.php4</li>
Commenter la réponse de cs_Kysic
lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 13:27
0
Utile
En fait j'ai réussi à obtenir le code html de la page web dans java mais j'aimerai maintenant voir cette même page dans un textarea... pour pouvoir m'affranchir du navigateur et ainsi faire un code multi plateforme.

voici mon début d'essai pour mieux comprendre :
import java.awt.BorderLayout;
import java.awt.Container;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.io.*;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;

import sun.security.krb5.internal.crypto.e;

public class Exec{
public static void main(String[] args) {

JFrame frame = new JFrame("Drag");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


Container content = frame.getContentPane();

JPanel inner = new JPanel();
JTextArea text = new JTextArea("<HTML>"+ConnexionServer("http://pc-126.cesr.fr/")+"</HTML>");
inner.add(text);
content.add(inner);


frame.pack();

frame.show();
// System.out.println(ConnexionServer("http://pc-126.cesr.fr/"));
}


public static String ConnexionServer(String adresse){
String toreturn = null;
try{
//creation d'un objet URL
URL url = new URL(adresse);
//on etablie une connection a cette url
try{
URLConnection uc = url.openConnection();
//on y cree un flux de lecture
InputStream in = uc.getInputStream();
// on lit le premier bit
int c = in.read();
//on cree un StringBuilder pour par la suite y ajouter tout les bit lus
StringBuilder build = new StringBuilder();
//tant que c n'est pas egale au bit indiquant la fin d'un flux...
while(c != -1) {
build.append((char) c);
//...on l'ajoute dasn le StringBuilder...
c = in.read();
//...on lit le suivant
}
//on retourne le code de la page
toreturn = build.toString();
}
catch(MalformedURLException e) {e.printStackTrace();}
}
catch(IOException e) {e.printStackTrace();}
return toreturn;
}
}

merci

lafolle
Commenter la réponse de lafolle24320
amundain 110 Messages postés mercredi 28 mars 2007Date d'inscription 28 août 2012 Dernière intervention - 19 juil. 2007 à 14:06
0
Utile
Salut,

Il me semble que pour afficher du HTML sous Java il faut plutôt regarder du côté de la classe JEditorPane que du côté des JTextArea...la JEditorPane reconnait le HTML et l'affiche comme un navigateur.


A +,

amundain


<hr size="2" width="100%" />Java bien,merci.
Commenter la réponse de amundain
cs_GodConan 2116 Messages postés samedi 8 novembre 2003Date d'inscriptionContributeurStatut 6 octobre 2012 Dernière intervention - 19 juil. 2007 à 14:28
0
Utile
la encore il y a tout les exmple qu il faut fournit par sun .. ;o)
qd au html ;o) un simple JLabel l interprete ... ;o)
il n y a rien de plus simple que de faire un browser en java.... ;o)
par contre pour lire tout ce qui est flash et compagni ;o) la! y a du boulot..... ;o)

GodConan ;o)
Commenter la réponse de cs_GodConan
lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 14:39
0
Utile
JLabel supporte l'HTML aussi.... mais je comprend pas comment on doit le forcer à interpréter au lieu d'écrire le html,

merci

lafolle
Commenter la réponse de lafolle24320
cs_Kysic 332 Messages postés mardi 12 juillet 2005Date d'inscription 17 juillet 2010 Dernière intervention - 19 juil. 2007 à 15:09
0
Utile
Re,
essayer avec
JLabel text = new JLabel(ConnexionServer("http://www.perdu.com/"));

Si vous essayer sur une autre page, vérifier qu'elle n'a pas de dépendance (script externe, style externe ....), le problème venant surement de là.
Commenter la réponse de cs_Kysic
lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 15:11
0
Utile
tjs le même problème..... même si il n'y a pas de lien
Commenter la réponse de lafolle24320
lafolle24320 406 Messages postés samedi 26 mars 2005Date d'inscription 29 juin 2009 Dernière intervention - 19 juil. 2007 à 15:28
0
Utile
la solution fonctionne mais uniquement pour des pages simples... pour afficher google déjà moi çà bug...
Je vais essayer dabs cette direction en tout cas.

merci beaucoup à vous

bonne suite

lafolle
Commenter la réponse de lafolle24320

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.