Problème de modification de propriété

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

Problème de modification de propriété

Bonjour à tous,

J'ai un petit problème dans mon développement en Java … en fait j'ai l'action suivante qui est exécutée à partir de ma classe :


private static QName nomCreator = QName.createQName("{http://www.alfresco.org/model/content/1.0}creator");

public void agentAddSelection(ActionEvent event)
{
        try
        {
                Node currnod = this.getNode();

                logger.debug("Reattribution de l'espace a l'utilisateur "+userSelect+"…");
                this.nodeService = getNodeService();
                this.nodeService.setProperty(currnod.getNodeRef(), nomCreator, userSelect);
                logger.debug("creator : "+this.nodeService.getProperty(currnod.getNodeRef(), nomCreator));
        }
   catch (Exception e) {
      Utils.addErrorMessage(MessageFormat.format(Application.getMessage(
                   FacesContext.getCurrentInstance(), Repository.ERROR_GENERIC), e.getMessage(), e ));
      e.printStackTrace();
   }
}
… Une opération toute bête je dirais … donc en fonction du node sur lequel on à sélectionné l'action (currnod), on réassigne la propriété creator (Qname(nomCreator)) à l'utilisateur qu'on a sélectionné (userSelect).

Mon problème viens du fait que la réaffectation de la propriété ne se fait jamais :-s.
Lors du premier log, je vois bien que c'est le bon utilisateur qui a été sélectionné, mais lors du deuxième log, c tjs le créateur d'origine qui est encodé dans la propriété :-s

Aurais-je oublié de faire qqchose dans ce code ?
Merci d'avance,

Michaël
2 Replies
rivarola
Active Member

Re: Problème de modification de propriété

Bonjour,

La propriété cm:creator est une propriété système. Elle doit être protégée d'une manière ou d'une autre par Alfresco.
jayjayecl
Active Member II

Re: Problème de modification de propriété

absolument.
Une solution de contournement rapide est de créer une méta-donnée personnalisée "custom:creator" (par exemple avec un aspect), de lui donner pour libellé "Créateur", et d'affecter ce que vous souhaitez à cette méta-donnée.

Il nje vous reste plus qu'a configurer le l'affichage en faisant disparaitre "cm:creator" et apparaitre "custom:creator" là ou vous le souhaitez (par exemple dans la page de détails).

Cdt,