Rmi exemple simple

Terminaison. Prise. Notre RMIInterface n`a qu`une seule méthode; il reçoit un paramètre String et retourne String. Créez une interface qui étend l`interface prédéfinie Remote qui appartient au package. Par défaut, le registre s`exécute sur le port TCP 1099. SocksSocketImpl. Il serait inhabituel pour notre objet distant de lever un RemoteException puisque cette exception est généralement réservée à la bibliothèque RMI pour déclencher des erreurs de communication au client. Nous utilisons le UnicastRemoteObject statique. Maintenant, démarrez le service de Registre à l`aide de l`outil rmiregistry. Pour «rechercher» le serveur, le client utilise un objet RMIInterface qui «recherche» une référence pour l`objet distant associé au nom que nous passons en tant que paramètre. Le stub est un objet, agit comme une passerelle pour le côté client.

Dans cet exemple, nous sommes en cours d`exécution le serveur et les applications clientes, dans la même machine afin que nous utilisons localhost. Pour qu`un appelant (client, homologue ou applet) puisse invoquer une méthode sur un objet distant, cet appelant doit d`abord obtenir un stub pour l`objet distant. Étant donné que nous allons exécuter le registre RMI sur l`ordinateur local et le port par défaut 1099, nous ne passons aucun paramètre à getRegistry. L`interface doit toujours être publique et étendre Remote. Créez une classe cliente à partir de laquelle vous souhaitez appeler l`objet distant. Si aucun nom d`hôte n`est spécifié, NULL est utilisé comme nom d`hôte indiquant que l`adresse de l`hôte local doit être utilisée. Donc, il est recommandé de passer par notre tutoriel JavaFX avant de continuer. Prise. Réglage du Java. Créer et exécuter le programme d`application serveur l`étape suivante consiste à créer le programme d`application serveur et à l`exécuter sur une invite de commandes distincte.

Merci pour la grande introduction au sujet. Connection (TCPChannel. Disons MachineA et MachineB, machineA est situé aux États-Unis et MachineB en Inde. Donc, n`importe qui a une idée d`où il vient. Nous tapons un nom dans le champ de saisie (ex. Ce client obtient d`abord le stub pour le registre en appelant le LocateRegistry statique. Connect (AbstractPlainSocketImpl. Le RMI fournit une communication à distance entre les applications à l`aide de deux objets stub et squelette. Canal.

Le code ci-dessous vous donnera la base de Java RMI avec un exemple très simple d`un modèle de communication serveur-client. Juste pour clarifier. Ouvrez le dossier où vous avez stocké tous les programmes et compilez tous les fichiers Java comme indiqué ci-dessous. Le squelette est un objet, agit comme une passerelle pour l`objet côté serveur. Maintenant, les services RMI doivent être hébergés dans un processus serveur. Ici, nous avons créé une classe nommée ImplExample et implémenté l`interface Hello créée à l`étape précédente et fourni corps pour cette méthode qui imprime un message. MasterSocketFactory. Socket (RMIMaster SocketFactory.

Par exemple, la référence peut être obtenue en tant que paramètre ou valeur de retour à partir d`un autre appel de méthode distante. Si vous ne spécifiez pas le numéro de port, il utilise un numéro de port par défaut. La classe d`implémentation Server implémente l`interface distante Hello, fournissant une implémentation pour la méthode distante sayHello. Pour le client, la bibliothèque RMI créera dynamiquement une implémentation appelée stub. La première chose que nous devons faire est de compiler nos sources. Enfin, nous créons le client. Dans la méthode principale, nous lier le serveur sur localhost avec le nom “MyServer”. Cela vous retournera l`objet distant. Le stub est ce qui fait la magie de communiquer avec le serveur sur le protocole RMI sous-jacent. De plus, nous allons Rechercher le stub d`objet distant à l`aide de la clé unique délimitée.