cancel
Showing results for 
Search instead for 
Did you mean: 

Recuperer tous les noeux présent a partir d'une racine

argorate
Champ in-the-making
Champ in-the-making
Bonjour,

j'ai le problème suivant:

jusqu'à maintenant pour afficher mes document d'alfresco j'utilisais ce script:

dans un JS exécuter coté serveur:
var folder = roothome.childByNamePath(args.url);
model.folder = folder;

et je parcours mes noeux dans mon .ftl de cette manière:
<#list folder.children as node>

Maintenant ce qu'il me faudrait c'est pouvoir récupérer tout les noueux a partir d'un noueux racine c'est a dire je donne le nom exact d'un noueux "home" par exemple et je voudrais récupéré toutes arborescence en dessous de ce noueux au lieu de - comme le fait le code ci-dessus: childByNamePath('noueux') - récupéré uniquement les fils du noueux donné (que les fils direct).

Avez vous une solution a me proposer?

Merci.
6 REPLIES 6

rguinot
Confirmed Champ
Confirmed Champ
possible avec une requête lucene qui filtre sur le PATH et le type (cm:folder)

voir http://wiki.alfresco.com/wiki/JavaScript_API_Cookbook#Find_All_Documents_using_Lucene_Search
et http://wiki.alfresco.com/wiki/Search

argorate
Champ in-the-making
Champ in-the-making
Je n'y connais rien dans ce genre de truc, j'ai essayé un truc de se genre mais ça me fait une page blanche maintenant…

model.folder = search.luceneSearch("( PATH:\"/cm:folder//*\" ) AND ( TEXT:test)");

J'imagine qu'il doit pas y avoir se qu'il faut..?

EDIT:

je viens enfin de trouver, mais j'ai quand meme un pb, si je met ça:
model.resultset = search.luceneSearch("( TEXT:test*)");
j'arrive a afficher se que ça me renvoi, le problème c'est qu'il y a bien certains fichiers qui contiennent le mot "test" mais une grande majorité non! je ne comprend pas trop comment ça marche? de plus il ne cherche que les fichier (aucun dossier/espace) comment faire pour avoir les deux?

EDIT 2: apparemment c'est parce que ça recherche aussi dans le contenu des fichier le mot "test", d'où les fichiers qui ne contenaient pas le mot "test" dans leur nom, mais j'aurais besoin de savoir comment lui dire de rechercher les fichiers ET dossiers/espaces? svp

FINAL EDIT: j'ai trouvé! ça a été laborieux, mais au cas où ca aide qqun, voilà se que j'ai:

model.resultset = search.luceneSearch("(@cm\\:name:\"test\" AND TYPE:\"cm:folder\") OR (TEXT:test)");

argorate
Champ in-the-making
Champ in-the-making
C'est encore moi^^ en fait je viens de me rendre compte que c'est bien beau d'avoir les résultat avec les dossiers, le problème c'est qu'il faudrait que j'ai le lien pour les utilisateurs qui clique sur ces dossiers. Donc il me faudrait arborescence ou du moins l'url de l'emplacement de chaque dossier que trouve la recherche.

Alors j'ai tenté a tout hasard un ${node.url} mais le problème c'est que ça sort des trucs bizarre du genre :
/n/browse/workspace/SpacesStore/2787d166-f9e7-4083-ab92-ee44f1cf0d79

Donc ça m'aide pas trop :s une idée d'où ou comment récupérer la "vrai" url?

jayjayecl
Confirmed Champ
Confirmed Champ
C'est la vraie URL, ou plutôt son suffixe.
Dans votre exempl,e il faut rajouter http://{host}:{port}/alfresco/

Cela construira l'URL de navigation directe :
http://localhost:8080/alfresco/n/browse/workspace/SpacesStore/2787d166-f9e7-4083-ab92-ee44f1cf0d79

argorate
Champ in-the-making
Champ in-the-making
Non en fait il y a plus simple:

il suffit de faire : ${node.displayPath} au lieu du ${node.path} qui marchait pas.

Donc c'est bon ça marche Smiley Wink

thx

argorate
Champ in-the-making
Champ in-the-making
Type de résultat avec une recherche luceneSearch??

J'aurais besoin de savoir ce qu'on obtient avec une recherche lucen? car sur mon GED j'obtiens deux résultat diffèrent avec les mot "pol" et "politique"… Cela recherche dans le nom des fichiers + les contenus ou juste le nom pour un dossier j'ai cru comprendre?

Quelqu'un peut il me dire précisément comment ça fonctionne?
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.