Applets

publicité
JAVA
Applets
IUT Elbeuf
S. HERAUVILLE
Présentation
"Application" JAVA
Exécutable au sein d'un navigateur
=>
Origine de l'essor de JAVA
1995 : applets graphiques
Aujourd'hui, nombreuses autres possibilités
(GIF, JPEG, Flash, ActiveX, ...)
IUT Elbeuf
S. HERAUVILLE
Définition
Exécution par navigateur
=>
S'assurer de la version Java supportée
Utilisation plug-in exécution Java
Exécution sur le poste client
=>
Chargement des .class
Lancement par page html
IUT Elbeuf
S. HERAUVILLE
Restrictions de sécurité
Opérations interdites :
- Communication avec un site internet autre que
la source de l'applet
- Téléchargement sur poste client
- Accès aux fichiers sur le système utilisateur
- Lancement d'un exécutable sur le client
! Le navigateur doit être paramétré correctement
IUT Elbeuf
S. HERAUVILLE
Classe Applet
Création d'une classe dérivée de Japplet
javax.swing.Japplet
Méthodes à surcharger :
init, start, stop, paint, destroy
! Pas de "main" pour une applet
IUT Elbeuf
S. HERAUVILLE
Méthode paint
Souris
API Windows
Clavier
Machine virtuelle JAVA
paint
Application
IUT Elbeuf
S. HERAUVILLE
Méthode paint
Paint :
Méthode appelée pour chaque
affichage
Appel via API Windows
(fenêtre visible, redimensionnement, ...)
Appel via logiciel
repaint()
IUT Elbeuf
S. HERAUVILLE
Méthodes applet
init :
chargement de l'applet
Start :
au démarrage applet
(lancement, retour, actualisation, ...)
Stop :
arrêt applet
Destroy : avant suppression
(suppression page, fermeture navigateur)
IUT Elbeuf
S. HERAUVILLE
Lancement Applet
<html><body>
<applet code="prog.class" height="50" width="345">
Votre navigateur doit-être compatible Java
</applet>
</body></html>
!
!
!
La dimension de fenêtre est définie dans la page html
Applet dans le même répertoire que page html
Balise "object" peut remplacer "applet"
IUT Elbeuf
S. HERAUVILLE
Paramètres supplémentaires
Paramètres à inclure dans la balise applet :
<align=...> Alignement de l'applet dans la page html
(left, right, texttop, baseline, ...)
suppression alignement par <br clear=...>
vspace, hspace : espacement avec texte
IUT Elbeuf
S. HERAUVILLE
Paramètres supplémentaires
Paramètres à inclure dans la balise applet :
<codebase="monrépertoire">
<codebase="URL">
chemin vers fichier java
adresse pour chargement
Remarque : URL peut renvoyer sur un site différent du
site initial
IUT Elbeuf
S. HERAUVILLE
Passage d'arguments
Récupération d'argument depuis la page html :
Inclure les arguments dans la balise applet
<applet ... >
<param name=Valeur value="30">
</applet>
Récupération des arguments :
String sv = getParameter("Valeur");
IUT Elbeuf
S. HERAUVILLE
Récupération des messages souris
Inclure les méthodes :
public
public
public
public
…
boolean
boolean
boolean
boolean
mouseDown(java.awt.event evt, int x, int y)
mouseUp(java.awt.event evt, int x, int y)
mouseDrag(java.awt.event evt, int x, int y)
mouseMove(java.awt.event evt, int x, int y)
x, y = coordonnées de la souris sur l’écran
! Doit retourner un booléen (true / false)
repaint() si modification de l’affichage
IUT Elbeuf
S. HERAUVILLE
Utilisation d'archives
Création d'archive java : format "jar"
- Chargement de tous les fichiers en une seule fois
- Compression des données
Création d'archive :
Jar cf NomArch.jar *.class *.gif
(rem : options ≈ tar)
Utilisation d'archive :
<applet code="MonProg.class" archive="MonProg.jar" ...
IUT Elbeuf
S. HERAUVILLE
Mise au point
Utilisation d'un navigateur supportant Java
- Charger la page html => Exécution de l'applet
Utilitaire appletviewer
- Exécute la page html, mais seule l'applet sera visible
Publication d'une applet sur internet
- Idem html
- Tous les fichiers doivent se trouver dans le
répertoire de la page html d'appel
IUT Elbeuf
S. HERAUVILLE
Mise en oeuvre Plug-in
Objectif : Exploiter la dernière version de Java
- Exécute les applets à la place du navigateur
- Doit être installé sur le poste client
(Téléchargement automatique si nécesaire)
=> Nécessite une modification de la page de code html
Balise applet => fonctionnement normal
Utilisation de l'utilitaire "HTMLConverter"
=> transforme l'appel standard en appel plug-in
IUT Elbeuf
S. HERAUVILLE
Certification de sécurité
Limitation des droits d’une Applet standard
Autorisations supplémentaires si Applet
certifiée (signature numérique):
- Clé publique
- Clé privée
- Certification par un organisme reconnu
IUT Elbeuf
S. HERAUVILLE
Certification d’Applet
- Création applet
- Cryptage par utilitaire => - Clé publique
- Clé privée
- Obtention d’un certificat
- Création archive
- Publication archive Applet + Clé publique
IUT Elbeuf
S. HERAUVILLE
Utilisation d’Applet certifiée
- Le client récupère le fichier + clé publique
- Utilisation outil de sécurité inclus dans SDK
=> Validation de l’archive (certificat de confiance)
Extraction archive à l’aide de la clé publique
- Exécution Applet avec autorisations définies
par navigateur
IUT Elbeuf
S. HERAUVILLE
Téléchargement