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 :

Exécution d'une applet dans une page web


Sujet :

Applets Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    958
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 958
    Points : 141
    Points
    141
    Par défaut Exécution d'une applet dans une page web
    bonjour,

    J'ai crée le code d'une applet dans une classe nommée FirstApplet.

    Ensuite, j'ai crée un fichier .html nommé FirstApplet.html ( dans le même projet que celui où j'ai crée le fichier FirstApplet.java)dans lequel je fais appel à la fonction doJavascript() de la classe FirstApplet .

    Cet appel est provoqué après un click sur un bouton de la page FirstApplet.html sur lequel est écrit "lancer la méthode de l'applet".

    L'appel de cette fonction permet de voir en console le message
    "Méthode appelée par javascript ! " et de voir sur le label de l'applet le nombre de fois que l'on a cliqué sur le bouton de l'applet.

    Mon problème est qu'au niveau de la page html je ne vois que le bouton sur lequle est ecrit "lancer la méthode de l'applet" mais rien ne se passe lorsque je clique dessus.
    Pouvez-vous m'expliquer pourquoi?

    Je vous en remercie beaucoup.

    Voici le code de le classe FirstApplet et celui de 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
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
     
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
     
    import javax.swing.JApplet;
    import javax.swing.JButton;
    import javax.swing.JLabel;
     
    public class FirstApplet extends JApplet{
     
    	protected JLabel label ; 
    	private JButton bouton ; 
    	protected int count  = 0;
    	/**
             * Méthode d'initialisation de l'applet
             * C'est cette méthode qui fait office de constructeur
             */
    	public void init(){
    		this.setSize(300, 80);
    		label = new JLabel();
    		bouton = new JButton("Cliquez");
    		count  = 0;
     
    		//On centre le texte du JLabel et on écrit en bleu...
    		label.setHorizontalAlignment(JLabel.CENTER);
    		//C'est plus joli. 
    		label.setForeground(Color.blue);
    		System.out.println("Paramètre passé via la balise <param> : " + this.getParameter("message")); 
     
    		this.bouton.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent arg0) {
    				label.setText("Vous avez cliqué " + (++count) + " fois sur le bouton");
    			}			
    		});
     
    		//On ajoute nos composants
    		this.getContentPane().add(bouton, BorderLayout.SOUTH);
    		this.getContentPane().add(label, BorderLayout.NORTH);
    		//Et le tour est joué !
    	}
     
    	/**
             * Méthode utilisée par Javascript pour mettre à jour 
             * Celle-ci doit être public afin que Javascript puisse y avoir accès
             * Le JLabel
             */
    	public void doJavascript(){
    		System.out.println("Méthode appelée par javascript ! ");
    		label.setText("Vous avez cliqué " + (++count) + " fois sur le bouton");
    	}
     
    }
    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
    21
     
     
    <html>
     
    	<body style="margin:auto;">
     
    		<div style="width:100%;text-align:center;background-color:#aef15b;">&nbsp;</div>
    		<div style="width:100%;text-align:center;background-color:#aef15b;">
    			<input type="button" value="Lancer la méthode de l'applet" onClick="document.applets['first'].doJavascript();"/>
    		</div>
    		<div style="width:100%;text-align:center;background-color:#aef15b;">&nbsp;</div>
     
     
    		<div style="width:320px;margin:auto;margin-top:20px;border:5px solid black">
    			<applet codebase="bin/" code="FirstApplet.class" height="80" width="300" hspace="10" vspace="10" name="first" id="firstApplet">
    				<param name="message" value="Message pour les ZérOs">
    			</applet>
    		</div>
     
    	</body>
    </html>
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. [SHADOKS]

  2. #2
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 5
    Points : 11
    Points
    11
    Par défaut
    Salut,

    Ça ressemble très fortement à un code d'un autre site très connu, pour les débutant.
    Je bute également sur ce problème actuellement, donc pour être sûr de bien te répondre, quel est ton OS, le type et la version des jre/jdk, et ton plugin ?

    Sinon, il serait bien de voir la console de l'applet, pour voir les erreurs générées. Si tu es sous linux avec icedtea, la méthode qu'on peut trouver avec la commande "watch" ne fonctionne pas pour toutes les distrib, le mieux restant de lancer firefox depuis la console.

    EDIT : j'ai résolu le problème en ajoutant dans la balise applet l'attribut archive="plugin.jar", et en le rajoutant avec le .class. Pour l'avoir, soit tu as la jre/jdk officielle, soit tu la télécharge et tu récupères dans jre/lib le fichier plugin.jar.

    En espérant t'avoir aidé.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    958
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 958
    Points : 141
    Points
    141
    Par défaut execution d'une applet
    Bonjour et merci de ta réponse.

    Je vais au plus vite récuperer ce fichier d'archive plugin.jar et retester une fois qu'il sera installé.
    Je reviens vers le forum dès que c'est fait.


    Cordialement
    new_wave
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. [SHADOKS]

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    958
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 958
    Points : 141
    Points
    141
    Par défaut plugin.jar et execution d'une applet
    Merci de ton conseil.
    pour répondre à ta question, je travaille avec la version de jdk jdk1.6.0_03

    Je suis donc allé à cet endroit
    C:\Program Files\Java\jdk1.6.0_03\jre\libet ai copié le fichier pmlugin.jar pour le placer dans le repertoire bin où se trouve le fichier firstapplet.class.
    Cela ne fonctionne toujours pas.
    Je pense que cela peut également provenir de firefox qui n'accepte pas les applet java.
    J'ai lu que pour permettre de les lire il faut aller dans menu
    dans les options internet : menu Outils > Options dans l'onglet Contenu : cochez "autoriser le Java", sous Firefox.
    Dans le menu proposé , je ne vois que menu outils( je ne comprends pas ce que signifie "options internet)+ options : quand je clique sur l'onglet "Contenu" je ne vois pas de possibilite de cliquer"autorise le java".
    Si tu as une solution à me proposer, je suis preneuse!

    Cordialement.
    new_wave
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. [SHADOKS]

Discussions similaires

  1. Appeler une méthode d'une applet dans une jsp
    Par salmoucha10 dans le forum Applets
    Réponses: 1
    Dernier message: 11/01/2011, 19h25
  2. Réponses: 3
    Dernier message: 29/04/2008, 14h14
  3. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  4. [applet] ouvrir une applet dans une fenetre
    Par rohel dans le forum Applets
    Réponses: 4
    Dernier message: 19/02/2005, 00h57
  5. [Applet] Ouvrir une applet dans une page HTML
    Par debutant java dans le forum Applets
    Réponses: 4
    Dernier message: 04/06/2004, 17h11

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