On peut donc dans un premier temps rechercher les contenus qui posent problème grâce à la fonction "Exécuter une requête" (loupe avec ?) disponible dans "Repository JCR" auquel vous pouvez accéder depuis l'espace d'administration (_admin)
On va recherche les contenus en erreur en faisant la requête suivante :
//element(*, ametys:defaultWebContent)[not(@ametys:lastModified)]
Si vous trouvez effectivement des contenus en erreur, il vous faudra exécuter le script JCR suivant depuis la console JCR.
Au préalable, n'oubliez pas de sauvegarder votre repository.
Et notez bien que ce script supprimera complètement les contenus en erreur.
Script JCR:
var qm = session.getWorkspace().getQueryManager();
var query = qm.createQuery("//element(*, ametys:defaultWebContent)[not(@ametys:lastModified)]", javax.jcr.query.Query.XPATH);
var nodes = query.execute().getNodes();
var i = 0;
while (nodes.hasNext())
{
var node = nodes.next();
var workflowId = node.getProperty("ametys-internal:workflowRef").getValue().getString();
node.remove();
var workflowNode = session.getNodeByUUID(workflowId);
workflowNode.remove();
i++;
}
session.save();
println(i + " contenus en erreur");