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

API standards et tierces Java Discussion :

setProperty getProperty problem


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut setProperty getProperty problem
    Bonjour

    j'ai un pb avec avec les propriétés.

    j'ai un tread qui définit des propriétés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
                	String inUrl1 = "file:data/inbox";
                   	properties.setProperty(inUrl1 + ".origine", "ABC");
                  	...
                    inUrl2 = "file:data/inbox2";
                   	properties.setProperty(inUrl2 + ".origine", "DEF");
    ce même thread passe l'url à un routeBuilder de Camel ainsi que l'objet properties. le route builder crée des routes camel et instancie un bean qui garde une référence sur les propriétés.

    camel démarre la route et lance plusieurs treads

    parmis ces treads il y en a un qui appelle une méthode de l'instance du bean.

    en mode debug je vois bien l'objet properties avec son contenu
    je vois bien mes deux propriétés avec leur clef

    "file:data/inbox.origine" et "file:data/inbox2.origine"
    dans cette méthode je récupère de camel l'url d'origine et j'ai
    "file:data/inbox?option1=...."
    je fais donc un split pour récupérer l'url d'origine et j'obtiens
    "file:data/inbox"

    mais je ne parviens pas à faire mon get.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		String uri = exchange.getFromEndpoint().getEndpointUri();
    		String[] part = uri.split("\\?");
    		uri = part[0].toString();
                    origine = properties.getProperty(uri + ".origine");
    le getProperty retourne toujours null
    uri + ".origine" me donne pourtant bien "file:data/inbox2.origine"

    si j regarde de plus pres dans mon débuguer
    je vois que la propriété est définie ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    properties [
       {key : "file:data/inbox.origine" :   id105, value : "ABC"},
       {key : "file:data/inbox2.origine" : id144, value : "DEF"},
    ]
    mais le résultat de uri + ".origine" contient bien la même chaine de caractère mais avec un id d'objet en mémoire différent id192

    j'ai essayé avec un variable statique pour voir si mon getProperty retournait quelque chose et il m'envoie effectivement "DEF"

    Je mais donc dans mes propriété une valeur avec une chaine donnée
    mais je ne peux pas la récupérer car la chaine que j'utilise alors bien ayant la même valeur n'est pas le même objet.

    je n'ai pas d'autre possibilité pour connaitre la source que d'utiliser le getEndpointUri c'est le seul élément que j'ai à ma disposition.
    il me parait fou que le système de propriété ne se base pas sur une comparaison de valeur mais d'objet
    il me parait évident qu'on n'a jamais la garantie d'avoir le même objet.

    A+JYT

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Re preuve est qu'on ne voit que ce qu'on veut voir.

    lorsque je définissais ma inUrl celle-ci était incomplète du point de vu de camel

    comme il est gentil il a tout seul ajouté la partie manquante
    du coup dans le get je n'avais plus exactement la même chose que ma clef
    A+JYT

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

Discussions similaires

  1. Probleme de reflexion avec GetProperties
    Par Seth77 dans le forum C#
    Réponses: 2
    Dernier message: 16/05/2014, 11h51
  2. probleme avec le getProperty
    Par thesorrow dans le forum Servlets/JSP
    Réponses: 20
    Dernier message: 21/03/2007, 21h40
  3. Probleme sur les chaines de caractere
    Par scorpiwolf dans le forum C
    Réponses: 8
    Dernier message: 06/05/2002, 19h01
  4. [Kylix] Probleme d'execution de programmes...
    Par yopziggy dans le forum EDI
    Réponses: 19
    Dernier message: 03/05/2002, 14h50
  5. [Kylix] Probleme de nombre flottant!!
    Par yopziggy dans le forum EDI
    Réponses: 5
    Dernier message: 02/05/2002, 10h13

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