90 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			90 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								05 décembre 2008
							 | 
						||
| 
								 | 
							
								Séance 3
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Cf. https://tetras.u-strasbg.fr/prive/pedagogie/LP/P51/index.php?menu=301
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								====== Cours ======
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Les applets, quoi ça ? =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Une applet est une application lancée sur la machine d'un client à partir d'un navigateur Web en appel à un serveur.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Mais il y a certaines limitations pour des raisons de sécurité.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Quelles sont les propriétés des applets ? =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Donner un nom à une applet sert pour faire communiquer les applets entres elles.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Même avec l'archive il faut dire quelle classe exécuter, donc la propriété CODE est obligatoire.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Appels de méthodes =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								init : une fois au chargement de la page
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								start : plusieurs fois après le démarrage de la page
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Activité principale d'une applet =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Dans le cas d'une applet, en général c'est pour un but graphique, pour cela on utilise la méthode paint() qui permet de redessiner l'applet.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								À cet effet on peut considérer la méthode paint() comme la méthode principale de notre applet.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Gestion des images =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								==== Récupération des images ====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Les images sont récupérées sur le serveur, via une URL relative donnée.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								getCodeBase : donne le répertoire de base de notre application sur le serveur.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								On rappelle qu'une applet ne peut charger des fichiers ou des choses QUE du serveur sur laquelle elle a été lancée.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								==== Affichage des images ====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								On utilise la méthode DrawImage()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								==== MediaTracker ====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Chargement asynchrone des ressources (média)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								waitForAll() : patient que toutes les images soient chargées.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Le contexte d'une applet =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Permet d'accéder au navigateur ou aux autres applets de la page HTML.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Déploiement d'une applet =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Pour vérifier qu'une applet fonctionne, on peut tester sans navigateur web, à l'aide d'**appletviewer**
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Fichiers d'aide HTML : pas des fichiers auquels on veut accéder directement par notre serveur Web. Le navigateur ne peut pas accéder directement à l'archive. C'est l'applet qui accède aux fichiers contenus dans notre archive.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								===== Conclusion =====
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Les applets c'est quand même le PHP et l'AJAX ne suffisent pas de faire ce qu'on veut, et les clients veulent pas une application lourde, mais possèdent JRE.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Avantage des applets : rien n'est exécuté sur le serveur.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Inconvénient : demande une certaine puissance.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								====== Démonstration ======
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Démonstration de UNIV-R sur les serveurs de l'université.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 |