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

Struts 1 Java Discussion :

Fichier ".properties" qui disp


Sujet :

Struts 1 Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Points : 113
    Points
    113
    Par défaut Fichier ".properties" qui disp
    Salut à tous !
    Je suis en train de programmer une application Struts. J'ai un petit truc bizare qui se passe, et comme je suis nouveau dans ce domaine, je ne sais vraiment pas à quoi c'est dû.

    J'ai un fichier "ApplicationResources_fr.properties" qui se trouve dans le repertoire "WebContent\WEB-INF\classes\prop".
    Et environ 1 fois par jour, le serveur Tomcat me dit qu'il ne trouve pas ce fichier. Effectivement, il n'existe plus, d'ailleur tout le répertoire "\prop" a été effacé. Ca devient récurent et ça m'énerve. Qu'en pensez vous, s'il vous plaît ?

    Merci beaucoup

    Laurent

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Je suppose que tu utilises un EDI ?
    Dans ce cas il y a de fortes chances que ce soit lui qui supprime ce fichier.

    Par exemple, avec eclipse et le plugin Tomcat de sysdéo, eclipse te compile les fichiers sources de WEB-INF/src dans WEB-INF/classes. Seulement dans certains cas, eclipse nettoie le répertoire WEB-INF/classes et donc supprime ton fichier *.properties (afin de conserver un WEB-INF/classes cohérent avec le WEB-INF/src).

    En fait il faut mettre ce fichier dans WEB-INF/src, et il sera copié automatiquement dans WEB-INF/classes à chaque changement (du coup il faut bien sûr travailler sur le fichier properties de WEB-INF/src).


    Si tu utilises un autre EDI qu'eclipse, tu dois surement avoir un comportement similaire

    a++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Points : 113
    Points
    113
    Par défaut
    Ah ouai, ça me paraît intelligent, ça .....
    Merci de ta réponse claire.
    J'utilise Eclipse 3.0, avec Exadel (pluggin pour struts).
    Je vais essayer de faire ce que tu as dit,
    merci

    LAurent

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Points : 113
    Points
    113
    Par défaut
    Par contre je ne vois pas comment travailler sur un fichier ".properties" ailleur que dans le répertoire "WEB-INF\classes".

    dans mon fichier web.xml, j'ai ces lignes :

    <init-param>
    <param-name>application</param-name>
    <param-value>prop/ApplicationResources_fr</param-value>
    </init-param>

    ça veut dire que le répertoire de départ, c'est bien le répertoire "WEB-INF\classes".
    J'ai essayé donc de modifier ces parametres en mettant

    <param-value>../src/prop/ApplicationResources_fr</param-value>

    mais ça ne marche pas, le serveur ne trouve pas le fichier.

  5. #5
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Lorsque tu modifies ce fichier dans /WEB-INF/src dans eclipse, il est copié dans /WEB-INF/classes.
    Donc ton application utilise bien celui du répertoire /WEB-INF/classes, mais tu travailles sur celui dans /WEB-INF/src...

    En fait il faut le voir comme un fichier source Java, dont seul le résultat de la compilation est placé dans /WEB-INF/classes. Sauf que pour les autres fichiers, la "compilation" se résume à une copie de fichier...

    Si tu modifies le fichier directement dans /WEB-INF/classes, il risque d'être écrasé par celui dans /WEB-INF/src...

    Ce que tu peux faire à la rigueur, c'est de te créer un répertoire /WEB-INF/ressource que tu définis comme un nouveau "Source folder". Comme ca tu sépare bien les sources Java et les autres fichiers, mais au final ils seront tous copié dans /WEB-INF/classes...
    Cela permet d'éventuellement d'utiliser un script ANT pour compiler et copier les ressources dans /WEB-INF/classes.

    Je ne sais pas si je suis assez clair...

    a++

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 169
    Points : 113
    Points
    113
    Par défaut
    C'est bon, ça marche, merci. En fait il a fallu que je crée un package "prop" dans le dossier "\monProjet\JavaSource" et que je mette mon fichier properties dedans.
    Il est copîé automatiquement dans le dossier classes.

    Merci de ton aide

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 117
    Points : 95
    Points
    95
    Par défaut
    Je vois que l'on parle de properties ici
    savez-vous comme reload des fichiers properties en mémoire ?
    car j'ai une app web avec des traductions dans diverses langues
    j'ai fait une transaction pour ecris dans les diverses properties mais j'aimerai les reloader avec un bouton refresh en mémoire pour que les traductions soit en place en temps réels car tomcat le fait tout seul ou en relançant avec le tomcat manager...
    est ce possible ?

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

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