La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Exposé technique du 2 déc. 2008 Applettes et Java Web Start Délégation et déploiement R. M.Ingénieurs 2000 IR3.

Présentations similaires


Présentation au sujet: "Exposé technique du 2 déc. 2008 Applettes et Java Web Start Délégation et déploiement R. M.Ingénieurs 2000 IR3."— Transcription de la présentation:

1 Exposé technique du 2 déc Applettes et Java Web Start Délégation et déploiement R. M.Ingénieurs 2000 IR3

2 Sommaire Les applettes Présentation Créer et exécuter une applette La sécurité des applettes Les droits et les interdictions. Lever ces interdictions. Java Web Start (JWS) Présentation Déployer une application ok La sécurité

3 Les Applettes, cest quoi ? Programme Java qui sintègre dans une page Web. Interactivité. Graphique animé, lecteur vidéo, etc. Exécution du code côté client. Répartition de charge Multiplateforme et « multinavigateur ». Principale concurrent : Flash

4 Lapplette est chargée depuis un serveur puis exécutée sur le poste client. Processus de chargement page.html + Applet.class

5 Comment lire une Applette ? Pour linsérer dans une page Web (valide W3C) (préconisée par SUN) Pour lexécuter Un navigateur AppletViewer (JDK) appletviewer Toutes les applettes de la page sont exécutées

6 La balise La balise

7 Comment créer une applette ? public class MyFirstApplet extends Applet public void init() public void start() public void stop() public void destroy() public void paint() {…} } Cycle de vie AppletViewer : init() start() stop() destroy() Navigateurs récents: init()+start() stop()+destroy()

8 Différents dialogues possibles (1/2) Entre applets dune même page getAppletContext().getApplet("A1"). javaMethod() De JavaScript à une applet document.applets[A1'].javaMethod() Des applets à JavaScript Ajouter lattribut mayscript="true" Importer plugin.jar (JRE) new JSObject.call("javascriptMethod")

9 Différents dialogues possibles (2/2) Avec le serveur qui héberge lapplette URLConnection con = new URL(getCodeBase(), «ServletName »).openConnection() OutputStream stream = con.getOutputStream()

10 Sécurité des applettes La SandBox Protéger le client Pas daccès aux fichiers, périphériques et au réseau du client. Lève SecurityException Accès non restreint ? Modifier les politiques de sécurité du client Signer numériquement lapplication.

11 Les politiques de sécurité Etendre les droits Un fichier côté client grant codeBase "http://localhost:8080/AppletServlet/MstscNS.jar" { permission java.io.FilePermission "c:\\windows\\system32\\mstsc.exe", "execute"; }; A éditer à la main ou avec policytool (JRE). Prendre en compte la nouvelle politique appletviewer –H-Djava.security.policy=« mypolicy » La placer dans {USER.HOME}/.java.policy

12 Signature numérique Lever les interdictions Archiver lapplication Créer un certificat keytool -genkey -keystore myKeystore.ks -alias mykey Signer larchive jarsigner –keystore myKeystore.ks myappli.jar mykey

13 Conclusion Avantages Technologie mature Sintègre facilement Saffranchir des limitations de HTML Bibliothèques Java consistantes Les applettes ne sont pas mortes Java FX

14 Java Web Start : Présentation Déploiement dapplications ou dapplettes Java Téléchargement des données. Installation / Exécution / Désinstallation Intégration Mises à jour automatiques A linitiative du client. Différent de System Management Server Equivalent à ClickOnce

15 Avantages Java Web Start La portabilité La maintenance La sécurité Les optimisations Mises à jour des fichiers anciens seulement (jardiff) Seules les ressources utilisées sont téléchargées Mises en cache (exécution hors ligne, lancement accéléré)

16 Lapplication est téléchargée, installée puis exécutée sur le poste client Processus de déploiement Descriptor.jnlp + Application.jar 2 Client JWS demande Application.jar 1 Demande Descriptor.jnlp

17 Aucune modification du code nest nécessaire. Archiver lapplication Créer fichier de lancement au format JNLP Ajouter le type MIME « application/x-java-jnlp-file jnlp ». Au niveau du serveur Web (Apache : fichier « mime.types ») Placer les archives + JNLP sur le serveur Web Déployer une application

18 Le fichier JNLP Structure (...)

19 Le fichier JNLP Information Nom de lapplication (…)

20 Le fichier JNLP Sécurité, Update et Resources

21 Le fichier JNLP Application arg1 arg2 Ou bien …

22 Lancer une application Java Web Start Pré-requis : Client JWS (inclus dans les JRE 1.4+) Avant installation Depuis un navigateur Web Start Appli En ligne de commande javaws Après installation À partir dun gestionnaire dapplications À partir dun raccourci créé sur le bureau

23 Lancer une application Java Web Start Le gestionnaire dapplications javaws -viewer

24 Identique aux applettes Exécution dans la SandBox Etendre les droits Mêmes solutions : Modifier les politiques de sécurité Signer numériquement les archives Nouvelle solution : lAPI JNLP Java Web Start : Sécurité

25 Etendre les droits sans signature numérique Librairie nécessaire « javaws.jar » (JRE) Fournit 11 services dont : PrintService : accès à limprimante FileOpenService/FileSaveService : accès aux fichiers en lecture / écriture Etc. Java Web Start : Sécurité LAPI JNLP (1/2)

26 FileOpenService fos = (FileOpenService) ServiceManager.lookup("javax.jnlp.FileOpenService"); FileContents[] fcs = fos.openMultiFileDialog(null, null); for (FileContents file : fcs) System.out.println(file.getName()); // lecture possible Java Web Start : Sécurité LAPI JNLP (2/2)

27 Facile à mettre en place Technologies complémentaires Migration dune applette en application desktop Solutions gratuites !Conclusion

28 Merci de votre attention. Questions ? R. M.Ingénieurs 2000 IR3


Télécharger ppt "Exposé technique du 2 déc. 2008 Applettes et Java Web Start Délégation et déploiement R. M.Ingénieurs 2000 IR3."

Présentations similaires


Annonces Google