Bonjour,
Quand nous utilisons RMI nous sommes dans le cas suivant :
client (qui manipule Service) <-> proxy (client) ----- internet ------ proxy (serveur) <-> ServiceBean (objet qui implémente Service).
Service hérite de Remote.
Par contre, si nous utilisons des EJB, nous avons :
Service qui implémente EJBHome
ServiceBean qui implémente Service. et nous avons un fichier pour dire que ServiceBean à un liens avec ServiceHome
ServiceHome contient une méthode :
public Service create()....
Ou ce trouve l'implémentation de la classe qui utilise ServiceHome ?
De plus, côté clients, nous devons faire :
Avons nous un Proxy derrière home et bean ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Object ref = ctx.lookup("MonPremierBean"); ServiceHome home = (ServiceHome) javax.rmi.PortableRemoteObject.narrow(ref, MonPremierBeanHome.class); Service bean = home.create();
Pourquoi appeler avax.rmi.PortableRemoteObject.narrow ?
De plus, ou ce trouve la l'implémentation de la classe qui hérite de ServiceHome ?
Ne pouvons-nous pas directement récupérer une instance de type Service au lieu de faire toutes ses lignes ?
Partager