cancel
Showing results for 
Search instead for 
Did you mean: 

Problème de rafraichissement après suppression document

stef44
Champ in-the-making
Champ in-the-making
Bonjour,

Selon une certaine valeur propriété (provenant d'une extension de modèle), je déclenche l'appel à un javascript qui supprime ce document (document.remove():smileywink:. Je suis donc sur la page détails d'un document.

Ce code fonctionnait dans cette file https://forums.alfresco.com/fr/viewtopic.php?f=8&t=5074

Toutefois dans mon cas (Alfresco 3.4.0.d ), j'obtiens un message d'erreur :
javax.faces.FacesException: org.alfresco.service.cmr.repository.InvalidNodeRefException: Node does not exist: workspace://SpacesStore/914a414e-d171-49a9-8d1e-770d5eebc87f
causé par :
org.apache.jasper.JasperException: org.alfresco.service.cmr.repository.InvalidNodeRefException: Node does not exist: workspace://SpacesStore/914a414e-d171-49a9-8d1e-770d5eebc87f
causé par :
org.alfresco.service.cmr.repository.InvalidNodeRefException: Node does not exist: workspace://SpacesStore/914a414e-d171-49a9-8d1e-770d5eebc87f
La suppression est cependant réalisée. Je pense donc qu'il s'agit d'un problème de rafraichissement de la page détails alors que le document n'existe pas.
Cette file https://forums.alfresco.com/en/viewtopic.php?t=13577#p45300 semble confirmer le problème lié au rafraichissement.

Existe-t-il des api javascript permettant de rafraichir et/ou d'afficher le contenu de l'espace contenant le document à supprimer ?

Merci

Stef44
2 REPLIES 2

stef44
Champ in-the-making
Champ in-the-making
Bonjour,

J'ai tenté de contourner le problème en déplaçant le document sur l'ajout d'une catégorie dans un autre espace qui possède une règle de suppression pour tout document entrant.
J'obtiens également une erreur système :
javax.faces.FacesException: org.apache.jasper.JasperException: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /jsp/dialog/container.jsp][Class: javax.faces.component.html.HtmlForm,Id: dialog][Class: javax.faces.component.UINamingContainer,Id: dialog-body][Class: org.alfresco.web.ui.common.component.UIPanel,Id: category-panel][Class: javax.faces.component.html.HtmlOutputText,Id: category-overview]}
causé par :
org.apache.jasper.JasperException: org.apache.jasper.JasperException: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /jsp/dialog/container.jsp][Class: javax.faces.component.html.HtmlForm,Id: dialog][Class: javax.faces.component.UINamingContainer,Id: dialog-body][Class: org.alfresco.web.ui.common.component.UIPanel,Id: category-panel][Class: javax.faces.component.html.HtmlOutputText,Id: category-overview]}
causé par :
org.apache.jasper.JasperException: javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /jsp/dialog/container.jsp][Class: javax.faces.component.html.HtmlForm,Id: dialog][Class: javax.faces.component.UINamingContainer,Id: dialog-body][Class: org.alfresco.web.ui.common.component.UIPanel,Id: category-panel][Class: javax.faces.component.html.HtmlOutputText,Id: category-overview]}
causé par :
javax.faces.FacesException: Could not retrieve value of component with path : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /jsp/dialog/container.jsp][Class: javax.faces.component.html.HtmlForm,Id: dialog][Class: javax.faces.component.UINamingContainer,Id: dialog-body][Class: org.alfresco.web.ui.common.component.UIPanel,Id: category-panel][Class: javax.faces.component.html.HtmlOutputText,Id: category-overview]}
causé par :
javax.faces.el.EvaluationException: Cannot get value for expression '#{DialogManager.bean.categoriesOverviewHTML}'
causé par :
javax.faces.el.EvaluationException: Exception getting value of property categoriesOverviewHTML of base of type : org.alfresco.web.bean.content.DocumentDetailsDialog
causé par :
javax.faces.el.EvaluationException: Bean: org.alfresco.web.bean.content.DocumentDetailsDialog, property: categoriesOverviewHTML
causé par :
java.lang.reflect.InvocationTargetException
causé par :
org.alfresco.service.cmr.repository.InvalidNodeRefException: Node does not exist: workspace://SpacesStore/59cbb2d5-c8c5-4340-9b25-4f8cdfd7541c
Je crois que je vais être contraint d'utiliser une action programmée pour supprimer tout le contenu de mon espace obsolète plutôt que de le faire en direct.

A moins que quelqu'un a une autre idée.

Cordialement

Stef44

stef44
Champ in-the-making
Champ in-the-making
Bonjour,

J'ai enfin trouvé une solution de contournement qui fonctionne : j'utilise une action planifiée qui appelle un script qui recherche  tous les documents de mon répertoire à purger et qui  les supprime un par un.

Toutefois, le paramétrage de mon action programmée s'appuie sur un paramètre que je trouve peu propre à utiliser :
        <property name="queryTemplate">
            <value>PATH:"/app:company_home/cm:MyCompany/cm:Applications/cm:MyDocument.doc"</value>
        </property>

De ce que je comprend, il faut que la propriété queryTemplate retourne un et un seul document. J'utilise donc un document vide pour répondre à cette propriété.
Avec un espace, cela ne fonctionne pas.
Peut-on faire autrement et passer un espace qui correspondrait à l'espace à purger ?

Merci

Stef44