Error while upgrading AEM 6.4.2+ to AEM 6.5

Description

Environment

  • Experience Manager 6.4
  • Experience Manager 6.5

Issue/Symptoms
While upgrading Adobe Experience Manager (AEM) from version 6.4.2 (onwards) to 6.5 and this instance was previously upgraded from AEM 6.1 or AEM 6.2, the upgrade might fail with missing requirement error

04.12.2019 15:14:33.439 *ERROR* FelixStartLevel ERROR: Bundle ‘827’ Error starting/stopping bundle. (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.javascript 827(R 827.0): missing requirement org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)) Unresolved requirements: org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)))
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.javascript 827(R 827.0): missing requirement org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)) Unresolved requirements: org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix.setBundleStartLevel(Felix.java:1727)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:338)
at java.lang.Thread.run(Unknown Source)
04.12.2019 15:14:33.440 *ERROR* FelixStartLevel ERROR: Bundle ‘828’ Error starting/stopping bundle. (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.jst 828(R 828.0): missing requirement org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))) Unresolved requirements: org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))))
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.jst 828(R 828.0): missing requirement org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))) Unresolved requirements: org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix.setBundleStartLevel(Felix.java:1727)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:338)
at java.lang.Thread.run(Unknown Source)


Or this error:

11.12.2019 10:26:32.102 *ERROR* FelixDispatchQueue com.adobe.granite.crypto FrameworkEvent ERROR (org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto 158(R 158.3): missing requirement com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))) Unresolved requirements: com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))))
org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto 158(R 158.3): missing requirement com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))) Unresolved requirements: com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix$RefreshHelper.restart(Felix.java:5349)
at org.apache.felix.framework.Felix.refreshPackages(Felix.java:4516)
at org.apache.felix.framework.FrameworkWiringImpl.run(FrameworkWiringImpl.java:188)
at java.lang.Thread.run(Thread.java:748)

Resolution

Please follow the below given steps to avoid error:

  1. After upgrading to 6.5 (or before running the final upgrade command), please stop the instance

  2. Download this commons-io jar to the server and place it under crx-quickstart/install

  3. Restart the instance using the below command:

    java -server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true -Dsling.run.modes=author,crx3,crx3tar -jar cq-quickstart-6.5.0.jar  -p 4502 -Dsling.properties=conf/sling.properties -Dorg.apache.sling.launchpad.startupmode=UPDATE &

  4. Check /system/console/bundles, once all bundles are in active state and the system is fully upgraded, then stop the instance again.

  5. Restart the instance through the below command:

    java -server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true -Dsling.run.modes=author,crx3,crx3tar -jar cq-quickstart-6.5.0.jar -p 4502 -Dsling.properties=conf/sling.properties &

  6. The upgrade should complete successfully.


Additional information

This issue occurs when you are upgrading an AEM 6.4.2+ instance which was earlier upgraded from AEM 6.1 or AEM 6.2

On this page