IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

CORBA Discussion :

POA et service de nommage


Sujet :

CORBA

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 26
    Points
    26
    Par défaut POA et service de nommage
    bonjour,
    j'ai 2 questions en corba que j'ai pas pu trouver une reponse.
    1er question:
    lorsque j'ai un objet activé dans un poa et cet objet enregistré dans le service de nommage et puis je desactive cet objet à travers du POA, mais je ne fais pas un unbind de coté du nommage.
    qu'est ce que c passe si le client appele cet objet ?

    2eme question:
    à quoi sert la methode connect(Object o) de la classe "org.omg.CORBA.ORB",et est ce qu'elle est remplaçable par une methode setORB(org.omg.CORBA.ORB orb) dans une classe "nomclasse" qui etends de "nomclassePOA" ?

    merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    encore aucune reponse ??

  3. #3
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 219
    Points : 302
    Points
    302
    Par défaut
    Bonjour,

    1er question:
    lorsque j'ai un objet activé dans un poa et cet objet enregistré dans le service de nommage et puis je desactive cet objet à travers du POA, mais je ne fais pas un unbind de coté du nommage.
    qu'est ce que c passe si le client appele cet objet ?
    Si c'est juste une désactivation de l'objet, mais que le process (et l'ORB) qui hébergeait l'objet tourne toujours, le client reçoit une exception org.omg.CORBA.OBJECT_NOT_EXIST.
    Si le process ou l'ORB sont arrêtés, le client reçoit une exception org.omg.CORBA.TRANSIENT.
    Ces deux exceptions héritent de org.omg.CORBA.SystemException.

    2eme question:
    à quoi sert la methode connect(Object o) de la classe "org.omg.CORBA.ORB",et est ce qu'elle est remplaçable par une methode setORB(org.omg.CORBA.ORB orb) dans une classe "nomclasse" qui etends de "nomclassePOA" ?
    La méthode connect(Object o) est deprecated depuis l'arrivée du POA. Elle doit maintenant renvoyer l'exception org.omg.CORBA.NO_IMPLEMENT. Cette méthode servait à connecter un objet CORBA à l'ORB, de sorte que les requêtes arrivant sur l'ORB pour cet objet soient redirigées vers son servant.
    Maintentant, l'activation de l'objet suffit, par exemple via l'opération _this(org.omg.CORBA.ORB orb) héritée de la classe "nomclassePOA".
    La méthode setORB(org.omg.CORBA.ORB orb) ne suffit pas. Elle ne fait qu'indiquer au stub quel est l'ORB à utiliser. La méthode _this(org.omg.CORBA.ORB orb) appelle setORB(orb), puis _this() pour l'activation.

    encore aucune reponse ??
    Hey! Nous aussi on bosse ...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    merci pour l'explication.
    en fait, je suis entrain de faire un projet et dans ce projet je dois developpez un agent qui permet de s'occuper de tous les autres service (start,activate,deactivate,destroy).
    mais je sais pas quel stratégie utiliser quand l'agent dois démarrer un service:

    -est ce que je dois instancier ce service à travers l'agent et l'attacher à un POA et puis j'active,deactive,detruire ce POA. ou
    -quand je veux démarrer un service, je le lance comme un processus externe (méthode main de ce service) qui s'enregistre lui même et quand je veux le detruire, je détruis le processus de ce service.

    Aussi, quel est la strategie la plus adapter concernant les POA's:
    -Agent dans le RootPOA et les services dans les POAs fils de RootPOA.
    -l'agent et les services sont dans les POAs fils de RootPOA
    sachant que je veux etre capable après de creer n agent et chaque agent responsable de k service (et dans ce cas, j'ai pensé à que les agent sont dans les POA fils de RootPOA et les services sont dans les POA fils de l'agent qui respoànsable).

    Merci

  5. #5
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 219
    Points : 302
    Points
    302
    Par défaut
    Qu'appelles-tu un "service" ? Quel services ces "services" rendent-ils ? Comment doivent-ils les rendre ?

    -est ce que je dois instancier ce service à travers l'agent et l'attacher à un POA et puis j'active,deactive,detruire ce POA. ou
    -quand je veux démarrer un service, je le lance comme un processus externe (méthode main de ce service) qui s'enregistre lui même et quand je veux le detruire, je détruis le processus de ce service.
    Tout dépend si tu veux que tes "services" tournent dans le même process ou dans des process différents. Si tu veux que tes "services" continuent de tourner même si l'agent s'arrête...

    Aussi, quel est la strategie la plus adapter concernant les POA's:
    Tout est possible! Même de tous les mettre sur le RootPOA (le plus simple), car de toutes façons, tu feras le lien entre un agent et ses services dans le code de ton agent (puisque c'est lui qui le gère).
    Tout dépend des policies dont tu as besoin pour les POA de tes agents et services...
    Ca dépend aussi si tu as besoin de désactiver tout les services d'un agent en même temps (dans ce cas, désactivation de leur POA).

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 26
    Points
    26
    Par défaut
    salut,
    un service c'est un simple "servant" qui offre un traitement particulier pour les clients.
    concernant l'agent, il est aussi un servant qui s'occupe des autres (servants "service"), donc il est le premier à activer puis depuis cet agent on peut piloter les autres.donc l'agent ne s'arrête pas.

    -concernant les POA, je veux que chaque agent se trouve dans un POA creer à partir du rootPOA.Mais les services sont dans des POAs qui sont creer à partir du POA de leur agent.mais quand je fais ça j'ai une erreur que je l'ai pas compris.

Discussions similaires

  1. convention de nommage pour un web service
    Par snopims_ dans le forum Services Web
    Réponses: 1
    Dernier message: 04/02/2008, 09h11
  2. Réponses: 1
    Dernier message: 11/12/2007, 17h34
  3. Différence entre LDAP et service de nommage
    Par dam21 dans le forum CORBA
    Réponses: 3
    Dernier message: 27/04/2005, 10h01
  4. [service de nommage] ajout de \
    Par gromite dans le forum CORBA
    Réponses: 1
    Dernier message: 03/01/2005, 22h35
  5. Service de nommage java C++
    Par Anonymous dans le forum CORBA
    Réponses: 3
    Dernier message: 15/04/2002, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo