HELP - Création d'un Dossier Noeud Alfresco en Java

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

HELP - Création d'un Dossier Noeud Alfresco en Java

Bonjour à tous,

Je rencontre un probleme dans mes développements :

Je suis dans le dossier NIVEAU1, je crée un dossier NIVEAU2 avec ce code :
(Ce code est lancé par l'utilisateur System dans une tache plannifiée.)

Map<QName, Serializable> props = new HashMap<QName, Serializable>(1);
props.put(ContentModel.PROP_NAME, "NIVEAU2");
NodeRef NIVEAU2 = this.getServiceRegistry().getNodeService().createNode(result, ContentModel.ASSOC_CONTAINS,
      QName.createQName(FTModel.FT_MODEL_URI,"NIVEAU2"), ContentModel.TYPE_FOLDER, props).getChildRef();

Tout va bien et le dossier est visible dans Alfresco et l'explorateur de noeuds.
Par contre il n'apparait pas lors des requetes lucène :

PATH:"/app:company_home/cm:NIVEAU1/*" AND @cm\:name:"NIVEAU2" AND TYPE:"cm:folder"

D'autre part si je créée par l'interface un dossier NIVEAU3 il apparait dans les résultats de la requete lucene …
Mon code est il insuffisant ?
5 Replies
al_nowak
Member II

Re: HELP - Création d'un Dossier Noeud Alfresco en Java

Faudrait plutot faire :
NodeRef NIVEAU2 = this.getServiceRegistry().getNodeService().createNode(result, ContentModel.ASSOC_CONTAINS,
      ContentModel.ASSOC_CHILDREN, ContentModel.TYPE_FOLDER, props).getChildRef();
yannb
Member II

Re: HELP - Création d'un Dossier Noeud Alfresco en Java

Fait, et ça ne marche pas mieux, ma requete lucene ne retourne aucun résultat.

Pareil pour une requete de type PARENT:"XXXXX"

Je remarque aussi que le association type de mon niveau 2 vers niveau1 est containt et non children comme le reste …
yannb
Member II

Re: HELP - Création d'un Dossier Noeud Alfresco en Java

Je pense que mon repertoire précédement créé n'est pas indexé dans lucene …

Pas contre dès que je vais en ihm modifier sa descritpion par exemple, il est immédiatement remonté par la requete lucene …


:?:  :?:  :?:
rivarola
Active Member

Re: HELP - Création d'un Dossier Noeud Alfresco en Java

Bonjour,
C'est normal que le noeud ne remonte pas via un requête PATH avec ces lignes de code. La requête PATH travaille sur le nom des associations et pas les noms des noeuds. Et ces associations doivent être exprimées dans le bon namespace, comme :
NodeRef NIVEAU2 = this.getServiceRegistry().getNodeService().createNode(result, ContentModel.ASSOC_CONTAINS,
                  QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "NIVEAU2"), ContentModel.TYPE_FOLDER, props)
                  .getChildRef();
yannb
Member II

Re: HELP - Création d'un Dossier Noeud Alfresco en Java

Bonjour,
Effectivement je m'étais apererçu de cela je l'ai changé de la même manière. J'ai pourtant toujours le même problème.

Je confirme que c'est un problème d'index lucene, après ré-indexation (mode FULL) la requete remonte les bons résultats …

Une idée pour contourner ce problème ?