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

Langage Java Discussion :

fichier properties non trouvé


Sujet :

Langage Java

  1. #21
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    J'ai fais les petites améliorations. Merci beaucoup.

    Pour le prop de l'autre classe,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    FormVide = prop.getProperty("repertoireFormulaireVide")
    je fais juste

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private static Properties prop;
    Voilà. Je fais juste une simple déclaration de variable.

  2. #22
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Il faudrait le lier avec le fichier properties 2 ou tout du moins avec prop2 alors que là il n'y aucune laison, c'est pourquoi tu as un nullPointerException.

    Ton prop n'est lié à aucun fichier dans cette classe , il faudrait se servir du prop2 ici.

    Tu comprends d'où vient le problème ?

  3. #23
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Euh, non. Désolé je vois pas. Pourtant j'ai l'impression que c'est tout bête.

  4. #24
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Montre moi le code de la classe, la classe où tu as l'erreur.

  5. #25
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Voici le code la classe :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
     
    public class Test {
     
     
     
     
    //attributs				
    		private String FormVide ;
    		private String FormRempli ;
    		private static Properties prop;
     
     
    //		 méthodes	
    		public Test(String FormVide, String FormRempli){
     
    			this.FormRempli = FormRempli;
    			this.FormVide = FormVide;
     
    		}									
     
    			public static void remplissagePDF(String FormVide, String FormRempli){
     
    				  RechercheFicProperties.RechercheProperties();
    				  FormVide = prop.getProperty("repertoireFormulaireVide") + prop.getProperty("nomFormulaireVide");
    				  FormRempli = prop.getProperty("repertoireFormulaireRempli")  + prop.getProperty("nomFormulaireRempli");
     
     
     
    			       FormRempli = ("C:\\Temp\\pdfRempli\\pdf_rempli.pdf");
    			       FormVide = ("C:\\Temp\\pdfVide\\pdf_vierge.pdf");
     
    			try {	
     
    				PdfReader reader = new PdfReader(FormVide);		//lecture PDF		
    				PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(FormRempli));	//Sauvegarde d'un nouveau PDF	
     
    				//PdfContentByte content = stamper.getUnderContent(1);
    				PdfContentByte content = stamper.getOverContent(1);
    				content.beginText();//on ouvre le content pour écrire dans le PDF
    				// On ajoute une chaine, on détermine la police, la taille te la position
    				BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);			
    		            content.setFontAndSize(bf, 12);
    		            String text = "Livinfo";
    		            content.showTextAligned(PdfContentByte.ALIGN_CENTER, text , 250, 700, 0);
    		            content.showTextAligned(PdfContentByte.ALIGN_LEFT, text , 250, 600, 0);
    		    	content.endText();// On ferme le content
    		    	stamper.close();// On ferme le stamper			
     
    			}catch (IOException ioe) {
    				ioe.printStackTrace();
    			}catch (DocumentException doce) {
    				doce.printStackTrace();}
    			}
     
     
    public static void main(String[] args ) {
    			Test.remplissagePDF("C:\\Temp\\pdfVide\\pdf_vierge.pdf", "C:\\Temp\\pdfRempli\\pdf_rempli.pdf");				
    			RechercheFicProperties.RechercheProperties();								
     
    			}	
    	}

  6. #26
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Je suis désolé mais là je n'ai pas assez de temps pour te pondre tout le code ce soir peut être

    Sinon je vais essayer de te réexpliquer pour que tu comprennes.

    Primo, dans ton main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public static void main(String[] args ) 
    {
      Test.remplissagePDF("C:\\Temp\\pdfVide\\pdf_vierge.pdf", "C:\\Temp\\pdfRempli\\pdf_rempli.pdf");				
      RechercheFicProperties.RechercheProperties();		
    }
    Il faut appeler d'abord ta méthode RechercheProperties avant d'appeler ton remplissagePDF. Donc obtenir ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public static void main(String[] args ) 
    {
      String maChaineResultat = RechercheFicProperties.RechercheProperties();	
      Test.remplissagePDF(maChaineResultat,"C:\\Temp\\pdfVide\\pdf_vierge.pdf", "C:\\Temp\\pdfRempli\\pdf_rempli.pdf");		
    }
    Il faudrait que tu en profites pour que ta méthode Rechercheproperties() te retourne le fichier properties 2, ie la String resultat. Après, tu peux faire ça dans ta méthode remplissagePDF en ayant passé maChaineResultat en paramètre de cette méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    try
    {
    Properties defaultProps = new Properties();
    FileInputStream in = new FileInputStream(maChaineResultat);
    defaultProps.load(in);
    FormVide = defaultProps.getProperty("repertoireFormulaireVide") + defaultProps.getProperty("nomFormulaireVide");
    FormRempli = defaultProps.getProperty("repertoireFormulaireRempli")  + defaultProps.getProperty("nomFormulaireRempli");
    }
    catch{...}
    finally
    {
    in.close();
    }
    Voilà je pense pas que le code fonctionne vu que je l'ai fait à la vite mais il y a au moins les idées. C'est surtout le concept que tu dois saisir

  7. #27
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    A tout hasard, tu effectues d'autres traitements avec ta classe RechercheFicProperties ?

    Si oui, faudra garder le système au-dessus.
    Sinon, ne t'embêtes pas à créer une classe juste pour cette méthode et intègre cette méthode dans ta classe Test.

    Un exemple de ce que tu pourrais avoir dans ce cas-là :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
     
    public class Test {
     
     
     
     
    //attributs				
    		private String FormVide ;
    		private String FormRempli ;
    		private static Properties prop;
     
     
    //		 méthodes	
    		public Test(String FormVide, String FormRempli){
     
    			this.FormRempli = FormRempli;
    			this.FormVide = FormVide;
     
    		}	
     
    public String recupChemin()
    {
    try
    {
    Properties defaultProps = new Properties();
    FileInputStream in = new FileInputStream(Monrepertoire);
    defaultProps.load(in);
    resultat = prop.getProperty("repertoireEchange");
    }
    catch{...}
    finally
    {
    in.close();
    return resultat;
    }
    }								
     
    			public static void remplissagePDF(String FormVide, String FormRempli){
    				 try
                                   {
                                       String maChaineResultat = Test.recupChemin()+ "fichier_2.properties";
                                       Properties defaultProps = new Properties();
                                       FileInputStream in = new FileInputStream(maChaineResultat);
                                       defaultProps.load(in); 
    				 FormVide = defaultProps.getProperty("repertoireFormulaireVide") + defaultProps.getProperty("nomFormulaireVide");
    				  FormRempli = defaultProps.getProperty("repertoireFormulaireRempli")  + defaultProps.getProperty("nomFormulaireRempli");
    }
    catch{...}
    finally
    {
    in.close();
    }			  
     
    			       FormRempli = ("C:\\Temp\\pdfRempli\\pdf_rempli.pdf");
    			       FormVide = ("C:\\Temp\\pdfVide\\pdf_vierge.pdf");
     
    			try {	
     
    				PdfReader reader = new PdfReader(FormVide);		//lecture PDF		
    				PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(FormRempli));	//Sauvegarde d'un nouveau PDF	
     
    				//PdfContentByte content = stamper.getUnderContent(1);
    				PdfContentByte content = stamper.getOverContent(1);
    				content.beginText();//on ouvre le content pour écrire dans le PDF
    				// On ajoute une chaine, on détermine la police, la taille te la position
    				BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);			
    		            content.setFontAndSize(bf, 12);
    		            String text = "Livinfo";
    		            content.showTextAligned(PdfContentByte.ALIGN_CENTER, text , 250, 700, 0);
    		            content.showTextAligned(PdfContentByte.ALIGN_LEFT, text , 250, 600, 0);
    		    	content.endText();// On ferme le content
    		    	stamper.close();// On ferme le stamper			
     
    			}catch (IOException ioe) {
    				ioe.printStackTrace();
    			}catch (DocumentException doce) {
    				doce.printStackTrace();}
    			}
     
     
    public static void main(String[] args ) {
    			Test.remplissagePDF("C:\\Temp\\pdfVide\\pdf_vierge.pdf", "C:\\Temp\\pdfRempli\\pdf_rempli.pdf");							
     
    			}	
    	}
    Un truc dans le genre

  8. #28
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Salut Sironimo,

    Merci beaucoup pour toutes ces précisions.
    Mon code a quelque peu changé.
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    package com.promotelec.saisieCR.utilitaires;
     
    import java.io.FileInputStream;
    import java.util.Properties;
     
    public class FichierPropertiesGenerique {
     
    	private Properties prop;
     
    	private String fichierProperties;
     
    	private Properties getProp() {
    		return prop;
    	}
     
    	private void setProp(Properties prop) {
    		this.prop = prop;
    	}
     
    	public String getFichierProperties() {
    		return fichierProperties;
    	}
     
    	public void setFichierProperties(String fichierProperties) {
    		this.fichierProperties = fichierProperties;
    	}
     
    	/**
             * Cette méthode ouvre le fichier properties, si l'opération est réussie
             * alors elle retourne vrai sinon elle retourne faux.
             */
    	public boolean ouvrirFichierProperties(String fichierProperties) {
     
    		boolean ResultOK;
    		prop = new Properties();
     
    		try {
    			FileInputStream in = new FileInputStream(fichierProperties);
    			prop.load(in);
    			ResultOK = true;
     
    		} catch (Throwable e) {
     
    			ResultOK = false;
     
    		}
     
    		return ResultOK;
    	}
     
    	/**
             * cette méthode retourne la valeur correspond à la clé passée en paramètre
             * Si la clé n'est pas trouvé la méthode renvoie une chaîne vide.
             */
    	public String lireValeur(String cle) {
    		if (prop != null) {
    			String Valeur = prop.getProperty(cle, "");
    			return Valeur;
    		} else {
    			return "";
    		}
    	}
    Cette classe décompose les différentes méthodes. Je voudrais faire une méthode pour fermer donc le fichier.
    J'ai essayé cela mais apperemment il doit manquer quelque chose. Pourriez-vous me dire svp ce que je devrais rajouter pour que ma méthode fonctionne?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public void fermerFichier() {
     
    		in.close();
     
    	}
    Merci d'avance.

  9. #29
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void fermerFichier(FileInputStream in)
    {
    	in.close();
    }
    Il faut que tu lui précises en paramètre de ta méthode le FileInputStream à fermer

    Cette méthode est alors appelée lorsque tu as fini de travailler sur le fichier.

  10. #30
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Merci beaucoup à toi.
    C'était assez évident en plus. Mais une fois de plus tu m'as sauvé la mise.
    Encore merci et bonne soirée.

  11. #31
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    euh j'ai peut-être plus simple ....

    J'utilise ça moi :
    quand j'appelle mon java, au lieu de faire la commande : java MONPROPGRAMME, je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -DCONFIG_FILE_PATH=monfichierdeconfavecsonchemin MONPGROGRAMME
    et dans mon code j'ai ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String sConfigFile = System.getProperty("CONFIG_FILE_PATH");
    (bon c'est ça en gros, j'ai réécris le code là parce que en fait ca fait appel a des trucs internes à mon appli )

    Ca t'évite d'indiquer dans ton fichier de conf son chemin ce qui est pas portable du tout ..
    ben oui l'interet de pouvoir paramètrer le chemin de ton fichier conf, c'est de pas avoir à modifier le code si tu bouges le fichier or dans ton cas ca marche pas ...

    Tiens moi au courant

  12. #32
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    salut,

    désolé je n'ai pas essayé ce que tu m'as envoyé. Mais merci quand même. Je testerai. Pour le moment tout est codé en dure. Par contre j'ai encore un problème.
    Lorsque j'appelle ma classe
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    public class FichierPropertiesGenerique {
     
    	private Properties prop;
    	private FileInputStream in;
    	private String fichierProperties;
     
    	private Properties getProp() {
    		return prop;
    	}
     
    	private void setProp(Properties prop) {
    		this.prop = prop;
    	}
     
    	public String getFichierProperties() {
    		return fichierProperties;
    	}
     
    	public void setFichierProperties(String fichierProperties) {
    		this.fichierProperties = fichierProperties;
    	}
     
    	/**
             * Cette méthode ouvre le fichier properties, si l'opération est réussie
             * alors elle retourne vrai sinon elle retourne faux.
             */
    	public boolean ouvrirFichierProperties(String fichierProperties) {
     
    		boolean ResultOK;
    		prop = new Properties();
     
    		try {
    			 in = new FileInputStream(fichierProperties);
    			prop.load(in);
    			ResultOK = true;
     
    		} catch (Throwable e) {
     
    			ResultOK = false;
     
    		}
     
    		return ResultOK;
    	}
     
    	/**
             * cette méthode retourne la valeur correspond à la clé passée en paramètre
             * Si la clé n'est pas trouvé la méthode renvoie une chaîne vide.
             */
    	public String lireValeur(String cle) {
    		if (prop != null) {
    			String Valeur = prop.getProperty(cle, "");
    			return Valeur;
    		} else {
    			return "";
    		}
    	}
     
    	public void fermerFichier() throws Throwable {
     
    		in.close();
     
    	}
    }
    comme cela :
    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
    19
    20
    21
     
    public class FichierPropertiesPromotelec {
     
    	private Properties prop;
     
    	private String monFichier = "C:\\Temp\\promo_act.properties";
    	private String monRepertoire = prop.getProperty("repertoireEchange");
     
    	public void init() throws Throwable {
     
    		FichierPropertiesGenerique fichier = new FichierPropertiesGenerique();
    		fichier.ouvrirFichierProperties(getMonFichier());
    		fichier.lireValeur(getMonRepertoire());
    		fichier.fermerFichier();
    		System.out.println(monFichier);
     
    	}
     
    	public String getMonFichier() {
    		return monFichier;
    	}
    Le but de cette classe FichierPropertiesPromotelec est qu'elle me retourne le chemin d'un répertoire. Donc je vais chercher la valeur qui a pour clé "repertoireEchange" mais sa me retourne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java.lang.NullPointerException
    a savoir que lorsque je remplace l'initialisation de monRepertoire par le chemin du repertoire sa fonctionne. Donc je suppose que c'est au niveau de mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private String monRepertoire = prop.getProperty("repertoireEchange")
    que sa plante.

  13. #33
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    une varialbe n'est pas initialisée a priori .. a quelle ligne il rencontre l'erreur?

  14. #34
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    vérfie également l'orthographe de ta clé dans le fichier de configuration

  15. #35
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Re,

    Donc j'ai bien vérifié l'orthographe de ma clé et elle est correcte.

    et l'erreur vient bien de ma ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private String monRepertoire = prop.getProperty("repertoireEchange")
    car il me met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    java.lang.NullPointerException
    	at com.promotelec.saisieCR.utilitaires.FichierPropertiesPromotelec.init(FichierPropertiesPromotelec.java:09)
                 at com.promotelec.saisieCR.LancementApplication.Application.run(Application.java:27)
    La première ligne correspond à mon get property et la seconde à l'appel de ma classe et de ma méthode :
    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 Application implements IPlatformRunnable {
     
    	public FichierPropertiesPromotelec fichier;
    	public Object run(Object args) throws Exception {
    		Display display = PlatformUI.createDisplay();
     
    		 try {
     
    			 fichier = new FichierPropertiesPromotelec();
    			 fichier.RecupererRepertoire();
     
     
     
     
    		} catch (Throwable ex) {
    			ex.printStackTrace();
    		}
    Merci encore

  16. #36
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    euh oui super logique ton erreur en fait ...

    Par principe il effectue d'abord l'initilisation de tes variables globales d'abord ...( pardon tes attributs)


    donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    private Properties prop;
    private String monFichier = "C:\\Temp\\promo_act.properties";
    private String monRepertoire = prop.getProperty("repertoireEchange");
    or prop n'a pas de valeur .... a part la valeur "null"
    donc il te fait prop.getXXX soit null.getXXX => nullpointerexception

  17. #37
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Ouais c'est l'initialisation de mon prop qui est pas bon. Merci beaucoup.

    Mais le problème c'est que je ne sais pas comment initialiser prop en fait.
    J'ai essayé de l'initialiser en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public void init(Properties properties){
    prop=properties;
    }
    Mais sa ne change rien en fait. Donc est-ce quelqu'un saurais ce que je dois mettre ou comment pallier à ce problème?

    Merci encore et toujours.

  18. #38
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    tu prends le problème un peu à l'envers ...
    ton objet propertie si je me souviens bien doit être initialisé "au démarrage"

    en gros avoir une méthode qui va lire l'ensemble des properties pour créer ton objet properties ..
    là c'est un peu étrange de lui dire qu'il a besoin d'un propertie pourcréer ses properties ...

  19. #39
    Membre régulier Avatar de kifouillou
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 270
    Points : 84
    Points
    84
    Par défaut
    Re,

    Merci de m'aider.
    Pourrais tu me donner un exemple par rapport à mon code car je ne suis pas vraiment sur de comprendre. Je sais juste que c'est cette classe là que je dois modifier :
    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
    19
    20
    21
     
    public class FichierPropertiesPromotelec {
     
    	private Properties prop;
     
    	private String monFichier = "C:\\Temp\\promo_act.properties";
    	private String monRepertoire = prop.getProperty("repertoireEchange");
     
    	public void init() throws Throwable {
     
    		FichierPropertiesGenerique fichier = new FichierPropertiesGenerique();
    		fichier.ouvrirFichierProperties(getMonFichier());
    		fichier.lireValeur(getMonRepertoire());
    		fichier.fermerFichier();
    		System.out.println(monFichier);
     
    	}
     
    	public String getMonFichier() {
    		return monFichier;
    	}
    Merci d'avance.

  20. #40
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    comme dit plus haut :
    tu initialises pas prop .
    en gros, il te manque un truc du genre prop= new Properties()
    (=> grosse betise sans doute de ma part , je ne sais plus comment s'initalise un type properties)


    En gros, c'est la meme chose que si tu faisais :
    String t[2];
    system.out.println(t[0]);
    ta variable n'a pas de valeur !!
    quand tu lui dis " getProperty ", il te demande "de quelle variable" tu lui réponds "null" ...

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [Struts 1] Fichier .properties non trouvé
    Par medirama dans le forum Struts 1
    Réponses: 2
    Dernier message: 19/06/2014, 01h59
  2. package.properties non trouvé ?
    Par Eylir dans le forum Struts 2
    Réponses: 5
    Dernier message: 10/08/2009, 18h59
  3. Fichier hbm non trouvé à l'exécution
    Par mouaa dans le forum Hibernate
    Réponses: 11
    Dernier message: 28/10/2008, 12h47
  4. Réponses: 2
    Dernier message: 02/05/2008, 17h01
  5. Fichiers jar non trouvés
    Par Mister Nono dans le forum Langage
    Réponses: 14
    Dernier message: 26/07/2007, 16h41

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