UPPLET Applet Java d`Upload de Fichiers sur un serveur HTTP

Henri BOUITYVOUBOU & Josiane SEUMO
Formation en Informatique de Lille
Année Universitaire : 2004 – 2005
Encadreurs : Présentateurs :
Eric Piel Henri BOUITYVOUBOU
Philipe Dumont Josiane SEUMO
Jury :
Philippe Marquet



Remerciements
Nous tenons tout d’abord à remercier Monsieur Philippe DUMONT et Monsieur
Eric PIEL, membres de la West Team High Performance Computing (USTL), et
responsables du projet UPPLET, qui ont su nous accueillir parmi eux, et nous ont
permis de mener à bien ce projet.
Nous remercions, particulièrement Monsieur Philippe MARQUET,
responsable de Formation, mention Master1 Informatique à l’Université de
Sciences et de Technologies de Lille1 (U.ST.L.), qui nous a permis de réaliser ce
projet.
Aussi, nous remercions sincèrement Madame Patricia CARON, Secrétaire
Pédagogique (Licence, Master, Masters Professionnels – USTL- Lille1), pour sa
sympathie.
Et enfin, nous remercions tous nos collègues et amis, étudiants en Master1 dans
la dite Université.
Bien entendu, nous ne saurions joindre tous ces remerciements sans remercier
Monsieur Bernard CEURSTEMONT, Administrateur Systèmes et Réseaux au
Bâtiment M5 (USTL), qui a été pour une grande part, responsable du bon
fonctionnement des ordinateurs et du réseau du M5 que nous utilisâmes pour la
réalisation de nôtre projet.
Table des Matières
I- Introduction………………………………………………………………….…...04
1. Présentation de l’équipe d’encadrement (LIFL)……………………….....04
2. Contexte du Projet. ……………………………………………………....04
II- Principe et fonctionnement d’une Applet Java…………………………………..05
1. Signer une Applet : applet trusted………………………………………..06
2. Les connexions HTTP…………………………………………………...06
III- Diagrammes …………………………………………………………………...08
1. De Classes ………………………………………………………………08
2. De Séquences …………………………………………………………...09
IV- Description du Travail effectué………………………………………………...13
1. Signature numérique…………………………………………………….13
2. Les Requêtes http………………………………………………………...14
3. Les scripts PHP…………………………………………………………..15
4. Paramétrage……………………………………………………………...16
5. Filtre des Fichiers………………………………………………………...16
6. Prévisualisation (Thumbnails) des Fichiers Images………………………16
7. Rotation (90-180-270) et Transformation de ces fichiers images………..17
8. Hébergement sur site ……………………………………………………17
Conclusion
Bibliographie
ANNEXE
I- Introduction
En choisissant ce projet, nous avions la satisfaction que ce dernier regroupait nos ambitions,
en offrant une amélioration de nos connaissances sur la programmation réseau en JAVA et
en nous permettant de mieux appréhender les difficultés liées aux « trusted » applets.
Cela dit, nous savions que nous étions en face de trois problématiques majeures :
Comment réaliser une applet signée ?
Comment faire pour que le serveur http accueille nos fichiers dans un répertoire
donné.
Par quel moyen, plusieurs fichiers pouvaient-ils être, simultanément, transférés ?
1. Présentation de l’équipe d’encadrement
Le LIFL est une Unité Mixte de Recherche (UMR USTL/CNRS 8022) de l'Université des Sciences et
Technologies de Lille (USTL) et du Centre National de la Recherche Scientifique (CNRS), département des
Sciences et Technologies de l'Information et de la Communication. Le LIFL est partenaire de l'Unité de
Recherche INRIA Futurs, de l'IRCICA et de l'IRI. C’est donc au sein de cette unité (LIFL), que nous avons
été accueilli par monsieur Philipe Dumont et monsieur Eric Piel, responsables du projet UPPLET.
2. Contexte du Projet
Le but de ce projet qui nous a été accordé, consiste à développer une applet
permettant d’uploader plusieurs fichiers en même temps sur un serveur web. Nous
devions donc programmer une nouvelle applet proposant un haut degré de
fonctionnalité et de configurabilité.
Pour arriver à sa réalisation, une démarche de travail était établie :
1. Créer une applet signée.
2. Gestion de la partie réseau.
3. Création d’une interface graphique évoluée.
Ainsi, par simple connexion ouverte avec une socket, appliquée sur le port 80 d’un
serveur désigné, on pouvait directement contacter un script php, et par un
enchaînement threadé, tous les fichiers étaient transférés (voir fig.2.2.1).
II- Principe et fonctionnement d’une applet java.
Rappelons que les programmes écrits en Java ne sont pas compilés en code machine, mais dans une
forme indépendante de la plate-forme appelée le byte code. Ce byte code est ensuite interprété par une
machine virtuelle qui le traduit en instructions de la plate-forme d'accueil.
Cette particularité est, bien entendu, exploitable pour les programmes qui s'exécutent de façon
autonome, mais également pour déléguer l'environnement d'exécution à une autre application.
Le cas particulier des applettes est un exemple de cette délégation : au lieu d'être des programmes
exécutables en eux-mêmes, les applettes sont exécutées à l'intérieur d'une autre application telle qu'un
navigateur ou une application de visualisation comme appletviewer.
Les applettes sont populaires sur l’Internet car elles permettent, assez simplement, d'exécuter du code
dans le contexte graphique statique d'une page HTML.
Néanmoins, dans le cadre de notre projet, les applettes nous intéressent davantage en tant que «
délocalisation » de code chez un client, en l'occurrence le navigateur.
En effet, lorsqu'un navigateur rencontre une instruction d'inclusion d'une applette, il charge le code de
l'applette via le réseau et, une fois la classe chargée, il l'instancie et l'exécute. Le serveur qui distribue la
page HTML délègue alors au client navigateur l'exécution d'un programme.
Principe :
Le principe d’utilisation d’une applette est simple : un document HTML peut entre les
balises « applet » et « /applet », spécifier le chargement et l’exécution d’une classe, qui dérive de la
classe java.awt.Applet. A l’intérieur de celles-ci le nom de la classe de l’applette (ou le nom du
fichier contenant le Bytecode) doit être spécifiée avec le paramètre « code ». Les balises « param»
incluses entre les balises principales « applet », permettent de paramétrer l’exécution de l’applette.
Le navigateur associe alors une fenêtre, éventuellement vide, à cette applette, en fonction des
paramètres spécifiés dans les attributs des balises HTML.
Fonctionnalités :
Quatre méthodes principales jalonnent le cycle de vie d'une applette :
o init ( ) : est appelée après le chargement et l'instanciation de l'applette,
pour configurer l'objet avant qu'il soit utilisé ;
o start ( ) : est appelée une première fois après le retour de l'appel à la méthode
Init( ). Elle est ensuite appelée chaque fois que la fenêtre contenant cette
applette est de nouveau rendue visible par l'application de visualisation ;
o stop ( ) : est appelée chaque fois que la fenêtre contenant cette applette n'est
plus visible. Cette méthode est, en quelque sorte, duale de start () et elle peut,
par exemple, permettre de suspendre l'animation de l'applette ;
o destroy ( ) : est appelée pour terminer le cycle de vie de l'applette. Elle
permet de libérer les ressources allouées à l'applette pour les restituer au
système qui a hébergé son exécution.
Chacune de ces méthodes peut, bien entendu, être redéfinie pour attribuer un comportement
particulier à une applette.
1 / 26 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!