Bonjour,
J'ai un peu de mal à ingurgiter toutes les notions de registre JNDI.
Si je comprends bien, en Java il est possible de créer un registre qui met à disposition des services. Chaque élément de ce registre est composé d'un couple nom/service.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 // Ex: monRegistre.rebind("NomDuService", new Service());
Un client peu contacter une machine qui met à disposition son registre grâce au nom du service, et récupère ainsi l'instance du service.
1. Est-ce que l'instance de ce service est toujours commun à tous les utilisateurs ? Ex: Si un utilisateur A manipule l'attribut de Service, est-ce que l'utilisateur B aura la valeur modifiée par l'utilisateur A ?
Dans le tuto RMI, on se sert de Registry, tandis que dans celui de JM Doudoux (partie 25.3.3.3) on se sert de Naming.
2. Quels sont les différences ? (mis à par le fait que c'est plus court à écrire avec Registry).
Il existe une autre interface comme Registry et Naming qui contiennent des méthodes bind()/rebind() et lookup(), l'interface Context (qu'on utilise souvent avec l'implémentation InitialContext).
3.
a. Quelle est la différence entre ces trois interfaces et dans quels cas faut-t-il utiliser chacun ?
b. Pourquoi ne précise-t-on pas un numéro de port lors de l'utilisation de Context ? Est-ce que l'utilisation de Context ne se fait qu'en localhost ?
4. Est-ce que l'utilisation de @Resource est une syntaxe sucrée pour le lookup() ?
5. Est-ce que ce registre est stocké dans la RAM ou bien dans un fichier de la machine qui fait le bind()/rebind() ? Faut-t-il réinitialiser le registre à chaque démarrage, sinon comment s'y prendre ?
Je vous remercie
Partager