ClassNotFoundException when trying to start my web app

I cannot make my spring boot kotlin web app to work with okta.
when I enter the suggested configuration, that is:
okta:
oauth2:
client-id: {clientId}
client-secret: {{client-secret}
issuer: https://{subdomain}.okta.com/oauth2/default
redirect-uri: /authorization-code/callback

I get the following error:

java.lang.IllegalStateException: Cannot load configuration class: com.okta.spring.boot.oauth.OktaOAuth2AutoConfig	at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:413) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanFactory(ConfigurationClassPostProcessor.java:253) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:286) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:130) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:705) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:531) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:744) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:391) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at org.springframework.boot.SpringApplication.run(SpringApplication.java:312) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) ~[spring-boot-2.1.9.RELEASE.jar:2.1.9.RELEASE]	at com.advii.MyStravaStats.MyStravaStatsApplicationKt.main(MyStravaStatsApplication.kt:56) ~[classes/:na] Caused by: java.lang.IllegalStateException: Unable to load cache item	at org.springframework.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:79) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.internal.LoadingCache.get(LoadingCache.java:34) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.AbstractClassGenerator$ClassLoaderData.get(AbstractClassGenerator.java:134) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:319) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.proxy.Enhancer.createHelper(Enhancer.java:569) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.proxy.Enhancer.createClass(Enhancer.java:416) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.annotation.ConfigurationClassEnhancer.createClass(ConfigurationClassEnhancer.java:137) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.annotation.ConfigurationClassEnhancer.enhance(ConfigurationClassEnhancer.java:109) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:402) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	... 12 common frames omitted Caused by: java.lang.NoClassDefFoundError: org/springframework/security/oauth2/client/oidc/web/logout/OidcClientInitiatedLogoutSuccessHandler	at java.base/java.lang.Class.getDeclaredMethods0(Native Method) ~[na:na]	at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3167) ~[na:na]	at java.base/java.lang.Class.getDeclaredMethods(Class.java:2310) ~[na:na]	at org.springframework.cglib.core.ReflectUtils.addAllMethods(ReflectUtils.java:443) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.proxy.Enhancer.getMethods(Enhancer.java:632) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.proxy.Enhancer.generateClass(Enhancer.java:667) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.transform.TransformingClassGenerator.generateClass(TransformingClassGenerator.java:33) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanFactoryAwareGeneratorStrategy.generate(ConfigurationClassEnhancer.java:252) ~[spring-context-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.AbstractClassGenerator.generate(AbstractClassGenerator.java:358) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.proxy.Enhancer.generate(Enhancer.java:582) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:110) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:108) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at org.springframework.cglib.core.internal.LoadingCache$2.call(LoadingCache.java:54) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]	at org.springframework.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:61) ~[spring-core-5.1.10.RELEASE.jar:5.1.10.RELEASE]	... 20 common frames omitted Caused by: java.lang.ClassNotFoundException: org.springframework.security.oauth2.client.oidc.web.logout.OidcClientInitiatedLogoutSuccessHandler	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583) ~[na:na]	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) ~[na:na]	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na]	... 36 common frames omitted 

and when I remove the client-secret-setting, I see the okta login dialog, but then get the too many redirections error.
Any idea what that might be?

my pom.xml:

<dependencies>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter</artifactId>	</dependency>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter-web</artifactId>	</dependency>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter-test</artifactId>	<scope>test</scope>	<exclusions>	<exclusion>	<groupId>junit</groupId>	<artifactId>junit</artifactId>	</exclusion>	</exclusions>	</dependency>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter-cache</artifactId>	</dependency>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter-data-jpa</artifactId>	</dependency>	<dependency>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-starter-security</artifactId>	</dependency>	<dependency>	<groupId>org.springframework.security</groupId>	<artifactId>spring-security-oauth2-client</artifactId>	</dependency>	<dependency>	<groupId>com.h2database</groupId>	<artifactId>h2</artifactId>	<scope>runtime</scope>	</dependency>	<!-- junit 5 -->	<dependency>	<groupId>org.junit.jupiter</groupId>	<artifactId>junit-jupiter-api</artifactId>	<scope>test</scope>	</dependency>	<dependency>	<groupId>org.junit.jupiter</groupId>	<artifactId>junit-jupiter-engine</artifactId>	<scope>test</scope>	</dependency>	<dependency>	<groupId>org.junit.jupiter</groupId>	<artifactId>junit-jupiter</artifactId>	<version>5.5.2</version>	<scope>test</scope>	</dependency>	<dependency>	<groupId>org.mockito</groupId>	<artifactId>mockito-junit-jupiter</artifactId>	<version>2.24.0</version>	<scope>test</scope>	</dependency>	<!--google-->	<dependency>	<groupId>com.google.oauth-client</groupId>	<artifactId>google-oauth-client-jetty</artifactId>	<version>1.23.0</version>	</dependency>	<dependency>	<groupId>com.google.apis</groupId>	<artifactId>google-api-services-drive</artifactId>	<version>v3-rev173-1.25.0</version>	</dependency>	<!--kotlin-->	<dependency>	<groupId>org.jetbrains.kotlin</groupId>	<artifactId>kotlin-stdlib-jdk8</artifactId>	</dependency>	<dependency>	<groupId>org.jetbrains.kotlin</groupId>	<artifactId>kotlin-reflect</artifactId>	</dependency>	<dependency>	<groupId>com.fasterxml.jackson.module</groupId>	<artifactId>jackson-module-kotlin</artifactId>	</dependency>	<!--okta auth-->	<dependency>	<groupId>com.okta.spring</groupId>	<artifactId>okta-spring-boot-starter</artifactId>	<version>1.3.0</version>	</dependency> </dependencies> <build>	<sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>	<testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>	<plugins>	<plugin>	<groupId>org.springframework.boot</groupId>	<artifactId>spring-boot-maven-plugin</artifactId>	</plugin>	<plugin>	<groupId>org.apache.maven.plugins</groupId>	<artifactId>maven-resources-plugin</artifactId>	<configuration>	<delimiters>	<delimiter>^</delimiter>	</delimiters>	<useDefaultDelimiters>false</useDefaultDelimiters>	</configuration>	</plugin>	<plugin>	<groupId>org.jetbrains.kotlin</groupId>	<artifactId>kotlin-maven-plugin</artifactId>	<configuration>	<args>	<arg>-Xjsr305=strict</arg>	</args>	<compilerPlugins>	<plugin>spring</plugin>	<plugin>no-arg</plugin>	</compilerPlugins>	</configuration>	<dependencies>	<dependency>	<groupId>org.jetbrains.kotlin</groupId>	<artifactId>kotlin-maven-allopen</artifactId>	<version>${kotlin.version}</version>	</dependency>	</dependencies>	</plugin>	</plugins> </build>

Hi advii, I am also facing same issue like you.
Did you find any workaround of this problem ?

HI!
what I did was the following:
created a new spring boot app with spring boot initializer, including okta. I noticed that the maven dependencies were different than in my original project. then made sure okta authentication and authorization works with the newly generated project. then I adjusted the dependencies in my original project and it worked. please try this path. if you get stuck I can show you my dependencies but I guess it wont be necessary. cheerio.

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.