I am in the process of migrating AEM 6.5 codebase to AEM as a cloud service. In my current code we are using nu.xom for XML elements processing. There are huge number of classes utilising this library. We are using jdk 11 for our local development. The nu.xom is working fine and services are giving expected results in local. But after deploying to AEM cloud instance, my services are not getting initialised .
Below is the error we are observing for the service component:
Please suggest how to resolve it.
"state": "failed activation",
"failure": "java.lang.IllegalAccessError: superclass access check failed: class nu.xom.JDK15XML1_0Parser (in unnamed module @0x5a2bd86e) cannot access class com.sun.org.apache.xerces.internal.parsers.SAXParser (in module java.xml) because module java.xml does not export com.sun.org.apache.xerces.internal.parsers to unnamed module @0x5a2bd86e\n\tat java.base/java.lang.ClassLoader.defineClass1(Native Method)\n\tat java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)\n\tat org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2338)\n\tat org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClassParallel(BundleWiringImpl.java:2156)\n\tat org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2090)\n\tat org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1556)\n\tat org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)\n\tat org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1976)\n\tat java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)\n\tat java.base/java.lang.Class.forName0(Native Method)\n\tat java.base/java.lang.Class.forName(Class.java:421)\n\tat java.base/java.lang.Class.forName(Class.java:412)\n\tat nu.xom.Builder.findParser(Builder.java:211)\n\tat nu.xom.Builder.<init>(Builder.java:145)\n\tat nu.xom.Builder.<init>(Builder.java:125)\n\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:580)\n\tat org.apache.felix.scr.impl.inject.methods.BaseMethod.invokeMethod(BaseMethod.java:257)\n\tat org.apache.felix.scr.impl.inject.methods.BaseMethod.access$500(BaseMethod.java:41)\n\tat org.apache.felix.scr.impl.inject.methods.BaseMethod$Resolved.invoke(BaseMethod.java:701)\n\tat org.apache.felix.scr.impl.inject.methods.BaseMethod.invoke(BaseMethod.java:544)\n\tat org.apache.felix.scr.impl.inject.methods.ActivateMethod.invoke(ActivateMethod.java:317)\n\tat org.apache.felix.scr.impl.inject.methods.ActivateMethod.invoke(ActivateMethod.java:307)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:354)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:115)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:1002)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:975)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.methods.BindMethod.getServiceObject(BindMethod.java:675)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.prebind(DependencyManager.java:441)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleDynamicCustomizer.prebind(DependencyManager.java:1189)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.field.FieldHandler$ReferenceMethodImpl.getServiceObject(FieldHandler.java:552)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.prebind(DependencyManager.java:1414)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1843)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:1060)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:955)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:920)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:349)\n\tat org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:249)\n\tat org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:362)\n\tat org.apache.felix.framework.Felix.getService(Felix.java:3984)\n\tat org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:450)\n\tat org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:88)\n\tat org.apache.felix.scr.impl.inject.methods.BindMethod.getServiceObject(BindMethod.java:675)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2625)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.doInvokeBindMethod(DependencyManager.java:2091)\n\tat org.apache.felix.scr.impl.manager.DependencyManager.invokeBindMethod(DependencyManager.java:2074)\n\tat org.apache.felix.scr.impl.manager.SingleComponentManager.invokeBindMethod(SingleComponentManager.java:443)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:337)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:304)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184)\n\tat org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:117)\n\tat org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)\n\tat org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)\n\tat org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)\n\tat org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863)\n\tat org.apache.felix.framework.Felix.registerService(Felix.java:3834)\n\tat org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915)\n\tat org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1287)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1238)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184)\n\tat org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:117)\n\tat org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)\n\tat org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)\n\tat org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)\n\tat org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863)\n\tat org.apache.felix.framework.Felix.registerService(Felix.java:3834)\n\tat org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915)\n\tat org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleDynamicCustomizer.addedService(DependencyManager.java:861)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleDynamicCustomizer.addedService(DependencyManager.java:816)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184)\n\tat org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:117)\n\tat org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)\n\tat org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)\n\tat org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)\n\tat org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863)\n\tat org.apache.felix.framework.Felix.registerService(Felix.java:3834)\n\tat org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:929)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:915)\n\tat org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:984)\n\tat org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:752)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1287)\n\tat org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:1238)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1232)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1152)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:959)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:895)\n\tat org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1184)\n\tat org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:117)\n\tat org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)\n\tat org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)\n\tat org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)\n\tat org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863)\n\tat org.apache.felix.framework.Felix.registerService(Felix.java:3834)\n\tat org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328)\n\tat org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:335)\n\tat org.apache.sling.engine.impl.helper.SlingServletContext.registerServletContext(SlingServletContext.java:217)\n\tat org.apache.sling.engine.impl.helper.SlingServletContext.lambda$contextInitialized$0(SlingServletContext.java:248)\n\tat java.base/java.lang.Thread.run(Thread.java:1583)\n",
Topics help categorize Community content and increase your ability to discover relevant content.
Views
Replies
Total Likes
hi @RaviRa22, have a look at this article on how to embed third-party dependency.
Views
Replies
Total Likes
You are:
Using nu.xom extensively for XML handling.
On Java 11 locally where it works because you control the JVM options.
Deploying to AEM as a Cloud Service, where:
You cannot modify the JVM arguments (like --add-exports).
Access to internal JDK packages (like com.sun.org.apache.xerces.internal.parsers.SAXParser) is strictly blocked.
Hence, XOM fails to load and causes OSGi component activation failure.
XOM relies on internal JDK classes which are blocked in cloud JVM environments.
AEMaaCS enforces strict security and modularization, and you cannot override or open up internal packages.
Therefore, continuing to use XOM is not feasible in AEM Cloud.
Here are solid, supported, and cloud-safe alternatives:
Use Case Recommended Alternative
Simple XML parsing | javax.xml.parsers (JAXP) |
Advanced DOM handling | JDOM2 (https://www.jdom.org) |
Streaming large XML files | StAX (javax.xml.stream) |
XPath processing | javax.xml.xpath |
JDOM2 is a great replacement for XOM—clean API and actively maintained.
Since you mentioned “huge number of classes using XOM”, consider:
Introduce a wrapper utility (e.g., XmlUtil) using new APIs.
Refactor incrementally: Convert XOM-dependent classes one module or feature at a time.
Use adapter methods: Write temporary shims that convert between XOM and JDOM if needed during migration.
Add unit tests: Ensure existing XML logic behaves the same with new parser.
@RaviRa22 Did you find the suggestion helpful? If you need more information, please let us know. If a response resolved your issue, kindly mark it as correct to help others in the future. Alternatively, if you discovered a solution on your own, we'd appreciate it if you could share it with the community. Thank you.
Views
Replies
Total Likes