Comment faire son propre webclient.properties ?

cancel
Showing results for 
Search instead for 
Did you mean: 
fabienm
Member II

Comment faire son propre webclient.properties ?

Bonjour à tous,

J'ai créé de nouveaux types sur alfresco avec des propriétés bien spécifique. Les propriétés s'affichent avec des display-label-id qui marche quand je les écrit dans le fichier webclient.properties.
Maintenant j'aimerai ne pas avoir a écrire dans le fichier webclient.properties  mais définir mon propre fichier (.properties)

Je sais qu'il y a plein de fichiers de "langue" dans le répertoire WEB-INF/classes/alfresco/messages/
C'est dans ce répertoire que je mettrai bien mes traductions mais je ne sais pas comment demander a Alfresco d'aller chercher dans le bon fichier l'identifiant de label.

Merci de votre aide.

Fabien
6 Replies
rivarola
Active Member

Re: Comment faire son propre webclient.properties ?

Bonjour,

Il faut s'inspirer de ce qui est dans le fichier core-services-context.xml d'Alfresco pour spécifier d'autres fichiers de langues :
    <bean id="dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="resourceBundles">
        <property name="models">
            <list>
                <!– System models  –>
                <value>alfresco/model/dictionaryModel.xml</value>
                <value>alfresco/model/systemModel.xml</value>
[…]
            </list>
        </property>
        <property name="labels">
            <list>
                <value>alfresco/model/dataTypeAnalyzers</value>
                <value>alfresco/messages/system-model</value>
                <value>alfresco/messages/dictionary-model</value>
[…]
            </list>
        </property>
    </bean>
   

Cela revient à spécifier dans la section "labels" du bean qui vous sert à déclarer vos nouveaux modèles le chemin relatif de votre fichier de ressources.
fabienm
Member II

Re: Comment faire son propre webclient.properties ?

Bonjour,

Je me suis inspiré du core-services-context.xml pour écrire dans mon fichier modul-context.xml (afin de faire un AMP):
   

<bean id="org_newDevelopmentManagement_dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
      <property name="models">
           <list>
             <value>alfresco/module/org.newDevelopmentManagement/model/dev.xml</value>       
          </list>
      </property>      
      <property name="labels">
         <list>
            <value>alfresco/messages/ir-new-development-management</value>
         </list>
      </property>
   </bean>

   <bean id="org_irium_newDevelopmentManagement_configBootstrap" class="org.alfresco.web.config.WebClientConfigBootstrap" init-method="init" depends-on="org_newDevelopmentManagement_dictionaryBootstrap" >
                <property name="configs">
                     <list>
                                    <value>classpath:alfresco/module/org.newDevelopmentManagement/ui/web-client-config.xml</value>
                          </list>
                  </property>

     </bean> 

Dans le repertoir alfresco/messages j'ai les fichiers :  ir-new-development-management.properties et ir-new-development-management_fr_FR.properties

Le lancement d'Alfresco se passe très bien, par contre j'ai toujours les erreurs "Failed to find I18N message string key: xxxxxxxx" lorsque les labels doivent être affichés.
Alfresco ne trouve donc pas mes fichiers de ressources.

Bien cordialement,

Fabien.
rivarola
Active Member

Re: Comment faire son propre webclient.properties ?

Bonjour,

Je pense que le display-label-id dans la config Web est utilisé pour forcer un label autre que celui défini dans le modèle de donnée (ou ses fichiers de message). Ce display-label-id n'est probablement recherché que dans les fichiers webclient.
Maintenant que tu as défini tes labels dans les messages du modèle, tu peux supprimer du web-client-config-custom.xml les display-label-id à condition que tes labels respectent la norme Alfresco, par exemple :
kt_taxonomyModel.property.kt_defaultWeight.description
pour la propriété kt:defaultWeight du modèle kt:taxonomyModel.
fabienm
Member II

Re: Comment faire son propre webclient.properties ?

Bonjour,

C'est exactement ça qu'il faut faire pour que ça marche ; merci beaucoup pour ton aide.

Cordialement

Fabien.
fabienm
Member II

Re: Comment faire son propre webclient.properties ?

Bonjour,

J'aimerai savoir si il y a une doc sur cette méthode de saisie des labels ?
Savoir si il est possible d'ajouter des labels sur des actions ou des aspects définis dans le modèle.

Cordialement,
Fabien.
rivarola
Active Member

Re: Comment faire son propre webclient.properties ?

Si tu trouves une doc, je suis intéressé aussi  ! :wink: