cancel
Showing results for 
Search instead for 
Did you mean: 

Problème de modification de propriété

flash31186_8291
Champ in-the-making
Champ in-the-making
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 2

rivarola
Champ on-the-rise
Champ on-the-rise
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
Confirmed Champ
Confirmed Champ
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,