I was getting the below error in stderr.log file while trying to start the AEM(AEM 6.3) for the first time.
org.osgi.framework.BundleException: Exported package names cannot be zero length.
at org.apache.felix.framework.util.manifestparser.ManifestParser.normalizeExportClauses(ManifestParser.java:898)
at org.apache.felix.framework.util.manifestparser.ManifestParser.<init>(ManifestParser.java:216)
at org.apache.felix.framework.ExtensionManager.<init>(ExtensionManager.java:250)
at org.apache.felix.framework.Felix.<init>(Felix.java:429)
at org.apache.sling.launchpad.base.impl.SlingFelix.<init>(SlingFelix.java:49)
at org.apache.sling.launchpad.base.impl.Sling.createFramework(Sling.java:341)
at org.apache.sling.launchpad.base.impl.Sling.<init>(Sling.java:210)
at org.apache.sling.launchpad.base.app.MainDelegate$1.<init>(MainDelegate.java:180)
at org.apache.sling.launchpad.base.app.MainDelegate.start(MainDelegate.java:180)
at org.apache.sling.launchpad.app.Main.doStart(Main.java:411)
at org.apache.sling.launchpad.app.Main.doStart(Main.java:347)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.adobe.granite.quickstart.base.impl.exec.Bootstrap.run(Bootstrap.java:105)
at com.adobe.granite.quickstart.base.impl.Quickstart.run(Quickstart.java:273)
at com.adobe.granite.quickstart.base.impl.Main.<init>(Main.java:897)
at com.adobe.granite.quickstart.base.impl.Main.main(Main.java:959)
15.10.2019 22:35:56.252 *ERROR* [FelixStartLevel] ERROR: Bundle '1' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\com.adobe.granite.crypto-3.4.8.jar (org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto [1](R 1.0): missing requirement [com.adobe.granite.crypto [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=javax.security.auth.x500) Unresolved requirements: [[com.adobe.granite.crypto [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=javax.security.auth.x500)])
org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto [1](R 1.0): missing requirement [com.adobe.granite.crypto [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=javax.security.auth.x500) Unresolved requirements: [[com.adobe.granite.crypto [1](R 1.0)] osgi.wiring.package; (osgi.wiring.package=javax.security.auth.x500)]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.253 *ERROR* [FelixStartLevel] ERROR: Bundle '2' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\com.adobe.granite.startup-0.6.2.jar (org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.startup [2](R 2.0): missing requirement [com.adobe.granite.startup [2](R 2.0)] osgi.wiring.package; (osgi.wiring.package=javax.management) Unresolved requirements: [[com.adobe.granite.startup [2](R 2.0)] osgi.wiring.package; (osgi.wiring.package=javax.management)])
org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.startup [2](R 2.0): missing requirement [com.adobe.granite.startup [2](R 2.0)] osgi.wiring.package; (osgi.wiring.package=javax.management) Unresolved requirements: [[com.adobe.granite.startup [2](R 2.0)] osgi.wiring.package; (osgi.wiring.package=javax.management)]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.254 *ERROR* [FelixStartLevel] ERROR: Bundle '3' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\commons-io-2.5.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.commons.io [3](R 3.0): missing requirement [org.apache.commons.io [3](R 3.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.6)) Unresolved requirements: [[org.apache.commons.io [3](R 3.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.6))])
org.osgi.framework.BundleException: Unable to resolve org.apache.commons.io [3](R 3.0): missing requirement [org.apache.commons.io [3](R 3.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.6)) Unresolved requirements: [[org.apache.commons.io [3](R 3.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.6))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.255 *ERROR* [FelixStartLevel] ERROR: Bundle '4' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\jcl-over-slf4j-1.7.21.jar (org.osgi.framework.BundleException: Unable to resolve jcl.over.slf4j [4](R 4.0): missing requirement [jcl.over.slf4j [4](R 4.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.spi)(version>=1.7.21)) [caused by: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))] Unresolved requirements: [[jcl.over.slf4j [4](R 4.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.spi)(version>=1.7.21))])
org.osgi.framework.BundleException: Unable to resolve jcl.over.slf4j [4](R 4.0): missing requirement [jcl.over.slf4j [4](R 4.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.spi)(version>=1.7.21)) [caused by: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))] Unresolved requirements: [[jcl.over.slf4j [4](R 4.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.spi)(version>=1.7.21))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.256 *ERROR* [FelixStartLevel] ERROR: Bundle '5' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\log4j-over-slf4j-1.7.21.jar (org.osgi.framework.BundleException: Unable to resolve log4j.over.slf4j [5](R 5.0): missing requirement [log4j.over.slf4j [5](R 5.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.helpers)(version>=1.6.0)) [caused by: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))] Unresolved requirements: [[log4j.over.slf4j [5](R 5.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.helpers)(version>=1.6.0))])
org.osgi.framework.BundleException: Unable to resolve log4j.over.slf4j [5](R 5.0): missing requirement [log4j.over.slf4j [5](R 5.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.helpers)(version>=1.6.0)) [caused by: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))] Unresolved requirements: [[log4j.over.slf4j [5](R 5.0)] osgi.wiring.package; (&(osgi.wiring.package=org.slf4j.helpers)(version>=1.6.0))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.257 *ERROR* [FelixStartLevel] ERROR: Bundle '6' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.aries.util-1.1.1.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.aries.util [6](R 6.0): missing requirement [org.apache.aries.util [6](R 6.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.aries.util [6](R 6.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.aries.util [6](R 6.0): missing requirement [org.apache.aries.util [6](R 6.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.aries.util [6](R 6.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.258 *ERROR* [FelixStartLevel] ERROR: Bundle '7' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.felix.configadmin-1.9.0-B002.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.felix.configadmin [7](R 7.0): missing requirement [org.apache.felix.configadmin [7](R 7.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.8.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.felix.configadmin [7](R 7.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.8.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.felix.configadmin [7](R 7.0): missing requirement [org.apache.felix.configadmin [7](R 7.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.8.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.felix.configadmin [7](R 7.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.8.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.259 *ERROR* [FelixStartLevel] ERROR: Bundle '8' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.felix.coordinator-1.0.2.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.felix.coordinator [8](R 8.0): missing requirement [org.apache.felix.coordinator [8](R 8.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.felix.coordinator [8](R 8.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.felix.coordinator [8](R 8.0): missing requirement [org.apache.felix.coordinator [8](R 8.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.felix.coordinator [8](R 8.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.6.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.260 *ERROR* [FelixStartLevel] ERROR: Bundle '9' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.commons.log-5.0.0.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.commons.log [9](R 9.0): missing requirement [org.apache.sling.commons.log [9](R 9.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.3.0)) Unresolved requirements: [[org.apache.sling.commons.log [9](R 9.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.3.0))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.commons.log [9](R 9.0): missing requirement [org.apache.sling.commons.log [9](R 9.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.3.0)) Unresolved requirements: [[org.apache.sling.commons.log [9](R 9.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.3.0))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.260 *ERROR* [FelixStartLevel] ERROR: Bundle '10' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.commons.logservice-1.0.6.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.commons.logservice [10](R 10.0): missing requirement [org.apache.sling.commons.logservice [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.5.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.commons.logservice [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.5.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.commons.logservice [10](R 10.0): missing requirement [org.apache.sling.commons.logservice [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.5.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.commons.logservice [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.5.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.260 *ERROR* [FelixStartLevel] ERROR: Bundle '13' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.installer.core-3.8.6.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation) Unresolved requirements: [[org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation) Unresolved requirements: [[org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.261 *ERROR* [FelixStartLevel] ERROR: Bundle '14' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.installer.factory.configuration-1.1.2.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.factory.configuration [14](R 14.0): missing requirement [org.apache.sling.installer.factory.configuration [14](R 14.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.tasks)(version>=1.3.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)] Unresolved requirements: [[org.apache.sling.installer.factory.configuration [14](R 14.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.tasks)(version>=1.3.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.factory.configuration [14](R 14.0): missing requirement [org.apache.sling.installer.factory.configuration [14](R 14.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.tasks)(version>=1.3.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)] Unresolved requirements: [[org.apache.sling.installer.factory.configuration [14](R 14.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.tasks)(version>=1.3.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.262 *ERROR* [FelixStartLevel] ERROR: Bundle '15' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.installer.provider.file-1.1.0.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.provider.file [15](R 15.0): missing requirement [org.apache.sling.installer.provider.file [15](R 15.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.installer.provider.file [15](R 15.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.installer.provider.file [15](R 15.0): missing requirement [org.apache.sling.installer.provider.file [15](R 15.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.installer.provider.file [15](R 15.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.263 *ERROR* [FelixStartLevel] ERROR: Bundle '16' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.javax.activation-0.1.0.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.javax.activation [16](R 16.0): missing requirement [org.apache.sling.javax.activation [16](R 16.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.javax.activation [16](R 16.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.javax.activation [16](R 16.0): missing requirement [org.apache.sling.javax.activation [16](R 16.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.javax.activation [16](R 16.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.263 *ERROR* [FelixStartLevel] ERROR: Bundle '17' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.launchpad.installer-1.2.2.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.launchpad.installer [17](R 17.0): missing requirement [org.apache.sling.launchpad.installer [17](R 17.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.event)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)] Unresolved requirements: [[org.apache.sling.launchpad.installer [17](R 17.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.event)(version>=1.0.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.launchpad.installer [17](R 17.0): missing requirement [org.apache.sling.launchpad.installer [17](R 17.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.event)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.sling.installer.core [13](R 13.0): missing requirement [org.apache.sling.installer.core [13](R 13.0)] osgi.wiring.package; (osgi.wiring.package=javax.annotation)] Unresolved requirements: [[org.apache.sling.launchpad.installer [17](R 17.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.sling.installer.api.event)(version>=1.0.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.264 *ERROR* [FelixStartLevel] ERROR: Bundle '18' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\org.apache.sling.settings-1.3.8.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.settings [18](R 18.0): missing requirement [org.apache.sling.settings [18](R 18.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.settings [18](R 18.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))])
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.settings [18](R 18.0): missing requirement [org.apache.sling.settings [18](R 18.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.sling.settings [18](R 18.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.framework)(version>=1.4.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
15.10.2019 22:35:56.265 *ERROR* [FelixStartLevel] ERROR: Bundle '19' Error starting slinginstall:C:\Albin\AEMPlatform\AEM\6.3\crx-quickstart\launchpad\startup\1\slf4j-api-1.7.21.jar (org.osgi.framework.BundleException: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0)) Unresolved requirements: [[slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))])
org.osgi.framework.BundleException: Unable to resolve slf4j.api [19](R 19.0): missing requirement [slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0)) Unresolved requirements: [[slf4j.api [19](R 19.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=1.5.0))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4112)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2118)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
at java.base/java.lang.Thread.run(Thread.java:834)
CHILD process: shutdown hook
CHILD process: exiting
I was starting the server by double clicking on the quickstart jar, the startup process was struck without completion and also the error.log file was not generated.
The issue was started after recent installation of Java 11 to the machine, there was no luck even after pointing the JAVA_HOME and PATH environment variables to Java 8(AEM 6.3 supported Java 1.8).
To overcome the issue start the quickstart jar through command line interface - java -jar aem-author-p4502.jar
Before executing the command ensure JAVA_HOME and PATH environment variables are pointing to the supported Java version - Java 1.8 for AEM 6.3
Tech Mastery: Deep Dives into AEM, Cloud Technologies, AI Innovations, and Advanced Marketing Strate
Welcome to Tech Mastery, your expert source for insights into technology and digital strategy. Explore topics like Adobe Experience Manager, AWS, Azure, generative AI, and advanced marketing strategies. Delve into MACH architecture, Jamstack, modern software practices, DevOps, and SEO. Our blog is ideal for tech professionals and enthusiasts eager to stay ahead in digital innovations, from Content Management to Digital Asset Management and beyond.
Wednesday, October 16, 2019
Thursday, July 4, 2019
How to design the AEM website using Editable Template and Layout Container
How to design the AEM website using Editable Template and Layout Container
This video explains How to design the AEM website using Editable Template and Layout Container
Tuesday, June 25, 2019
How to add a custom thumbnail to AEM(Adobe Experience Manager) content packages?
This post explains the steps to add a custom thumbnail to AEM(Adobe Experience Manager) content packages.
Create an image named thumbnail.png -the recommended dimensions are 64 x 64 pixels.
Create a new folder named definition under: <ui.apps or ui.content>/src/main/content/META-INF/vault/definition
Add the thumbnail to the definition folder.
Inside the definition folder, add a file named .content.xml. Populate it with the following:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:vlt="http://www.day.com/jcr/vault/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
<thumbnail.png/>
</jcr:root>
Build&deploy the package - mvn clean install -PautoInstallPackage
Verify the custom thumbnail from package manager.
Create an image named thumbnail.png -the recommended dimensions are 64 x 64 pixels.
Create a new folder named definition under: <ui.apps or ui.content>/src/main/content/META-INF/vault/definition
Add the thumbnail to the definition folder.
Inside the definition folder, add a file named .content.xml. Populate it with the following:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:vlt="http://www.day.com/jcr/vault/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
<thumbnail.png/>
</jcr:root>
Build&deploy the package - mvn clean install -PautoInstallPackage
Verify the custom thumbnail from package manager.
Saturday, June 22, 2019
Error extracting plugin descriptor: 'Goal: * already exists in the plugin descriptor for prefix: *
Error extracting plugin descriptor: 'Goal: validate already exists in the plugin descriptor for prefix: test
I was getting the below error while installing the Maven plugin - mvn clean install
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor (default-descriptor) on project test: Error extracting plugin descriptor: 'Goal: validate already exists in the plugin descriptor for prefix: test
Existing implementation is: test.MyMojo
Conflicting implementation is: test.MyMojo'
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
The configurations are below
MyMojo.java
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
/**
* Goal which validate the content.
* @goal validate
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
public class MyMojo extends AbstractMojo
{
@Parameter (property="message", defaultValue="Default Message")
private String message;
public void execute() throws MojoExecutionException
{
System.console().writer().println(message);
}
}
After analysis, the root cause is @goal validate in the Java annotation and the @Mojo setting (name="validate") generating the same goal - validate and failing with the duplicate exception.
/**
* Goal which validate the content.
* @goal validate
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
The deployment is success after removing the @goal validate from the java annotation.
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
/**
* Goal which validate the content.
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
public class MyMojo extends AbstractMojo
{
@Parameter (property="message", defaultValue="Default Message")
private String message;
public void execute() throws MojoExecutionException
{
System.console().writer().println(message);
}
}
I was getting the below error while installing the Maven plugin - mvn clean install
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor (default-descriptor) on project test: Error extracting plugin descriptor: 'Goal: validate already exists in the plugin descriptor for prefix: test
Existing implementation is: test.MyMojo
Conflicting implementation is: test.MyMojo'
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51)
The configurations are below
MyMojo.java
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
/**
* Goal which validate the content.
* @goal validate
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
public class MyMojo extends AbstractMojo
{
@Parameter (property="message", defaultValue="Default Message")
private String message;
public void execute() throws MojoExecutionException
{
System.console().writer().println(message);
}
}
Pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>test</groupId>
<artifactId>test</artifactId>
<packaging>maven-plugin</packaging>
<version>1.0-SNAPSHOT</version>
<name>test Maven Mojo</name>
<url>http://maven.apache.org</url>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
<version>3.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
<version>3.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
<version>3.2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
* Goal which validate the content.
* @goal validate
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
The deployment is success after removing the @goal validate from the java annotation.
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
/**
* Goal which validate the content.
* @phase VERIFY
*/
@Mojo (name="validate", defaultPhase=LifecyclePhase.VERIFY, requiresProject=false )
public class MyMojo extends AbstractMojo
{
@Parameter (property="message", defaultValue="Default Message")
private String message;
public void execute() throws MojoExecutionException
{
System.console().writer().println(message);
}
}
Friday, June 21, 2019
How to expose Restful Services through JAX-RS(Jersey) in AEM
How to expose Restful Services through JAX-RS(Jersey) in AEM
JAX-RS is a specification that provides portable API’s for developing, exposing and accessing web applications designed and implemented in compliance with principals of REST architectural style.
-RS has annotations to bind specific URI patterns and HTTP methods to individual methods of your Java code. AEM is driven based on REST principals but there is no direct support for creating Restful services.
There are multiple implementations for JAX-RS specifications, this tutorial explains exposing REST based services in AEM through Jersey.
Install JAX-RS Jersey modules
As a first step, install the JAX-RS Jersey connector to AEM server
The connector modules can be downloaded from the following URL — https://search.maven.org/search?q=g:com.eclipsesource.jaxrs, the required modules are jersey-all, publisher and provider-gson

Install the modules through OSGI console —

Ensure the bundles are active


JAX-RS Component
Create a component with JAX-RS annotations.
package jaxrsservice.core.restservices;
import javax.ws.rs.Path;
import javax.ws.rs.*;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.osgi.service.component.annotations.Component;
@Component(service=RESTProductAPI.class)
@Path("/products")
public class RESTProductAPI {
@GET
@Path("/{catagroy}/{title}/p/{code : \\d{5}}")
@Produces({MediaType.TEXT_PLAIN})
public String getProductDetails(@Context HttpServletRequest request, @Context HttpServletResponse response,@PathParam("catagroy") String catagroy,@PathParam("title") String title,@PathParam("code") String code) {
return "code="+code+";catagroy="+catagroy+";title="+title;
}
@POST
@Path("/create")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Product createProduct(Product product) {
product.setResult("Product Created");
product.setId("1");
return product;
}
}
import javax.ws.rs.Path;
import javax.ws.rs.*;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.osgi.service.component.annotations.Component;
@Component(service=RESTProductAPI.class)
@Path("/products")
public class RESTProductAPI {
@GET
@Path("/{catagroy}/{title}/p/{code : \\d{5}}")
@Produces({MediaType.TEXT_PLAIN})
public String getProductDetails(@Context HttpServletRequest request, @Context HttpServletResponse response,@PathParam("catagroy") String catagroy,@PathParam("title") String title,@PathParam("code") String code) {
return "code="+code+";catagroy="+catagroy+";title="+title;
}
@POST
@Path("/create")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Product createProduct(Product product) {
product.setResult("Product Created");
product.setId("1");
return product;
}
}
Some of the important annotation used to define the component
@POST/@GET — HTTP Method supported by the method, the other HTTP methods can be used based on the requirement
@Path — URL path, static or dynamic regex based URL’s can be defined
@Produces — The output produced by the method e.g MediaType.APPLICATION_JSON and MediaType.TEXT_PLAIN etc
@Consumes — The input consumed by the method e.g MediaType.APPLICATION_JSON and MediaType.APPLICATION_FORM_URLENCODED etc
@Path — URL path, static or dynamic regex based URL’s can be defined
@Produces — The output produced by the method e.g MediaType.APPLICATION_JSON and MediaType.TEXT_PLAIN etc
@Consumes — The input consumed by the method e.g MediaType.APPLICATION_JSON and MediaType.APPLICATION_FORM_URLENCODED etc
POJO class to map JSON input/Output
package jaxrsservice.core.restservices;
public class Product {
private String id;
private String name;
private String title;
private String category;
private String desc;
private String result;
public void setId(String id)
{
this.id=id;
}
public void setName(String name)
{
this.name=name;
}
public void setTitle(String title)
{
this.title=title;
}
public void setCategory(String category)
{
this.category=category;
}
public void setDesc(String desc)
{
this.desc=desc;
}
public void setResult(String result)
{
this.result=result;
}
public String getId()
{
return id;
}
public String getName()
{
return name;
}
public String getTitle()
{
return title;
}
public String getCategory()
{
return category;
}
public String getDesc()
{
return desc;
}
public String getResult()
{
return result;
}
}
public class Product {
private String id;
private String name;
private String title;
private String category;
private String desc;
private String result;
public void setId(String id)
{
this.id=id;
}
public void setName(String name)
{
this.name=name;
}
public void setTitle(String title)
{
this.title=title;
}
public void setCategory(String category)
{
this.category=category;
}
public void setDesc(String desc)
{
this.desc=desc;
}
public void setResult(String result)
{
this.result=result;
}
public String getId()
{
return id;
}
public String getName()
{
return name;
}
public String getTitle()
{
return title;
}
public String getCategory()
{
return category;
}
public String getDesc()
{
return desc;
}
public String getResult()
{
return result;
}
}
Maven dependency to support JAX-RS annotations
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0</version>
</dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0</version>
</dependency>
Sample Code Repository
Deploy the component as a core module(execute mvn clean install -PautoInstallBundle from the core folder) and ensure the module is active
Now the service is ready to accept the requests and ready for testing
getProductDetails — http://localhost:4502/services/products/catagroyTest/sampleTitle/p/12345(GET)
This will provide the following response - code=12345;catagroy=catagroyTest;title=sampleTitle
createProduct — http://localhost:4502/services/products/create (POST)
Tested through Postman
Sample Input:
{
“name”:”testName”,
“title”:”titleTest”,
“catagory”:”catagoryTest”,
“desc”:”descTest”
}
Sample Output:
{
“id”: “1”,
“name”: “testName”,
“title”: “titleTest”,
“desc”: “descTest”,
“result”: “Product Created”
}

By using JAX-RS(Jersey) OSGI modules the REST API’s can be exposed in AEM, JAX-RS provides more flexibility to define the REST services — handling different input/output types, mapping of inputs/outputs to/from POJO’s. Allows to define more dynamic URL paths to the REST services. AEM built on REST principles so by default supports the REST based services but JAX-RS can be used based on the use cases.
Subscribe to:
Posts (Atom)