TD - JAVA RMI
Cours

(1) Faire fonctionner l'exemple du poly : serveur Rmi01 et client Rmi01

Récupérer les codes sources de l'exemple Rmi01 du poly : (4 fichiers .java).Compiler et créer les stubs et skeleton avec rmicDans la version de java d'aujourd'hui, un RMI ne peut fonctionner que si on a défini une politique de sécurité. Pour cela, copier le fichier policy dans le répertoire contenant les ".class".

Exécution :

serveur : % java -Djava.security.policy=./policy/ Rmi01Ser

client (dans une autre fenêtre) :

% java -Djava.security.policy=./policy/ Rmi01Cli

En lançant au bon moment (dans une autre fenêtre) netstat -a | grep 1099 on pourra voir :

% netstat -a | grep 1099tcp 0 0 *:1099 *:* LISTEN tcp 0 0 localhost.localdomain:1099 localhost.localdomain:48017 ESTABLISHED tcp 0 0 localhost.localdomain:48017 localhost.localdomain:1099 ESTABLISHED

Remarque :

Si l'idée de faire tourner une application distribuée sur un seul et unique CPU vous déplaît, n'hésitez pas à utiliser deux machines différentes (en remplaçant "localhost" par autre chose).

Remarque :

Dans ce cas, le client n'a pas obligatoirement besoin d'être en possession de la classe stub de l'objet distant au moment de son lancement, mais cette classe stub peut être envoyée de manière dynamique via le protocole HTTP depuis le serveur qui assure le service RMI. Si la classe stub n'est pas présente dans le chemin des classes du client, ce dernier sera lancé avec une précision supplémentaire pour désigner le répertoire père de la classe stub sur le web, par exemple :

Djava.rmi.server.codebase=http://tuxa.sme.utc/~sr03p065/

(2) Réaliser une application non distribuée gérant des objets "locaux" (page suivante)
AccueilImprimerRéalisé avec SCENARI