11-04-2008 10:58 AM
public String uploadContent(String path, String fileName){
String contentUUID = new String();
try{
//Start the session
AuthenticationUtils.startSession("admin", "admin");
Store storeRef = new Store(Constants.WORKSPACE_STORE, "SpacesStore");
ParentReference companyHomeParent = new ParentReference(storeRef, null, "/app:company_home", Constants.ASSOC_CONTAINS, null);
RepositoryServiceSoapBindingStub repositoryService =WebServiceFactory.getRepositoryService();
ContentServiceSoapBindingStub contentService =WebServiceFactory.getContentService();
String queryLucene = "+PATH:\""+companyHomeParent.getPath()+"//*\" +@\\{http\\://www.alfresco.org/model/content/1.0\\}name:\"" + fileName + "\"";
query = new Query(Constants.QUERY_LANG_LUCENE, queryLucene);
ResultSet rs = repositoryService.query(storeRef, query, false).getResultSet();
if(rs.getTotalRowCount() > 0){
// Suppression du fichier
}
// Upload du fichier
(…)
ParentReference companyHomeParent = new ParentReference(storeRef, null, "/app:company_home/cm:upload", Constants.ASSOC_CONTAINS, null);
String queryLucene = "+PATH:\""+companyHomeParent.getPath()+"//*\" +@\\{http\\://www.alfresco.org/model/content/1.0\\}name:\"" + fileName + "\"";
11-05-2008 05:30 AM
11-05-2008 06:11 AM
11-07-2008 04:25 AM
Attention,
les requêtes Lucene sont "instable", car l'indexation se fait en arrière plan.
Il se peut donc que si la requête est effectuée juste après la création du noeud, elle ne renvoi rien.
Vous pouvez utiliser le service "get" en spécifiant un "path" dans le predicat pour faire une requête sur le chemin d'un noeud.
Mais si c'est pour vérifier l'existence du noeud créé, il veut encore mieux utiliser directement le "nodeRef".
String queryLucene = "+@sys\\:node-uuid:\"" + uuid + "\"";
Query query = new Query(Constants.QUERY_LANG_LUCENE, queryLucene);
ResultSet rs = repositoryService.query(storeRef, query, false).getResultSet();
par cleseach sur 05 Nov 2008, 12:11
Bonjour,
Avez-vous essayer de jouer votre requête Lucene avec le navigateur de noeuds ?
Cordialement,
Charles Le Seac'h
11-07-2008 04:40 AM
12-11-2008 06:32 AM
String queryLucene = "+PATH:\""+companyHomeParent.getPath()+"//*\" +@\\{http\\://www.alfresco.org/model/content/1.0\\}name:\"" + fileName + "\"";
String queryLucene = "+(PATH:\""+companyHomeParent.getPath()+"/*\" PATH:\""+companyHomeParent.getPath()+"/*//*\")\" +@\\{http\\://www.alfresco.org/model/content/1.0\\}name:\"" + fileName + "\"";
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.