WebService : renommage d'un fichier avec CMLCopy

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

WebService : renommage d'un fichier avec CMLCopy

Bonjour à tous,

est-t'il possible de renommer un fichier lors de la copie de celui ci  en utilisant CMLCopy

voici le code utilisé :

// compute from
Reference ref = new Reference();
ref.setStore(store);
ref.setPath(filePathFrom);
Predicate pred = new Predicate();
pred.setStore(store);
pred.setNodes(new Reference[]{ref});       
                   
// new name
String fileNameToPublished ='test;

// compute to
ParentReference destinationFolder = new ParentReference();
destinationFolder.setStore(store);
destinationFolder.setAssociationType(Constants.ASSOC_CONTAINS);
destinationFolder.setChildName(Constants.createQNameString(Constants.NAMESPACE_CONTENT_MODEL, fileNameToPublished));

CMLCopy copy = new CMLCopy();

copy.setTo(destinationFolder);
copy.setWhere(pred);
// copy with CML.
CML cml = new CML();
cml.setCopy(new CMLCopy[]{copy});

UpdateResult[] result = null;
try {
      // update.
     result = WebServiceFactory.getRepositoryService().update(cml);
} catch (RepositoryFault e) {
      logger.error(e);
} catch (RemoteException e) {
    logger.error(e);


le fichier est bien copié dans le nouveau répertoire mais ce nouveau fichier n'est pas renommer comme il devrait l'etre  (setChildName).

Quelqu'un aurait t'il une idée du problème ou une idée pour contourner le probléme ?

merci d'avance, Julien.
1 Reply
cleseach
Active Member II

Re: WebService : renommage d'un fichier avec CMLCopy

Bonjour,

Dans ma compréhension des choses, setChildName définit le nom de l'association et non celui du noeud.
Si vous voulez pouvoir mettre à jour le nom du fichier copier est de procéder en 2 temps : 1) copy et 2) update.

Cordialement,
Charles Le Seac'h