IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Applets Java Discussion :

generer la page html d'une applet


Sujet :

Applets Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut generer la page html d'une applet
    Bonjour,
    Je suis en train de développer une grosse applet java, et je n'arrive pas à l'exécuter autrement qu'avec le run>java applet d'eclipse. Alors j'ai créer une petite applet hello world récupérer sur un site, et à force de chercher, j'ai remarqué que quand on l'exécutait, un fichier html est généré à la racine du dossier contenant le source de notre applet, et qu'elle est effacé quand on ferme l'applet.

    Je copie ce fichier, et ça marche très bien pour mon hello world, mais pour mon application, ça ne fonctionne pas ! ce qui est affiché est équivalent à si il ne trouvait pas le .jar qui va avec. Peut être parce que mon applet fait appel à un fichier ?
    j'ai vu qu'on pouvait enregistrer une applet qui est en train de s'executer sous le nom Applet.ser, mais je ne sais pas à quoi ça sert...

    Donc la question est : quelle est la méthode propre pour générer automatiquement le code html qui permettra à l'applet de s'exécuter. Je suis preneur pour une méthode non automatique, ( évidemment, la classique balise applet écrite tel qu'elle est proposé quand on fait "marquer" dans le menu de l'applet qui est en train de s'exécute ne marche pas...)

  2. #2
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Y'a bien quelqu'un qui a une petite idée non

    une applet hello word :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    package helloWord;
     
    import java.awt.*;
     
    public class HelloWordBase extends java.applet.Applet {
       public void init (){
    	add(new Label("Hello World"));
     
       }
    }
    on exporte le .jar, la page html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <HTML>
     
    <BODY>
     
    <APPLET code="FirstApplet.class" width="100" height="30" align="left">
     
    Message s affichant si l applet n est pas supportée par le navigateur
    </APPLET>
     
    </BODY>
     
    </HTML>
    et pouf, ça marche pas ! c'est pourtant plus que simple... (ça marche quand c'est eclipse qui l'execute....

    http://naeco.free.fr/temp/testapplet...aseapplet.html

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    charger : classe FirstApplet.class introuvable.
    java.lang.ClassNotFoundException: FirstApplet.class
    at sun.applet.AppletClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.applet.AppletClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.applet.AppletClassLoader.loadCode(Unknown Source)
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.plugin.AppletViewer.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    En mettant le jar dans même répertoire que ta page, ca ira déjà mieux

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Ben le problème, c'est que c'est le cas ! on peut le voir ici :
    http://naeco.free.fr/temp/testapplet/

    Où avez vous eu cette liste d'avertissement ?

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Où avez vous eu cette liste d'avertissement ?
    clic droit sur l'applet, "ouvrir la console Java" (sous firefox)

  6. #6
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Merci, c'était une question bête.

    Par contre mon applet ne veux toujours pas marcher...
    Donc je rappelle toutes les étapes depuis le début :
    dans eclipse : nouveau projet, que j'appelle FirstApplet puis nouvelle classe que j'appelle FirstApplet.java qui sera rangé dans le paquage helloWord
    dans cette classe j'écris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    package helloWord;
     
    import java.awt.*;
     
    public class FirstApplet extends java.applet.Applet {
       /**
             * 
             */
    	private static final long serialVersionUID = 1L;
     
    public void init (){
    	add(new Label("Hello World"));
     
       }
    }
    run l'execute bien.
    clique droit sur le nom du projet, puis export puis jar file, puis finish (pas d'option pour une applet aussi simple)

    Puis dans le même dossier, je crée le .html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <HTML>
     
    <BODY>
     
     
    <applet codebase="." code="FirstApplet.class" alt="ca commence a m agacer" width=200 height=200>
    </applet>
    </BODY>
     
    </HTML>
    là j'ai fais plein de combinaison, avec/sans le codebase, avec helloWord.FristApplet.class, avec helloWord.jar etc etc

    et j'ai toujours en résultat :
    charger : classe FirstApplet.class introuvable.


    et si je copie le .class généré par eclipse, j'ai comme erreur :
    java.lang.NoClassDefFoundError: FirstApplet (wrong name: helloWord/FirstApplet)
    Je comprend pas pourquoi je galère pour un truc aussi simple !

    Merci de votre aide !

  7. #7
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Chez moi ceci fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <applet codebase="." code="helloWord.FirstApplet" alt="ca commence a me gonfler" height="200" width="200">
    </applet>
    à condition de mettre FirstApplet.class dans le répertoire helloWord

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <applet codebase="." archive="helloWord.jar" code="helloWord.FirstApplet" alt="ca commence a me gonfler" height="200" width="200">
    </applet>
    Variante avec le jar, mais ca n'a marché qu'après avoir remis FirstApplet.class dans ton jar qui était peut-être corrompu.

  8. #8
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Ha en effet, ça marche maitenant, avec ce code html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <HTML>
    <BODY>
    <applet codebase="." archive="helloWord.jar" code="helloWord.FirstApplet" height="200" width="200">
    </applet>
    </BODY>
    </HTML>
    Et sans le .class, juste le .jar
    Pour le plaisir :
    http://naeco.free.fr/temp/testapplet...aseapplet.html

    je ne m'explique pas pourquoi un simple code="toto.class" ca marche pas, comme epliqué dans tous les tutos... enfin, c'est déjà ça ! Merci beaucoup, je connaissais pas l'attribut "archive", j'aurais pu chercher longtemps !

    bon, ben bien sûr c'était trop beau, on prend les mêmes et on recommence, avec le vrai projet cette fois ci, il ne veut pas marcher, alors que j'ai mis le même code... ça peut venir du fait qu'il y a plein de class par exemple ?

    le matériel est là :
    http://naeco.free.fr/temp/testapplet/
    et la jolie page qui marche pas est là :
    http://naeco.free.fr/temp/testapplet...pplethtml.html

  9. #9
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Oups, ça peut être pour le java.security.AccessControlException: access denied (java.io.FilePermission DtStations.txt read) que toute l'applet n'est pas chargé ?


    Faut que je me donne les droits, mais comment... dans eclipse, ça fonctionne !

    Ce qui est étrange c'est que DtStation.txt est compris dans le JAR, donc je ne vois pas pourquoi je n'ai pas les droit !

  10. #10
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Ben voilà, ça marche, voici le résultat :

    http://naeco.free.fr/temp/testapplet/MotisApplet.html

    Avec une petite recherche trigramme pour sortir la ville, ça devine les fautes (mais ça bug encore si on commence pas par une majuscule..)

    Bref, merci du coup de main !

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    J'ai un problème moi aussi de permission. Comment as-tu fais pour résoudre le tien?

    Voila l'erreur que j'obtient :
    java.security.AccessControlException: access denied (java.io.FilePermission Jeu1.gif read)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkRead(Unknown Source)
    at sun.awt.SunToolkit.getImageFromHash(Unknown Source)
    at sun.awt.SunToolkit.getImage(Unknown Source)
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at MenuAbstrait.drawTitle(MenuAbstrait.java:121)
    at MenuAbstrait.showGUI(MenuAbstrait.java:94)
    at MenuAbstrait.init(MenuAbstrait.java:75)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    je ne sais pas du tout comment régler le problème...

    Merci d'avance

  12. #12
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Bonjour

    Dans notre cas, le gif est dans le jar, et si c'est code correctement, il n'y a pas de probleme de permissions.

    Je n'ai jamais appele des images exterieur au jar.

    Je ne suis pas chez moi (d'ou le manque cruel d'accent lol), alors je ne peux pas vous donner le code a utiliser,(je le connais pas par coeur) mais je l'avais trouve sur google.

  13. #13
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Bon, ben c'etais une fausse joie : ici a la fac, il recommence a plus trouver l'applet...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    load: class motisguiapplet.MotisQuery not found.
    java.lang.ClassNotFoundException: motisguiapplet.MotisQuery
    	at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:162)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
    	at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:123)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
    	at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:566)
    	at sun.applet.AppletPanel.createApplet(AppletPanel.java:617)
    	at sun.plugin.AppletViewer.createApplet(AppletViewer.java:1863)
    	at sun.applet.AppletPanel.runLoader(AppletPanel.java:546)
    	at sun.applet.AppletPanel.run(AppletPanel.java:298)
    	at java.lang.Thread.run(Thread.java:534)
    Caused by: java.io.IOException: open HTTP connection failed.
    	at sun.applet.AppletClassLoader.getBytes(AppletClassLoader.java:265)
    	at sun.applet.AppletClassLoader.access$100(AppletClassLoader.java:43)
    	at sun.applet.AppletClassLoader$1.run(AppletClassLoader.java:152)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:149)
    	... 9 more
    et ca marche pas non plus pout le hello Word... J'ai lu la citation dans le topic d'a cote ( http://www.developpez.net/forums/sho...94#post1879894 ) et ai change mon .html en consequence, mais en vain... snif !!

    Si quelqu'un a une idee...

  14. #14
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Allez Allez, je suis sûr que quelqu'un à une idée de derrière les fagots !

  15. #15
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Bon alors bien que la réponse soit triviale, je me suis tout de même posé la question, alors je poste l'explication, ça pourra toujours servir à un autre : Bien que la console appele ça java.lang.ClassNotFoundException, il s'agit en fait d'un problème de JRE. Si une applet est compilée, aussi peu de librairie puisse t'elle utiliser, avec une version de de java, elle ne pourra pas être executée avec une machine virtuelle plus ancienne. J'ai fait la bêtise de travailler avec un JRE à jour, et comme à la fac ils ne le sont pas, ça fonctionne pas...


    Affaire classée !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modification du titre de la page HTML depuis une applet
    Par ChPortos dans le forum Applets
    Réponses: 1
    Dernier message: 16/05/2008, 17h33
  2. Réponses: 7
    Dernier message: 13/12/2005, 16h22
  3. [vb.net][html] afficher une page html dans une interface vb?
    Par graphicsxp dans le forum Windows Forms
    Réponses: 1
    Dernier message: 29/09/2005, 17h31
  4. inclure une page html dans une autre
    Par jani dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 10/08/2005, 19h28
  5. Inserer une page HTML comme une boite!
    Par thief dans le forum MFC
    Réponses: 4
    Dernier message: 16/01/2004, 21h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo