Modification des fichiers *.properties

Aller en bas

Modification des fichiers *.properties

Message  Francois Birot le Lun 27 Oct - 21:25

J'ai besoin de modifier tout un tas de propriétés (entre autre dans emxProductCentralStringResource_en.properties). Je peux bien sur modifier ces fichiers directement, mais je me dit qu'a chaque mise a jour, il faudra que je compare les nouveaux fichiers de propriétés aux anciens, que je les merge, etc, ce qui n'est pas tres pratique.

J'aimerai donc ne pas modifier les fichiers de propriétés existants et pouvoir spécifier dans d'autres fichiers les modifications/ajouts que je souhaite effectuer.

Je pense qu'il doit etre possible d'ajouter un filtre dans web.xml pour que si un fichier *.properties possede tel préfixe ou soit dans tel répertoire, alors il soit utiliser plutot que celui par défaut.

Il me semble également qu'il est possible d'inclure un fichier de propriétés dans un autre (include = leFichierAInclure).

Si tout cela est bien possible, pour modifier emxProductCentralStringResource_en.propertie, il suffirait que je crée un nouveau fichier qui inclue le fichier de base, et que j'ajoute mes modifications a la suite.

Je me demande par contre s'il est possible de redéfinir une propriété, et si je ne vais pas avoir des messages d'erreurs me disant que certaines propriétés sont en double (a essayer). Je me demande aussi surtout si quelqu'un a déja fait quelques chose de similaire, ou a une meilleure idée.

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  mradi le Mar 28 Oct - 0:28

Ce que tu peux faire, mais ca demande un peu de developpement, c'est de créer un petit outil avec java, qui permet de concatener tes fichiers customisés avec ceux du standard (ajouter à la fin des fichiers standard les lignes customisées).
Le fait qu'il y a un doublon dans le fichier resultat (apres concatenation) ne pose pas de pb, car le serveur va afficher la dernier valeur qui se trouve dans le fichier.
L'avantage de cette methode, il y a pas de merge à faire lors d'une migration vers une nouvelle version.

mradi
Novice
Novice

Nombre de messages : 18
Date d'inscription : 12/12/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

ou en TCL

Message  jayjay le Mar 28 Oct - 2:18

Une petite méthode Tcl pour illustrer les propos du post précédent :
set extADD "properties.ADDON"

set l_propertiesfile [ glob *.properties ]

foreach sPropertiesFile $l_propertiesfile {

puts "Processing $sPropertiesFile ..."

# Trouver le fichier ADD correspondant
set sBasename [ file tail [ file rootname $sPropertiesFile ] ]

set sFileADDON [ format "%s.%s" $sBasename $extADD ]

puts ">>> Search $sFileADDON ..."

if { [ file exists $sFileADDON ] == 1 } {

puts ">>> Find ADDON file : $sFileADDON"

set channelProperties [ open $sPropertiesFile a ]

set channelAddOn [ open $sFileADDON r ]

# Lit l'integralite du AddOn
set lAllLineAddOn [ split [ read $channelAddOn ] \n ]
close $channelAddOn
# Rajouter le ADD

foreach sLineAddOn $lAllLineAddOn {

puts $channelProperties $sLineAddOn
flush $channelProperties

}

puts ">>> Concatenation finished."


close $channelProperties
}

}

jayjay

Nombre de messages : 1
Date d'inscription : 24/10/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Mar 28 Oct - 12:43

Hum oui, mais est il possible de spécifier a Tomcat de lancer ce programme quand il se lance ? (parce que sinon ca reste pas tres pratique)

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  mradi le Mar 28 Oct - 22:43

tu peux faire un petit script batch, qui va executer ton script tcl et redemarre tomcat.

mradi
Novice
Novice

Nombre de messages : 18
Date d'inscription : 12/12/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Mer 29 Oct - 12:37

Ouais ca peut etre pas mal. Mais par contre dans le script tcl proposé, si on execute le script deux fois les propriétés sont ajoutés une deuxieme fois (donc pas possible de lancer le script au démarage de Tomcat).

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  mradi le Jeu 30 Oct - 1:15

Pas forcement, si tu vide ton repertoir properties de tes fichiers customisés apres chaque concatenation. A la 2eme execution le script tcl ne va pas trouver des fichiers à concaténer et il aura que le demarrage de tomcat à faire

mradi
Novice
Novice

Nombre de messages : 18
Date d'inscription : 12/12/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Jeu 30 Oct - 12:56

Ouais mais l'intéret était justement de ne pas changer les fichier *.properties de Matrix, ce qui n'est plus le cas. Et puis avoir a supprimer les fichiers de customisation a chaque redémarage de Tomcat, je trouve qu'au final c'est une plus grosse contrainte qu'editer les fichiers properties directement et les comparer/merger lors des mises a jour.

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  rudbg le Dim 2 Nov - 21:36

Perso, je resterais simple

Tu mets deux balises, à la fin du fichier, du type :
Code:
##################################[...]####
# ICI MES CUSTOS                          [...]début
emxInfoCentral.maproperties.action.label1 = C'est mon label
[...]
# ICI MES CUSTOS                          [...]fin
##################################[...]####

Comme ça tu les retrouves simplement et si tu changes des balises standards, c'est toujours la dernière ligne qui compte.

Ensuite en cas de migration, il te suffit de comparer le fichier (avec un outil comme winmerge http://www.winmerge.org) et tu retrouves tout ce qui a changé sans créer d'interférences avec tes custos.

Effectivement, si tu changes beaucoup de balises standard, il va falloir vérifier toutes les lignes différentes, mais par expérience il n'y a rien d'insurmontable. En passant de la version 10.5 à la 10.7, nous avons eu une centaine de lignes à vérifier, c'est assez rapide et simple.

_________________
Rudy

rudbg
Admin

Nombre de messages : 99
Age : 38
Localisation : Bordeaux
Date d'inscription : 21/09/2007

Voir le profil de l'utilisateur http://assistance-enovia.forumpro.fr

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Dim 2 Nov - 21:49

Avec plusieurs langues moi je trouve que ca devient vite la galere ces propriétés, mais bon je crois que c'est ce que je vais finir par faire.
Merci en tout cas Smile

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  rudbg le Lun 3 Nov - 1:43

Dois-tu vraiment gérer toutes les langues?
Sur nos application, on gère en général la propriété par défaut (sans extension) et la _fr.
Ensuite, pour être sûr de ne pas avoir de problème, on supprime les autres _* comme ça, soit IE/OS est en français et on affiche la _fr, soit IE/OS est dans une autre langue et on affiche la page par défaut.

C'est brutal mais, pour le moment, tous nos clients ont imposé une langue, donc ça fonctionne très bien et c'est simple et efficace.

_________________
Rudy

rudbg
Admin

Nombre de messages : 99
Age : 38
Localisation : Bordeaux
Date d'inscription : 21/09/2007

Voir le profil de l'utilisateur http://assistance-enovia.forumpro.fr

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Lun 3 Nov - 11:32

Pas toutes les langues mais l'Anglais, le Français, l'Allemand et l'Espagnol (et peut être une autre).

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  rudbg le Lun 3 Nov - 21:46

Effectivement, çà commence à en faire des fichiers à reprendre et à traduire Very Happy

_________________
Rudy

rudbg
Admin

Nombre de messages : 99
Age : 38
Localisation : Bordeaux
Date d'inscription : 21/09/2007

Voir le profil de l'utilisateur http://assistance-enovia.forumpro.fr

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Francois Birot le Dim 9 Nov - 17:14

Apparement il est possible de définir un fichier de customisation pour les propriétés dans emxSystem.properties comme définis page 35 de https://thelink.matrixone.com/custlink/servlet/checkout/62104.18481.10108.58423/FrameworkAdmin107SP1.pdf?format=Adobe%20PDF&file=FrameworkAdmin107SP1.pdf

Malheuresement cela ne marche par pour les Resource Strings (l'internationalisation), mais uniquement pour les propriétés de chaque application.

Je vais donc bien mettre toutes mes customisation a la fin.

Francois Birot
Débutant
Débutant

Nombre de messages : 41
Date d'inscription : 04/09/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Modification des fichiers *.properties

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum