Resolve the error "Error creating bean with name 'xdmConfigAdapter' defined in URL" during an upgrade
Print
Modified on: Wed, 17 Dec, 2025 at 2:20 PM
Issue
During an upgrade from an earlier version to 2025.1.x , the following error occurs and prevents the startup of the application:
2025-09-10 08:20 8 117--Blueprint Extender: 3-WARN -org.apache.aries.blueprint.spring.SpringApplicationContext:Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xdmConfigAdapter' defined in URL [bundleentry://133.fwk836350114/OSGI-INF/blueprint/security-config.xml]: Cannot resolve reference to bean 'waffleSecurityFilter' while setting constructor argument
2025-09-10 08:20 8 141--Blueprint Event Dispatcher: 1-ERROR-com.semarchy.platform.infra.InfraBundleListener:Unable to start Semarchy xDM platform caused by:
ClassNotFoundException: javax.servlet.http.HttpSessionBindingListener cannot be found by com.github.waffle.jna_3.3.0
While starting bundle com.semarchy.platform.accessmgmt_2025.1.6.20250715-5a658b4 [133]
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xdmConfigAdapter' defined in URL [bundleentry://133.fwk836350114/OSGI-INF/blueprint/security-config.xml]: Cannot resolve reference to bean 'waffleSecurityFilter' while setting constructor argument
[...]
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'waffleSecurityFilter' defined in URL [bundleentry://133.fwk836350114/OSGI-INF/blueprint/security-config.xml]: Resolution of declared constructors on bean Class [com.semarchy.platform.accessmgmt.adapters.waffle.WaffleSecurityFilter] from ClassLoader [org.eclipse.osgi.internal.loader.EquinoxClassLoader@3800fc99[com.semarchy.platform.accessmgmt:2025.1.6.20250715-5a658b4(id=133)]] failed
[...]
Caused by: java.lang.NoClassDefFoundError: javax/servlet/http/HttpSessionBindingListener
[...]
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpSessionBindingListener cannot be found by com.github.waffle.jna_3.3.0
Cause
With the change of namespace from javax to jakarta, many required additional libraries are now directly packaged into the semarchy.war.
If you leave the previous additional libraries in Tomcat, conflicts with the ClassLoader will occur.
Solution
You need to use a supported Java version as well as a supported Tomcat version
You need to ensure that there are no extra libraries in the Tomcat, except the default libraries shipped by Apache and the additional libraries found in the downloaded archive.
To be sure of that, you can either:
- Start from a newly installed Tomcat
- or delete all the content of the lib/ folder of the Tomcat, then copy the default libraries provided by Tomcat, and copy all the additional libraries from the downloaded archive.
Did you find it helpful?
Yes
No
Send feedback Sorry we couldn't be helpful. Help us improve this article with your feedback.