Exemple de ce que tu veux faire, mais avec Jacorb + un port fixe pour le Naming Service (comme ça il est plus facile à retrouver).
Utiliser tnameserv:
tnameserv -ORBInitialPort 900
En fait tnameserv utilise le port 900 par défaut, mais ce sera plus clair.
Retrouver le NamingService dans ton programme:
Méthode 1 : directement dans le code
+ référence d'objet sous forme de corbaloc
1 2 3 4 5 6
| org.omg.CORBA.Object obj = orb.string_to_object("corbaloc::localhost:900/NameService");
NamingContext nc = NamingContextExtHelper.narrow(obj);
// Let's use the NameService
nc._is_a(org.omg.CosNaming.NamingContextHelper.id());
System.out.println("NameService is running"); |
Méthode 2 : avec "resolve_initial_references"
il faut mettre la référence d'objet dans un fichier de conf. Avec Jacorb on aura dans le "jacorb.properties" :
ORBInitRef.NameService=corbaloc::localhost:900/NameService
Et le code suivant retrouve ses petits :
1 2 3 4 5 6 7
|
org.omg.CORBA.Object obj = orb.resolve_initial_references("NameService");
NamingContext nc = NamingContextExtHelper.narrow(obj);
// Let's use the NameService
nc._is_a(org.omg.CosNaming.NamingContextHelper.id());
System.out.println("NameService is running"); |
Pour Orbacus :
d'après la très complète documentation :
http://www.orbacus.com/support/docs/...tml/wwhelp.htm
tu peux au choix:
- utiliser un fichier de configuration
avec la propriété
oc.orb.service.NameService=corbaloc::localhost:900/NameService
- utiliser des properties Java
la même que ci dessus mais mise directement dans le code Java.
- utiliser des command-line options
<visiblement plusieurs possibilités équivalentes>
-ORBnaming corbaloc::localhost:900/NameService
-ORBInitRef NameService=corbaloc::localhost:900/NameService
-ORBservice NameService corbaloc::localhost:900/NameService
Au moins un des moyens devrait fonctionner !
Après pour trouver le bon service de nommage qui a les qualités qui te conviennent tu peux regarder là : c'est une liste des ORBs et des services associés, mais je ne sais pas si elle est à jour.
http://www.puder.org/corba/matrix/
Partager