Bonjour !
J'essaie de faire une petite application C++ qui utilise le Corba mais j'ai un petit problème ... je connais bien le C (et C++) mais moyen le Corba et ca vient surement de là ... (j'irais meme jusqu'a dire que je suis un padawan du Corba).
Bref, j'ai tappé mon code IDL, compilé : pas de problème
Idem pour le C++, compilé et toujours pas de problème
(je bosse sous Visual 6)
C'est à l'execution où ca coince.
Je lance l'annuaire à l'aide d'un .bat comme me l'a indiqué le cours et toujours pas de problèmes. Ligne de commande du bat :
1 2
| nameserv -OAhost localhost -OAport 12345
pause |
Par contre, j'ai une erreur quand je lance le .bat du serveur qui a été écrit comme ca :
1 2
| Serveur\Debug\Serveur -ORBInitRef NameServeur=corbaloc::localhost:12345/NameService
pause |
Et il me dit : "Impossible de trouver l'annuaire"
Voilà mon code C++ (qui pourrait aider) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
try
{
// Recherche d'une référence de type générique vers l'annuaire
obj = orb->resolve_initial_references("NameService");
// Cette référence est convertie en une référence de type Annuaire
CosNaming::NamingContext_var nc = CosNaming::NamingContext::_narrow(obj.in());
// Crée une nouvelle entrée pour l'annuaire
// La clé de recherche sera "MonServeur"
CosNaming::Name MonEntree;
MonEntree.length(1);
MonEntree[0].id = CORBA::string_dup("MonServeur");
MonEntree[0].kind = CORBA::string_dup("");
// Ajoute dans l'annuaire
nc->rebind(MonEntree, Lien_ior);
}
catch(const CORBA::ORB::InvalidName&)
{
cerr <<"Impossible de trouver l annuaire "<< endl;
return;
} |
Je me suis démerdé pour savoir d'où l'exception était levée et c'est sur la ligne :
obj = orb->resolve_initial_references("NameService");
J'ai pas installé ORBacus mais j'ai récupéré un répertoire OOC contenant plein de fichiers (librairies, programmes, ...).
L'installation est elle obligatoire ? (mon répertoire OOC fait 55Mo).
Pouvez vous m'aider dans la résolution de mon problème (qui dure depuis 3 jours quand meme) ou en me donnant des adresses de bons tutoriaux Corba - C++ sur le net ? (j'ai pas vraiment trouvé)
Merci beaucoup
Damien
Partager