Problème

Après la mise à niveau d'une instance de 5.6.x à 6.x, AEM ne récupère plus l'emplacement de Filedatastore correctement et ne démarre pas correctement. Les rapports de AEM ne sont pas en mesure de trouver des blobs et ne peuvent pas démarrer correctement. Cependant, démarrer l'instance avec une ligne de commande permet au fichier de démarrage rapide de se lancer correctement.

Environnement

AEM 6.x

Cause

Le fichier RegisteredResourceList.ser est endommagé et n’autorise pas les services Windows à fonctionner correctement. Lors de l’ouverture de RegisteredResourceList.ser, plusieurs instances de « installation du fichier » s’affichent. Cependant, une seule instance est attendue. Il affiche plusieurs configurations persistantes sur le référentiel provoquant donc le conflit au démarrage.

Résolution

  1. Arrêtez AEM.

  2. Téléchargez de com.adobe.granite.tools.fileinstallertool-1.0.2.jar depuis [1] et placez-le dans le même dossier que le fichier jar AEM.

  3. Pour effacer toutes les entrées en double et corriger toutes les entrées endommagées, exécutez la commande suivante.

    java -jar com.adobe.granite.tools.fileinstallertool-1.0.2.jar
  4. À ce stade, vous vous retrouverez dans l'un des deux scénarios ci-après :

    1. Vous obtenez la sortie suivante, qui confirme la suppression réussie des configurations dupliquées. Vous pouvez continuer à partir de l'étape 5.

      Reading installer state from crx-quickstart/launchpad/installer/RegisteredResourceList.ser
      Processing installer state...
      - removing state for fileinstallad09f60708c0fb5aee04cdf46857bff9:/opt/AEM/6.2/Vanilla6.2/crx-quickstart/install/org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStoreService.config
      - removing state for fileinstallad09f60708c0fb5aee04cdf46857bff9:/opt/AEM/6.2/Vanilla6.2/crx-quickstart/install/org.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.cfg
      Writing installer state
      Done
      
    2. La sortie ci-dessous indique qu’un problème est survenu lors de la lecture de RegisteredResourceList.ser et que l’outil n’a pas pu l’ouvrir et s’exécuter par rapport à lui.

      Reading installer state from crx-quickstart/launchpad/installer/RegisteredResourceList.ser
      124 [main] WARN org.apache.sling.installer.core.impl.PersistentResourceList - Unable to restore data, starting with empty list (org.apache.sling.installer.core.impl.RegisteredResourceImpl)
      java.lang.ClassNotFoundException: org.apache.sling.installer.core.impl.RegisteredResourceImpl
           at org.apache.sling.installer.core.impl.RegisteredResourceImpl.readObject(RegisteredResourceImpl.java:124)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.lang.reflect.Method.invoke(Method.java:498)
           at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
           at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)
           at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
           at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
           at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
           at org.apache.sling.installer.core.impl.EntityResourceList.readObject(EntityResourceList.java:104)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.lang.reflect.Method.invoke(Method.java:498)
           at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
           at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)
           at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
           at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
           at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
           at java.util.HashMap.readObject(HashMap.java:1396)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.lang.reflect.Method.invoke(Method.java:498)
           at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
           at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1909)
           at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
           at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
           at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
           at org.apache.sling.installer.core.impl.PersistentResourceList.<init>(PersistentResourceList.java:90)
           at com.adobe.granite.tools.FICleanup.main(FICleanup.java:196)
      Processing installer state...
      No fileinstall configuration found
      Done
      

      Dans ce cas, procédez comme suit :

      1. Arrêtez l'instance AEM.

      2. Désinscrivez/supprimez le service windows.

      3. Assurez-vous que le fichier sur le chemin /opt/AEM/6.2/Vanilla6.2/crx-quickstart/launchpad/config/org/apache/jackrabbit/oak/plugins/blob/datastore/Filedatastore.cfg a un contenu pertinent, il s'agit des chemins absolus. Dans le cas contraire, supprimez ce fichier.

      4. Assurez-vous que le fichier sur le chemin /opt/AEM/6.2/Vanilla6.2/crx-quickstart/launchpad/config/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.cfg a un contenu pertinent, il s'agit des chemins absolus. Si ce n’est pas le cas, supprimez ce fichier.

      5. Accédez au répertoire /crx-quickstart/launchpad/installer et renommez RegisteredResourceList.ser en RegisteredResourceList.ser_old.

      6. Effacer les journaux de serveur AEM.

      7. Enregistrer le service Windows.

  5. Démarrer AEM via le service Windows.

  6. AEM devrait à présent démarrer avec les configurations appropriées. Pour vérifier si c'est le cas, regarder s'il existe plusieurs chemins «fileinstall» pour la sortie [2].

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne