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 :

Reconnaissance des types corba de type structure


Sujet :

CORBA

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 298
    Points : 85
    Points
    85
    Par défaut Reconnaissance des types corba de type structure
    Bonjour dans un code Java que j'utilise pour reconnaitre des types corba comme suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    case (TCKind._tk_struct):
    		{
    			
    			System.out.println("Test structure type case name is:"+element.name);
    			System.out.println("Test structure type case name is:"+element.value.type().toString());
    			System.out.println("Test DateIHelper case :"+DateIHelper.type().toString());
    			System.out.println("Test DateTimeIHelper case :"+DateTimeIHelper.type().toString());
    			System.out.println("Test MoneyIHelper case :"+MoneyIHelper.type().toString());
    			
    			//The 3 structures : DATEI, DATETIMEI and MONEYI
    			if(element.value.type().equal(DateIHelper.type()))
    				return Types.DATE;
    			if(element.value.type().equal(DateTimeIHelper.type()))
    				return Types.DATETIME;
    			if(element.value.type().equal(MoneyIHelper.type()))
    				return Types.MONEY;
    			
    		}
    Dans les logs ça me sort:

    Test structure type case name is:COS_ACTIVATION_DATE
    Test structure type case name is:com.sun.corba.se.internal.corba.TypeCodeImpl@ecb281 =
    struct DateI = {
    long day;
    long month;
    long year;
    }
    Test DateIHelper case :com.sun.corba.se.internal.corba.TypeCodeImpl@182da3d =
    struct DateI = {
    long day;
    long month;
    long year;
    }
    Test DateTimeIHelper case :com.sun.corba.se.internal.corba.TypeCodeImpl@1ec8909 =
    struct DateTimeI = {
    longlong time;
    }
    Test MoneyIHelper case :com.sun.corba.se.internal.corba.TypeCodeImpl@497934 =
    struct MoneyI = {
    double amount;
    unbounded string currency;
    }


    Du coup mon type est bien une structure la meme que celle de la classe DateIHelper mais mon code ne reconnait pas ça.

    Est ce qeu cela a un rapport avec le fait que :
    1- mes classes sont générés à partir des fichiers IDL
    2- ou le orb que j'utilise
    Je vois pas
    Mercii

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 298
    Points : 85
    Points
    85
    Par défaut Rapport avec utilisation de l'ORB TAO??
    Est ce que cela peurt voir un rapport avec l'utilisation de l'ORB TAO?
    d'ailleurs un ORB TAO ça sert à koi
    car dans mon cas
    tout ce que j'ai fait c'est de regénérer mes classes à partir des fichiers IDL en jdk1.4.


    Merci

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 298
    Points : 85
    Points
    85
    Par défaut ORB TAO ou ORB de java
    Pour vérification,
    dans la doc que j'ai c'est marqué :

    Côté client, il est possible d’utiliser l’ORB TAO ou l’ORB de java qui est fourni en standard dans tous les JRE.

    Comme solution gardée, j'ai utilisée la 2eme solution est ce que cela peut il avoir un impact sur l'histoire des structures?
    Ou c'est peut etre l'initialisation de l'ORB ?


    Merci

  4. #4
    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,

    Est ce que cela peurt voir un rapport avec l'utilisation de l'ORB TAO?
    d'ailleurs un ORB TAO ça sert à koi
    TAO est un ORB C++, c-a-d une implémentation en C++ de CORBA.
    Il peut communiquer avec toute autre application utilisant un ORB standard (et donc l'ORB du JRE).
    Je ne pense pas que le problème soit lié à TAO, car les 2 ORBs (TAO et JRE) doivent se transmettre les types de manière standard et interopérable. Les TypeCodes doivent donc pouvoir être comparés.

    Dans le code de com.sun.corba.se.internal.corba.TypeCodeImpl.equal() et dans le cas d'une struct, ce ne sont pas seulement les types des membres de la struct qui sont comparés, mais aussi les RepositoryID de la struct et de ses membre (donné via l'opération TypeCode.id())
    Qu'affiche le code suivant ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    System.out.println("Test structure type case RepositoryID is: "+element.value.type().id());
    for (int i = 0 ; i < element.value.type().member_count() ; i++)
        System.out.println("   struct member "+i+" : "+element.value.type().member_type().id());
    
    System.out.println("Test DateIHelper case RepositoryID is: "+DateIHelper.type().id());
    for (int i = 0 ; i < DateIHelper.type().member_count() ; i++)
        System.out.println("   struct member "+i+" : "+DateIHelper.type().member_type().id());

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/01/2014, 22h34
  2. Réponses: 5
    Dernier message: 22/12/2009, 13h09
  3. Types Corba et structures
    Par Lolitaaa dans le forum CORBA
    Réponses: 4
    Dernier message: 02/12/2009, 11h54
  4. programmation corba: le type "sequence"
    Par Kali dans le forum CORBA
    Réponses: 4
    Dernier message: 28/08/2005, 16h09
  5. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48

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