Getting java.lang.ClassNotFoundException: com.sun.el.ExpressionFactoryImpl when upgrading 7.19 to 7.20 camunda version

Hi Team,
Currently we are using the Camunda 7.17 and planning to migrate to 7.21 version. Getting below error when trying to update from 7.19 to 7.20, the same error persist in 7.21 version as well.
I have referred Update from 7.19 to 7.20 | docs.camunda.org and also make sure the camunda-juel-7.20.0.jar is part of the library. But still getting same error.
Using SpringBoot: 3.4.0.

2025-01-02 14:49:26.522 ERROR [dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.util.concurrent.CompletionException: java.lang.ExceptionInInitializerError] with root cause
java.lang.ClassNotFoundException: com.sun.el.ExpressionFactoryImpl
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[?:?]
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[?:?]
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
	at org.camunda.bpm.impl.juel.jakarta.el.FactoryFinder.newInstance(FactoryFinder.java:43) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.FactoryFinder.find(FactoryFinder.java:135) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.ExpressionFactory.newInstance(ExpressionFactory.java:140) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.ExpressionFactory.newInstance(ExpressionFactory.java:110) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.ELUtil.<clinit>(ELUtil.java:60) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.BeanELResolver.invoke(BeanELResolver.java:430) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.jakarta.el.CompositeELResolver.invoke(CompositeELResolver.java:198) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.AstMethod.invoke(AstMethod.java:91) ~[camunda-juel-7.20.0.jar!/:7.20.0]
	at org.camunda.bpm.impl.juel.AstMethod.eval(AstMethod.java:75) ~[camunda-juel-7.20.0.jar!/:7.20.0]

Hi @SELVARAJ_PERIYASAMY and welcome to the forum.
It seems you’re missing the implementation for the evaluation of the Jakarta EL.
You could try to include the reference implementation:

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>jakarta.el</artifactId>
    <version>4.0.2</version>
</dependency>

@rohwerj , Tried the same but no luck, getting the same error.

Could you please provide the POM with the dependencies you’re using?
And also please check this list, as Camunda 7.20 is not compatible with spring-boot 3.4.x, maybe that is causing problems:

Tried with Camunda 7.20 & 7.21 with Spring Boot 3.1.12 & 3.2.12, no luck. Ending up with the same error.

Thinks are working fine until 7.19 which is using the SpringBoot 2.7.x, facing the issue starting 7.20 which intern need the SpringBoot 3.x.

Few more observations:

  1. Everything works (In all the above Camunda & SpringBoot versions) fine when we are starting the application via IDE. (IntelliJ etc) , but failing when we starting the application in command line using fat jar (java -jar abc.jar).
  2. Working fine when starting the application via “mvn spring-boot:run” command.
  3. Able to see all the dependencies are packaged in the fat jar.