1 / 21

Les applets

Les applets. Plan. Architecture mise en œuvre (matérielle et logicielle) Implémentation d’une applet Transformation d’une application graphique en une applet Le chargement des applets Les fichiers JAR Le cycle de vie d’une applet Passage de paramètres à une applet

Download Presentation

Les applets

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Les applets

  2. Plan • Architecture mise en œuvre (matérielle et logicielle) • Implémentation d’une applet • Transformation d’une application graphique en une applet • Le chargement des applets • Les fichiers JAR • Le cycle de vie d’une applet • Passage de paramètres à une applet • Restrictions imposées à une applet

  3. Architecture matérielle et logicielle mise en œuvre

  4. Implémentation d’une applet (1/4) • Il faut tout d’abord écrire un programme Java. import java.awt.*; import javax.swing.*; class Panneau extends JPanel { public void paintComponent(Graphics g) { super.paintComponent(g); g.drawString("Bienvenue dans mon applet !", 75, 100); } }

  5. Implémentation d’une applet (2/4) public class Applet1 extends JApplet { public void init() { // Le gestionnaire mise en forme par défaut est de type // BorderLayout. Container contentPane = getContentPane(); contentPane.add(new Panneau()); } } • Ce programme doit être compilé en un fichier de classes (fichier(s) « .class »).

  6. Implémentation d’une applet (3/4) • Enfin, écrire un fichier HTML indiquant le fichier à charger <HTML> Début fichier HTML <BODY> Début corps <APPLET Commande applet CODE="Applet1.class" Nom du fichier contenant les bytecodes de l’applet WIDTH=300 Largeur initiale de la fenêtre consacrée à l’applet HEIGHT=300 Hauteur initiale de la fenêtre consacrée à l’applet > </APPLET> Fin commande applet </BODY> Fin corps </HTML> Fin fichier HTML

  7. Implémentation d’une applet (4/4) • L’arbre d’héritage de cette application est :

  8. Remarques • La gestion événementielle dans une applet est identique à celle vue lors de la programmation graphique. • Une applet peut être téléchargée à partir d’un répertoire autre que le répertoire de base. Par exemple : < APPLET CODE="Applet1.class" CODEBASE="Rep" WIDTH=300 HEIGHT=300 >

  9. Transformation d’une application graphique en une applet (1/2) • Pour convertir une application graphique en une applet, il faut : • Supprimer la méthode main de l’application. Le premier objet devant être créé est spécifiée dans la page HTML. • Remplacer la classe JFrame par une classe JApplet . Rendre cette classe public, c’est indispensable au chargement de l’applet. Généralement, cette classe ne sera pas dotée d’un constructeur : les activités réalisées dans le constructeur de la fenêtre principale de l’application seront reportées dans la méthode init de l’applet.

  10. Transformation d’une application graphique en une applet (2/2) • Eliminer l’appel à setSize. Pour les applets, le dimensionnement dépend des paramètres WIDTH et HEIGHT du fichier HTML. De même, si l’application effectue un appel à setTitle, il faut le supprimer. En effet, les applets n’ont pas de barre de titre, mais rien n’empêche de donner un titre à la page Web en tant que telle via la balise HTML <TITLE>. • Il faut aussi supprimer l’appel à addWindowListener, car une applet ne peut être fermée : elle s’achève quand on sort du navigateur. • Créer une page HTML avec la balise appropriée au chargement du code de l’applet.

  11. Exercice Transformer le programme Java “ Calculatrice ” afin qu’il devienne une applet. Puis écrire le fichier HTML qui permettra le chargement de l’applet précédente dans le navigateur du poste client.

  12. Correction exercice • Fichier source AppletCalculatrice.java • Fichier source AppletCalculatrice.html

  13. Le chargement des applets (1/2) Que se passe-t-il lorsque le navigateur rencontre dans le fichier HTML précédent la ligne suivante ? <APPLET CODE="AppletCalculatrice.class" WIDTH=200 HEIGHT=200>

  14. Le chargement des applets (2/2)

  15. Les fichiers JAR(Java Archive 1/2) • Ils permettent de regrouper dans un seul fichier tous les éléments nécessaires au fonctionnement de l’applet (fichiers de classes, images, audio) => Diminution du nombre de connexions. • Pour créer un fichier d’archive jar cvf AppletCalculatrice.jar AppletCalculatrice.class PanneauCalculatrice.class  ou jar cvf AppletCalculatrice.jar *.class 

  16. Les fichiers JAR(Java Archive 2/2) • Pour utiliser une archive JAR dans un fichier HTML. <APPLET CODE="AppletCalculatrice.class" Nom de l’applet ARCHIVE="AppletCalculatrice.jar" Fichier JAR WIDTH=180 HEIGHT=180> </APPLET> • Le fichier AppletCalculatrice.jar est téléchargé depuis le serveur WEB avant le chargement de l’applet AppletCalculatrice. • Chaque fois, qu’un fichier de classes est requis, le navigateur le recherche dans le fichier JAR. S ’il n ’est pas présent alors il est recherché sur le serveur WEB.

  17. Le cycle de vie d’une applet Initialisation de l’applet Nouveau init( ) start( ) Applet stoppée Applet active stop( ) destroy() start( ) Mort

  18. Passage de paramètres à une applet (1/2) • Une applet peut recevoir des paramètres en provenance du fichier HTML. Par exemple : <HTML> <BODY> <APPLET CODE = "Infos.class" WIDTH = 250 HEIGHT = 100 > <PARAM NAME = "Texte", VALUE = "Un message"> <PARAM NAME = "Nombre", VALUE = "2000"> </APPLET> </BODY> </HTML>

  19. Passage de paramètres à une applet (2/2) import javax.swing.* ; public class Infos extends JApplet { public void init () { String nomTexte = getParameter ("Texte") ; String nomNombre = getParameter ("Nombre") ; int nombre ; System.out.println ("Texte = " + nomTexte) ; System.out.println ("Nombre = " + nomNombre) ; nombre = Integer.parseInt(nomNombre) ; } }

  20. Restrictions imposées aux applets (1/2) • La machine virtuelle Java interdit à une applet de : • Lancer un programme exécutable localement. • Lire ou d’écrire dans le système de fichiers local. • Communiquer avec un hôte différent du serveur d’où elle provient. • Obtenir des informations relatives au système local à l’exception d’informations banales telles que : version de Java utilisée, les caractères de fin de ligne, etc.

  21. Restrictions imposées aux applets (2/2) • Ces restrictions pouvant être trop fortes dans certains cas, il est possible de créer des applets certifiés. • L’applet transporte alors un “ certificat sécurisé ” qui donne l’origine de l’applet. Son origine étant garantie, il est alors possible d’attribuer à l’applet des droits supplémentaires.

More Related