his article provides instructions for resolving java.lang.NoSuchMethodError exceptions that occur when the Identity Manager (IDM) server fails to start after applying Cumulative Patch 2 (CP2) via the CP Deployer tool.
After upgrading to IDM 14.4 CP2, the JBoss/Wildfly server fails to start. The logs display a java.lang.NoSuchMethodError pointing to Spring Framework components: java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotatedElementUtils.getAnnotationAttributes(...)
This issue is caused by conflicting Spring JAR files being loaded by the application server. The CP Deployer tool in the original CP2 package may fail to remove older library versions while deploying new ones, leading to classpath conflicts.
You have two options to resolve this conflict:
Option 1: Download Revised Package: Download the updated CP2 package released on 07-03-2023, which includes a corrected Patch Deployer Tool. .
Option 2: Manual Cleanup: If you cannot redeploy, manually remove the conflicting JARs from the deployment directory:
iam_im.ear folder: ../iam_im.ear/user_console.war/WEB-INF/lib/ (and check wpServer.war/WEB-INF/lib/ if necessary).spring-web-4.0.5.RELEASE.jar) that conflict with the newer versions deployed by CP2 (e.g., spring-web-5.3.18.jar).
If the log displays a different JAR (e.g., spring-web-4.0.5.RELEASE.jar), search for and remove that specific file from the iam_im.ear library paths.
On 14.4 CP2 CP Deployer might not remove older jar files, leading to the same conflict, older files should be removed if both new and old version exist, example below:
[caidm@idm-test wildflyIDM-14.4.2]$ find -type f -name *spring*| sort
./modules/system/layers/base/org/jboss/resteasy/resteasy-spring/main/bundled/resteasy-spring-jar/resteasy-spring-3.6.2.Final.jar
./standalone/deployments/iam_im.ear/ca-nim-sm.war/license/springframework 3.2.8.txt
./standalone/deployments/iam_im.ear/library/spring-aop-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-aop-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-beans-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-beans-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-context-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-context-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-core-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-core-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-expression-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-expression-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-tx-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-tx-5.3.18.jar
./standalone/deployments/iam_im.ear/library/spring-web-4.0.5.RELEASE.jar
./standalone/deployments/iam_im.ear/library/spring-web-5.3.18.jar
./standalone/deployments/iam_im.ear/user_console.war/WEB-INF/lib/spring-ldap-core-2.3.1.RELEASE.jar
./standalone/deployments/iam_im.ear/user_console.war/WEB-INF/lib/spring-ldap-core-2.4.1.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-jdbc-4.1.1.RELEASE.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-jdbc-5.3.18.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-oxm-4.0.5.RELEASE.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-oxm-5.3.18.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-webmvc-4.0.5.RELEASE.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-webmvc-5.3.18.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-ws-core-2.2.0.RELEASE.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-ws-core-3.1.3.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-xml-2.2.0.RELEASE.jar
./standalone/deployments/iam_im.ear/wpServer.war/WEB-INF/lib/spring-xml-3.1.3.jar