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

Java Discussion :

Transferer une variable dans un autre projet


Sujet :

Java

  1. #1
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut Transferer une variable dans un autre projet
    Salut à tous,
    Je cherche à transférer une classe étant dans un autre projet

    Voici le résumé de la classe que je veux transférer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class XmlComponent{
        .......  
        public XmlComponent(){}
     
       .....
        public String toString(){
            return new StringBuffer("Name : ").append(name).append(", ")
                .append("isEnable : ").append(isEnable).append(", ").append("Path : ").append(path).append(", ").append("Position : ").append(position).append(", ").append("Size : ").append(size).append(", ").append("Color : ").append(color).append(", ").toString();
        }
    Voici comment je l'appelle dans mon deuxiéme fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    import eldoonParser.edXml.XmlComponent;
     
    public class EdComponentsView extends ViewPart {
     
     
        public void createPartControl(Composite parent) {
        	XmlComponent List = new XmlComponent();
                   System.out.println("xmlComponent");
    Le probleme c'est que je voudrais récupérer les valeurs calculés par mon premier fichier et que je récupère des variables vides. J'ai réussi à transférer la classe mais pas les variables avec leurs valeurs..
    Comment faire?

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Je ne comprend pas bien ton soucis de transfert de variable, classe, mais tu si veux récupérer le résultat d'une méthode de XmlComponent dans EdComponentsView, tu n'as qu'à l'appeler.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void createPartControl(Composite parent) {
        	XmlComponent list = new XmlComponent();
                   String a = list.toString();
     System.out.println(a);
    Si c'est ton problème, je te conseille de regarder ce tutoriel.

    A+.

  3. #3
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    Oui, c'est ca mon probleme et j'avais deja vu ce lien...

    Par contre je viens de voir que je m'étais trompée de variable. Donc je refait:

    Programme de base:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class XmlEldoonHandler extends DefaultHandler{
      ....    
        public List<XmlComponent> getComponents(){
        	    	System.out.println(xmlCompList);         return xmlCompList;
    Je veux récupérer ce xmlCompList dans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import eldoonParser.edXml.XmlEldoonHandler;
    
    public class EdComponentsView extends ViewPart {
    
     ....    
    
        public void createPartControl(Composite parent) {
        	    ....	
        	XmlEldoonHandler list = new XmlEldoonHandler();
            String a = list.toString();
            System.out.println(a);         
    ...
    Le programme me renvoit: eldoonParser.edXml.XmlEldoonHandler@174faf5

    Au lieu de:[Name : PlcMgr, isEnable : true, Path : D:/Workspace/java/java_svn/eldoonEclipseProject/trash/PlcMgr.o, Position : 3,500, Size : 10, Color : green, , Name : IoMgr, isEnable : true, Path : D:/Workspace/java/java_svn/eldoonEclipseProject/trash/IoMgr.a, Position : 10,10, Size : 10, Color :.....

    J'ai mis en couleur les résultats et les lignes correspondantes..

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Attention, c'est la méthode toString pour XmlComponent que tu as fait un Override mais pas pour XmlEldoonHandler. Sauf que si XmlEldoonHandler l'hérite de XmlComponent.

    A+.

  5. #5
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    Je n'ai pas trop compris ton message..

    J'ai changé quelque chose, qui devrait etre plus proche de ce qu'il faut faire mais j'ai encore la valeur "null".

    Le fichier qui calcule ce que je veux:

    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
     
     
    ......................
     
    public class XmlEldoonHandler extends DefaultHandler{
        //résultats de notre parsing
        private List<XmlComponent> xmlCompList;
        public XmlComponent xmlComponent;
     
    .....................................    
     
        public List<XmlComponent> getComponents(){
        	System.out.println("IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIii"); 
        	System.out.println(xmlCompList); 
            return xmlCompList;
        }
     
    }
    Fichier ou je veux récupérer ce qui est stocké dans "xmlCompList":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import eldoonParser.edXml.XmlEldoonHandler;
     
     
     
     
     
     
    public class EdComponentsView extends ViewPart {
    ............................
      	XmlEldoonHandler a = new XmlEldoonHandler();
            List<XmlComponent> b = a.getComponents();
     
            System.out.println(b);
    ......................
    Je récupère bien le : "System.out.println("IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIii"); " dans le second fichier mais aussi la valeur "null" pour la suite..

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    ça affiche null car l'objet n'est pas instancié par un new .
    Tu ne pourras avoir
    D:/Workspace/java/java_svn/eldoonEclipseProject/trash/PlcMgr.o, Position : 3,500, Size : 10, Color : green,
    que pour toString de la classe XmlComponent et de ses descendances (héritage).
    Je te conseille de revoir les concepts sur les POO.

    A+.

  7. #7
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    Ben si je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     XmlComponent xmlCompList = new XmlComponent();
            String b = xmlCompList.toString();
            System.out.println(b);
    J'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Name : null, isEnable : false, Path : null, Position : null, Size : null, Color : null
    Il ne récupère pas les calculs qu'il a fait..

  8. #8
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Dans ton code, tu ne fais pas d'appels à des méthodes qui fait de calcul mais tu l'instancies seulement (ses propriétés ne sont pas initialisés).

  9. #9
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    Oui mais les calculs ont deja été fait au préalable. Il ne faut pas les refaire si?

    En fait, mon programme est séparé en 2 projets, un pour le graphique (interface), l'autre pour le calcul.

    La, le projet "calcul" crée cette liste et moi j'aimerais la récupérer telle qu'elle est dans le projet "graphique".

    Il faut faire autrement du coup?

  10. #10
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Comme j'ai dit, tu n'as pas fait de calcul (appelé la/une méthode qui fait le calcul) mais tu as seulement instancier l'objet.

  11. #11
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    Si j'ai fait les calculs. J'ai juste pas montré le code qui les fait.

    J'ai 2 projets d'une dizaine de fichier chacun, je vais pas tout coller ici.

    Mon projet "Calcul", fait les calculs, je peux l'assurer, et il affiche dans la console le résultat que je souhaite.

    Je veux coller ce résultat dans mon autre projet ("graphique"), sans refaire aucun calcul, qui est l'interet de la maneuvre.

    Je veux juste prendre un "string" produit dans un projet et l'utiliser dans un autre.

  12. #12
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    XmlComponent xmlCompList = new XmlComponent();
            String b = xmlCompList.toString();
    b.laMethodeQuiFaitLesCalculs();//je ne sait pas quoi
            System.out.println(b);
    Sinon, je te conseille de revoir un tuto sur le POO java.

    A+.

  13. #13
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 182
    Points : 59
    Points
    59
    Par défaut
    J'ai créé un fichier properties, cela fonctionne bien ca m'évite de refaire les calculs, sinon mon projet n'avait pas de sens.

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

Discussions similaires

  1. récupérer une variable dans un autre swf
    Par sonico dans le forum Flash
    Réponses: 0
    Dernier message: 04/11/2009, 11h25
  2. Récuperer une variable dans un autre cadre (frame)
    Par melhima dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 25/07/2006, 13h32
  3. Réponses: 7
    Dernier message: 27/04/2006, 16h58
  4. Shell - Récupérer une variable dans un autre fichier
    Par claralavraie dans le forum Linux
    Réponses: 9
    Dernier message: 11/01/2006, 16h25
  5. Réponses: 5
    Dernier message: 05/04/2005, 11h53

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