okta / samples-java-spring

Spring Boot samples
Apache License 2.0
161 stars 160 forks source link

Facing issue on springboot okta in weblogic server #88

Closed smworld30 closed 3 years ago

smworld30 commented 3 years ago

For spring-boot 2.4.2 with okta-spring-boot-starter 2.0.0 ,not able to deploy the application in weblogic where as tomcat/jboss deployment is fine. In weblogic facing below issue. Request help on this

java.lang.IllegalArgumentException: Unable to instantiate org.springframework.boot.env.EnvironmentPostProcessor 
[com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor]
    at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:103)
    at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
    at org.springframework.boot.env.ReflectionEnvironmentPostProcessorsFactory.getEnvironmentPostProcessors(ReflectionEnvironmentPostProcessorsFactory.java:63)
    at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.getEnvironmentPostProcessors(EnvironmentPostProcessorApplicationListener.java:117)
    at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:99)
    at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:86)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
    at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:82)
    at org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:63)
    at java.util.ArrayList.forEach(ArrayList.java:1259)
    at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:117)
    at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:111)
    at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:62)
    at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:362)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:320)
    at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173)
    at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153)
    at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95)
    at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:174)
    at weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1433)
    at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1372)
    at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1353)
    at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1925)
    at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3191)
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1864)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:919)
    at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360)
    at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:356)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:138)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:78)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:52)
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:752)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:262)
    at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:52)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90)
    at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:274)
    at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:507)
    at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:53)
    at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:202)
    at weblogic.management.deploy.internal.AppTransition$2.transitionAppInternal(AppTransition.java:53)
    at weblogic.management.deploy.internal.AppTransition.transitionApp(AppTransition.java:138)
    at weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:741)
    at weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:109)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:749)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:702)
    at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:381)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:219)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:133)
    at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76)
    at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1287)
    at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:333)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:375)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
    at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
    at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698)
    at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
    at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
    at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:90)
    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1237)
    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1168)
    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpOneLevel.run(CurrentTaskFuture.java:786)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:681)
    at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)
    at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)
    at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)
    at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
    at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:360)
Caused by: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
    at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
    at org.springframework.util.Assert.isAssignable(Assert.java:651)
    at org.springframework.util.Assert.isAssignable(Assert.java:682)
    at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
    ... 92 common frames omitted
<Feb 10, 2021 6:09:57,247 AM CST> <Warning> <javax.enterprise.resource.webcontainer.jsf.config> <BEA-000000> <Unexpected state during contextDestroyed: no ConfigManager instance in current ServletContext but one is expected to exist.> 
<Feb 10, 2021 6:09:57,277 AM CST> <Error> <Deployer> <BEA-149231> <Unable to set the activation state to true for the application "learning".
weblogic.application.ModuleException: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
    at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
    at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
    at org.springframework.util.Assert.isAssignable(Assert.java:651)
    at org.springframework.util.Assert.isAssignable(Assert.java:682)
    at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
    at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
    Truncated. see log file for complete stacktrace
sergiishamrai-okta commented 3 years ago

Thanks for reporting this issue. We'll review this internally and provide you an update when we have more info to share.

sergiishamrai-okta commented 3 years ago

Internal ref: OKTA-370269

bdemers commented 3 years ago

Hi @smworld30 !

Any chance this is also you? https://stackoverflow.com/questions/66074572/springboot-with-okta-application-deployed-in-weblogic-server

How are you deploying your application? WAR, EAR? Can you create a minimal reproduction case?

smworld30 commented 3 years ago

Hello, Yes This is me who raised the question in stack overflow. But not getting any reply from anyone.

I have made a basic Springboot project through Spring initializer. The configuration is Java 8 maven project with spring boot 2.4.2 with packaging war. Taking the dependency as Spring web and okta. After that I add my okta configuration in application.properties file as below

okta.oauth2.issuer= <<issuer url>>
okta.oauth2.client-id=<<client id>>
okta.oauth2.client-secret= <<client secret>>

I have taken spring-boot-starter-parent 2.4.2 and okta-spring-boot-starter 2.0.0 dependency in the project. The application is successfully deployed in tomcat and jboss server But I am not able to deploy the application in weblogic 12C version and that is the issue.

Weblogic deployment is showing failed with below error

java.lang.IllegalArgumentException: Unable to instantiate
org.springframework.boot.env.EnvironmentPostProcessor
[com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor]
at
org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:103)
at
org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
at
org.springframework.boot.env.ReflectionEnvironmentPostProcessorsFactory.getEnvironmentPostProcessors(ReflectionEnvironmentPostProcessorsFactory.java:63)
at
org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.getEnvironmentPostProcessors(EnvironmentPostProcessorApplicationListener.java:117)
at
org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:99)
at
org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:86)
at
org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at
org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at
org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at
org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
at
org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:82)
at
org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:63)
at java.util.ArrayList.forEach(ArrayList.java:1259)
at
org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:117)
at
org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:111)
at
org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:62)
at
org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:362)
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:320)
at
org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173)
at
org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153)
at
org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95)
at
org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:174)
at
weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1433)
at
weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1372)
at
weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1353)
at
weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1925)
at
weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3191)
at
weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1864)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:919)
at
weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360)
at
weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:356)
at
weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at
weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:138)
at
weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at
weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
at
weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
at
weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at
weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:78)
at
weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:52)
at
weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:752)
at
weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at
weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:262)
at
weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:52)
at
weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165)
at
weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90)
at
weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:274)
at
weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:507)
at
weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:53)
at
weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:202)
at
weblogic.management.deploy.internal.AppTransition$2.transitionAppInternal(AppTransition.java:53)
at
weblogic.management.deploy.internal.AppTransition.transitionApp(AppTransition.java:138)
at
weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:741)
at
weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:109)
at
weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:749)
at
weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:702)
at
weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:381)
at
weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:233)
at
weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:219)
at
weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:133)
at
weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76)
at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1287)
at
org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:333)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:375)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at
org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at
org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
at
org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
at
org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698)
at
org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78)
at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212)
at
org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at
org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at
org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
at
org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
at
org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:90)
at
org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1237)
at
org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1168)
at
org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpOneLevel.run(CurrentTaskFuture.java:786)
at
weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:681)
at
weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)
at
weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)
at
weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)
at
weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at
weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:360)
Caused by: java.lang.IllegalArgumentException: class
com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor
is not assignable to interface
org.springframework.boot.env.EnvironmentPostProcessor
at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
at org.springframework.util.Assert.isAssignable(Assert.java:651)
at org.springframework.util.Assert.isAssignable(Assert.java:682)
at
org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
... 92 common frames omitted
<Feb 10, 2021 6:09:57,247 AM CST> <Warning>
<javax.enterprise.resource.webcontainer.jsf.config> <BEA-000000>
<Unexpected state during contextDestroyed: no ConfigManager instance in
current ServletContext but one is expected to exist.>
<Feb 10, 2021 6:09:57,277 AM CST> <Error> <Deployer> <BEA-149231> <Unable
to set the activation state to true for the application "learning".
weblogic.application.ModuleException: java.lang.IllegalArgumentException:
class
com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor
is not assignable to interface
org.springframework.boot.env.EnvironmentPostProcessor
at
weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
at
weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at
weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
at
weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
at
weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
Truncated. see log file for complete stacktrace
Caused By: java.lang.IllegalArgumentException: class
com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor
is not assignable to interface
org.springframework.boot.env.EnvironmentPostProcessor
at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
at org.springframework.util.Assert.isAssignable(Assert.java:651)
at org.springframework.util.Assert.isAssignable(Assert.java:682)
at
org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
at
org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
Truncated. see log file for complete stacktrace

Appreciate help on this

Thanks and Regards,

On Tue, Feb 16, 2021 at 9:17 PM Brian Demers notifications@github.com wrote:

Hi @smworld30 https://github.com/smworld30 !

Any chance this is also you? https://stackoverflow.com/questions/66074572/springboot-with-okta-application-deployed-in-weblogic-server

How are you deploying your application? WAR, EAR? Can you create a minimal reproduction case?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/okta/samples-java-spring/issues/88#issuecomment-779923827, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQB6QHFOM63OOVUJ24WMKXTS7KHP5ANCNFSM4XWNYNSA .

bdemers commented 3 years ago

Thanks! that's helpful!

smworld30 commented 3 years ago

Hello,

I am curious to know if you have got the chance to look into this or if you have any update?

Thanks and Regards

On Tue, Feb 16, 2021 at 10:08 PM Brian Demers notifications@github.com wrote:

Thanks! that's helpful!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/okta/samples-java-spring/issues/88#issuecomment-779958686, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQB6QHEWI7FKOY7CFCRVOFLS7KNPBANCNFSM4XWNYNSA .

sergiishamrai-okta commented 3 years ago

Thanks for your report. We've put it on our roadmap. Follow this issue for updates.

arvindkrishnakumar-okta commented 3 years ago

@smworld30 Can you double-check or reference your deployment steps with https://o7planning.org/11901/deploy-spring-boot-application-on-oracle-weblogic-server#a20474023 to ensure nothing is missed?

smworld30 commented 3 years ago

Hello, Yes its same with the steps mentioned in the link 1.My application is war 2.In pom below is added

org.springframework.boot spring-boot-starter-tomcat provided

3.I dont have more than one application class in my project. Hence I didn't add tag in pom 4.The dispatcherServlet-servlet.xml and weblogic.xml is added. I am curios to know if the below package inclusion is mandatory in weblogic.xml? although I have added as mentioned in the link

org.springframework.* 5.My ServletInitializer class implements WebApplicationInitializer After all these configuration I build a war by running mvn clean install then I take the war and deploy in weblogic admin console by installing the war file from my local machine as mentioned in the instruction. Note : It good to mention that apart from the okta configuration in application.properties the application is running fine in weblogic. But after adding the okta properties Its getting failed to deploy on weblogic Appreciate help on this
arvindkrishnakumar-okta commented 3 years ago

@smworld30 Thanks for the details. I'll try to reproduce the issue.

arvindkrishnakumar-okta commented 3 years ago

@smworld30 I tried this out and was able to successfully deploy the springboot app.

Here are the steps I did (used this as reference):

  1. Generated a sample project with Spring Intializr. See the snapshot below for version/configuration info.
image
  1. Added dispatcherServlet-servlet.xml and weblogic.xml to src/main/web-app/WEB-INF (per the notes in the above link). Not sure if this step is really needed though.
  2. Added the below Okta properties to src/main/resources/application.properties:
okta.oauth2.issuer=https://dev-xxxxxx.okta.com/oauth2/default
okta.oauth2.client-id=******
okta.oauth2.client-secret=******
  1. My ServletInitializer looks like this (unmodified from Spring Initializr generated one):
package com.example.demo;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class ServletInitializer extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(DemoApplication.class);
    }
}
  1. Built a war using mvn clean install.
  2. Deployed the war to Weblogic 12c via admin console.
image image

Server Console Log:

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
<Feb 19, 2021 1:02:43 PM PST> <Info> <Security> <BEA-090905> <Disabling the CryptoJ JCE Provider self-integrity check for better startup performance. To enable this check, specify -Dweblogic.security.allowCryptoJDefaultJCEVerification=true.>
<Feb 19, 2021 1:02:43 PM PST> <Info> <Security> <BEA-090906> <Changing the default Random Number Generator in RSA CryptoJ from ECDRBG128 to HMACDRBG. To disable this change, specify -Dweblogic.security.allowCryptoJDefaultPRNG=true.>
<Feb 19, 2021 1:02:44 PM PST> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) 64-Bit Server VM Version 25.241-b07 from Oracle Corporation.>
<Feb 19, 2021 1:02:44 PM PST> <Info> <RCM> <BEA-2165021> <"ResourceManagement" is not enabled in this JVM. Enable "ResourceManagement" to use the WebLogic Server "Resource Consumption Management" feature. To enable "ResourceManagement", you must specify the following JVM options in the WebLogic Server instance in which the JVM runs: -XX:+UnlockCommercialFeatures -XX:+ResourceManagement.>
<Feb 19, 2021 1:02:44 PM PST> <Info> <Management> <BEA-141107> <Version: WebLogic Server 12.2.1.4.0 Thu Sep 12 04:04:29 GMT 2019 1974621>
<Feb 19, 2021 1:02:46 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING.>
<Feb 19, 2021 1:02:46 PM PST> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool.>
<Feb 19, 2021 1:02:46 PM PST> <Info> <WorkManager> <BEA-002942> <CMM memory level becomes 0. Setting standby thread pool size to 256.>
<Feb 19, 2021 1:02:46,750 PM PST> <Notice> <LoggingService> <BEA-320400> <The log file /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/logs/myserver.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms, such as Windows.>
<Feb 19, 2021 1:02:46,752 PM PST> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/logs/myserver.log00001. Log messages will continue to be logged in /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/logs/myserver.log.>
<Feb 19, 2021 1:02:46,767 PM PST> <Notice> <Log Management> <BEA-170019> <The server log file weblogic.logging.FileStreamHandler instance=1834896358
Current log file=/Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/logs/myserver.log
Rotation dir=/Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/logs
 is opened. All server side log events will be written to this file.>
<Feb 19, 2021 1:02:47,108 PM PST> <Notice> <Security> <BEA-090946> <Security pre-initializing using security realm: myrealm>
<Feb 19, 2021 1:02:47,602 PM PST> <Notice> <Security> <BEA-090947> <Security post-initializing using security realm: myrealm>
<Feb 19, 2021 1:02:48,791 PM PST> <Notice> <Security> <BEA-090082> <Security initialized using administrative security realm: myrealm>
<Feb 19, 2021 1:02:49,096 PM PST> <Warning> <Store> <BEA-280109> <The JVM was unable to load the native wlfileio library for the store "_WLS_myserver". File and paging stores will continue to function correctly. Specifically, file stores that are configured with a transactionally safe synchronous write policy will continue to operate safely and transactionally but may open with a different write-policy. Other store types may not be able to open.>
<Feb 19, 2021 1:02:49,111 PM PST> <Notice> <JMX> <BEA-149512> <JMX Connector Server started at service:jmx:iiop://10.0.0.25:7001/jndi/weblogic.management.mbeanservers.runtime.>
<Feb 19, 2021 1:02:49,335 PM PST> <Notice> <JMX> <BEA-149512> <JMX Connector Server started at service:jmx:iiop://10.0.0.25:7001/jndi/weblogic.management.mbeanservers.domainruntime.>
<Feb 19, 2021 1:02:49,420 PM PST> <Notice> <JMX> <BEA-149512> <JMX Connector Server started at service:jmx:iiop://10.0.0.25:7001/jndi/weblogic.management.mbeanservers.edit.>
<Feb 19, 2021 1:02:50,360 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY.>
<Feb 19, 2021 1:02:50,360 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING.>
<Feb 19, 2021 1:02:50,403 PM PST> <Notice> <Log Management> <BEA-170036> <The Logging monitoring service timer has started to check for logged message counts every 30 seconds.>

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.4.3)

2021-02-19 13:02:57.374  INFO 28472 --- [ (self-tuning)'] com.example.demo.ServletInitializer      : Starting ServletInitializer using Java 1.8.0_241 on C02YTG07LVCG with PID 28472 (/Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/servers/myserver/tmp/_WL_user/demo-0.0.1-SNAPSHOT/vq371z/war/WEB-INF/lib/_wl_cls_gen.jar started by arvindkrishnakumar in /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain)
2021-02-19 13:02:57.378  INFO 28472 --- [ (self-tuning)'] com.example.demo.ServletInitializer      : No active profile set, falling back to default profiles: default
2021-02-19 13:02:58.552  INFO 28472 --- [ (self-tuning)'] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1126 ms
<Feb 19, 2021 1:02:59,311 PM PST> <Notice> <Security> <BEA-090171> <Loading the identity certificate and private key stored under the alias DemoIdentity from the jks keystore file /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/domain/security/DemoIdentity.jks.>
<Feb 19, 2021 1:02:59,846 PM PST> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /Users/arvindkrishnakumar/Opt/Oracle/WebLogic/Middleware/wls12214/wlserver/server/lib/DemoTrust.jks.>
<Feb 19, 2021 1:02:59,850 PM PST> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/jre/lib/security/cacerts.>
2021-02-19 13:03:00.713  INFO 28472 --- [ (self-tuning)'] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2021-02-19 13:03:01.731  INFO 28472 --- [ (self-tuning)'] o.s.s.web.DefaultSecurityFilterChain     : Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@14a49d2b, org.springframework.security.web.context.SecurityContextPersistenceFilter@6f6d5ad2, org.springframework.security.web.header.HeaderWriterFilter@760491a7, org.springframework.security.web.csrf.CsrfFilter@60726263, org.springframework.security.web.authentication.logout.LogoutFilter@1561e58f, org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter@41aaebfc, org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter@5a2e176a, org.springframework.security.oauth2.client.web.OAuth2LoginAuthenticationFilter@1e1d14dc, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@2b660da7, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@55af3f62, org.springframework.security.oauth2.server.resource.web.BearerTokenAuthenticationFilter@6bddd768, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6028a8ee, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1fd42f07, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@46158219, org.springframework.security.oauth2.client.web.OAuth2AuthorizationCodeGrantFilter@207ab0d1, org.springframework.security.web.session.SessionManagementFilter@367acbdc, org.springframework.security.web.access.ExceptionTranslationFilter@14728a68, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@76eb16a4]
2021-02-19 13:03:01.962  INFO 28472 --- [ (self-tuning)'] com.example.demo.ServletInitializer      : Started ServletInitializer in 5.673 seconds (JVM running for 18.418)
<Feb 19, 2021 1:03:03,219 PM PST> <Notice> <Log Management> <BEA-170027> <The server has successfully established a connection with the Domain level Diagnostic Service.>
<Feb 19, 2021 1:03:03,311 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN.>
<Feb 19, 2021 1:03:03,361 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING.>
<Feb 19, 2021 1:03:03,399 PM PST> <Warning> <Server> <BEA-002611> <The hostname "localhost", maps to multiple IP addresses: 127.0.0.1, 0:0:0:0:0:0:0:1.>
<Feb 19, 2021 1:03:03,399 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 2601:641:8000:3460:2995:47d5:850f:d382%en0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,399 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[4]" is now listening on 127.0.0.1:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,400 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[2]" is now listening on 2601:641:8000:3460:44e:14a8:7f4a:da43%en0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,401 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 10.0.0.25:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,402 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[3]" is now listening on 0:0:0:0:0:0:0:1%lo0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,402 PM PST> <Notice> <WebLogicServer> <BEA-000331> <Started the WebLogic Server Administration Server "myserver" for domain "mydomain" running in development mode.>
<Feb 19, 2021 1:03:03,402 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 2601:641:8000:3460:2995:47d5:850f:d382%en0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,402 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[4]" is now listening on 127.0.0.1:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,402 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[2]" is now listening on 2601:641:8000:3460:44e:14a8:7f4a:da43%en0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,403 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 10.0.0.25:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,403 PM PST> <Notice> <Server> <BEA-002613> <Channel "Default[3]" is now listening on 0:0:0:0:0:0:0:1%lo0:7001 for protocols iiop, t3, ldap, snmp, http.>
<Feb 19, 2021 1:03:03,405 PM PST> <Notice> <WebLogicServer> <BEA-000360> <The server started in RUNNING mode.>
<Feb 19, 2021 1:03:03,409 PM PST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING.>
smworld30 commented 3 years ago

. _ _ /\ / '_ () \ \ \ \ ( ( )\ | ' | '| | ' \/ ` | \ \ \ \ \/ _)| |)| | | | | || (| | ) ) ) ) ' |__| .|| ||| |\, | / / / / =========|_|==============|__/=//// :: Spring Boot :: (v2.4.3)

2021-02-26 04:43:00.753 INFO 20609 --- [ (self-tuning)'] com.test.ServletInitializer : Starting ServletInitializer using Java 1.8.0_261 on peplap04186 with PID 20609 (/opt/weblogic/wls12/domains/pidomain/servers/pi1server/tmp/_WL_user/test/g3iprp/war/WEB-INF/lib/_wl_cls_gen.jar started by weblogic in /opt/weblogic/wls12/domains/pidomain) 2021-02-26 04:43:00.756 INFO 20609 --- [ (self-tuning)'] com.test.ServletInitializer : No active profile set, falling back to default profiles: default 2021-02-26 04:43:01.807 INFO 20609 --- [ (self-tuning)'] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 763 ms 2021-02-26 04:43:02.328 WARN 20609 --- [ (self-tuning)'] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration$EnableWebMvcConfiguration': Unsatisfied dependency expressed through method 'setConfigurers' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.security.config.annotation.web.configuration.OAuth2ClientConfiguration$OAuth2ClientWebMvcSecurityConfiguration': Unsatisfied dependency expressed through method 'setClientRegistrationRepository' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientRegistrationRepository' defined in class path resource [org/springframework/boot/autoconfigure/security/oauth2/client/servlet/OAuth2ClientRegistrationRepositoryConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository]: Factory method 'clientRegistrationRepository' threw exception; nested exception is java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of https://dev-xxxxxx.okta.com/oauth2/default Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2021-02-26 04:43:02.366 ERROR 20609 --- [ (self-tuning)'] o.s.boot.SpringApplication : Application run failed

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration$EnableWebMvcConfiguration': Unsatisfied dependency expressed through method 'setConfigurers' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.security.config.annotation.web.configuration.OAuth2ClientConfiguration$OAuth2ClientWebMvcSecurityConfiguration': Unsatisfied dependency expressed through method 'setClientRegistrationRepository' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientRegistrationRepository' defined in class path resource [org/springframework/boot/autoconfigure/security/oauth2/client/servlet/OAuth2ClientRegistrationRepositoryConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository]: Factory method 'clientRegistrationRepository' threw exception; nested exception is java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of "https://dev-xxxxxx.okta.com/oauth2/default" at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.resolveMethodArguments(AutowiredAnnotationBeanPostProcessor.java:768) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:720) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1413) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917) ~[spring-context-5.3.4.jar:5.3.4] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:582) ~[spring-context-5.3.4.jar:5.3.4] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144) ~[spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767) ~[spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) ~[spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426) ~[spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:326) ~[spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173) [spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153) [spring-boot-2.4.3.jar:2.4.3] at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95) [spring-boot-2.4.3.jar:2.4.3] at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:174) [spring-web-5.3.4.jar:5.3.4] at weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1433) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1372) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1353) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1925) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3191) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1864) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:919) [com.oracle.weblogic.servlet.jar:12.2.1.4] at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:356) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:138) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:78) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:52) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:752) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:262) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:52) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165) [com.oracle.weblogic.application.jar:12.2.1.4] at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:274) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:507) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:53) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:202) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.AppTransition$2.transitionAppInternal(AppTransition.java:53) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.AppTransition.transitionApp(AppTransition.java:138) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:741) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:109) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:749) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:702) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:381) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:233) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:219) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:133) [com.oracle.weblogic.deploy.jar:12.2.1.4] at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76) [com.bea.core.weblogic.lifecycle.jar:12.2.1.4] at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) ~[na:na] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_261] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261] at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1287) [org.glassfish.hk2.hk2-utils.jar:na] at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:333) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:375) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487) [org.glassfish.hk2.hk2-locator.jar:na] at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487) [org.glassfish.hk2.hk2-locator.jar:na] at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116) [org.glassfish.hk2.hk2-locator.jar:na] at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:90) [org.glassfish.hk2.hk2-locator.jar:na] at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1237) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1168) [org.glassfish.hk2.hk2-runlevel.jar:na] at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$UpOneLevel.run(CurrentTaskFuture.java:786) [org.glassfish.hk2.hk2-runlevel.jar:na] at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:681) [com.bea.core.weblogic.workmanager.jar:12.2.1.4] at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352) [com.bea.core.utils.full.jar:12.2.1.4] at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337) [com.bea.core.utils.full.jar:12.2.1.4] at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57) [com.oracle.weblogic.work.jar:12.2.1.4] at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) [com.bea.core.weblogic.workmanager.jar:12.2.1.4] at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655) [com.bea.core.weblogic.workmanager.jar:12.2.1.4] at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420) [com.bea.core.weblogic.workmanager.jar:12.2.1.4] at weblogic.work.ExecuteThread.run(ExecuteThread.java:360) [com.bea.core.weblogic.workmanager.jar:12.2.1.4] Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.security.config.annotation.web.configuration.OAuth2ClientConfiguration$OAuth2ClientWebMvcSecurityConfiguration': Unsatisfied dependency expressed through method 'setClientRegistrationRepository' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientRegistrationRepository' defined in class path resource [org/springframework/boot/autoconfigure/security/oauth2/client/servlet/OAuth2ClientRegistrationRepositoryConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository]: Factory method 'clientRegistrationRepository' threw exception; nested exception is java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of https://dev-xxxxxx.okta.com/oauth2/default at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:720) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1413) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1598) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1562) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1451) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1338) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.resolveMethodArguments(AutowiredAnnotationBeanPostProcessor.java:760) ~[spring-beans-5.3.4.jar:5.3.4] ... 93 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientRegistrationRepository' defined in class path resource [org/springframework/boot/autoconfigure/security/oauth2/client/servlet/OAuth2ClientRegistrationRepositoryConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository]: Factory method 'clientRegistrationRepository' threw exception; nested exception is java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of https://dev-xxxxxx.okta.com/oauth2/default at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1598) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1562) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1451) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1338) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.resolveMethodArguments(AutowiredAnnotationBeanPostProcessor.java:760) ~[spring-beans-5.3.4.jar:5.3.4] ... 110 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository]: Factory method 'clientRegistrationRepository' threw exception; nested exception is java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of "https://dev-xxxxxx.okta.com/oauth2/default" at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.4.jar:5.3.4] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.4.jar:5.3.4] ... 126 common frames omitted Caused by: java.lang.IllegalArgumentException: Unable to resolve Configuration with the provided Issuer of https://dev-xxxxxx.okta.com/oauth2/default at org.springframework.security.oauth2.client.registration.ClientRegistrations.getBuilder(ClientRegistrations.java:221) ~[spring-security-oauth2-client-5.4.5.jar:5.4.5] at org.springframework.security.oauth2.client.registration.ClientRegistrations.fromIssuerLocation(ClientRegistrations.java:145) ~[spring-security-oauth2-client-5.4.5.jar:5.4.5] at org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientPropertiesRegistrationAdapter.getBuilderFromIssuerIfPossible(OAuth2ClientPropertiesRegistrationAdapter.java:83) ~[spring-boot-autoconfigure-2.4.3.jar:2.4.3] at org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientPropertiesRegistrationAdapter.getClientRegistration(OAuth2ClientPropertiesRegistrationAdapter.java:59) ~[spring-boot-autoconfigure-2.4.3.jar:2.4.3] at org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientPropertiesRegistrationAdapter.lambda$getClientRegistrations$0(OAuth2ClientPropertiesRegistrationAdapter.java:53) ~[spring-boot-autoconfigure-2.4.3.jar:2.4.3] at java.util.HashMap.forEach(HashMap.java:1289) ~[na:1.8.0_261] at org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientPropertiesRegistrationAdapter.getClientRegistrations(OAuth2ClientPropertiesRegistrationAdapter.java:52) ~[spring-boot-autoconfigure-2.4.3.jar:2.4.3] at org.springframework.boot.autoconfigure.security.oauth2.client.servlet.OAuth2ClientRegistrationRepositoryConfiguration.clientRegistrationRepository(OAuth2ClientRegistrationRepositoryConfiguration.java:49) ~[spring-boot-autoconfigure-2.4.3.jar:2.4.3] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_261] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_261] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_261] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_261] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.4.jar:5.3.4] ... 127 common frames omitted Caused by: org.springframework.web.client.ResourceAccessException: I/O error on GET request for https://dev-xxxxxx.okta.com/oauth2/default/.well-known/openid-configuration: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:785) ~[spring-web-5.3.4.jar:5.3.4] at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:670) ~[spring-web-5.3.4.jar:5.3.4] at org.springframework.security.oauth2.client.registration.ClientRegistrations.lambda$oidc$0(ClientRegistrations.java:156) ~[spring-security-oauth2-client-5.4.5.jar:5.4.5] at org.springframework.security.oauth2.client.registration.ClientRegistrations.getBuilder(ClientRegistrations.java:209) ~[spring-security-oauth2-client-5.4.5.jar:5.4.5] ... 139 common frames omitted Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.ssl.Alert.createSSLException(Alert.java:131) ~[na:1.8.0_261] at sun.security.ssl.TransportContext.fatal(TransportContext.java:327) ~[na:1.8.0_261] at sun.security.ssl.TransportContext.fatal(TransportContext.java:270) ~[na:1.8.0_261] at sun.security.ssl.TransportContext.fatal(TransportContext.java:265) ~[na:1.8.0_261] at sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:646) ~[na:1.8.0_261] at sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:465) ~[na:1.8.0_261] at sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:361) ~[na:1.8.0_261] at sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:376) ~[na:1.8.0_261] at sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:451) ~[na:1.8.0_261] at sun.security.ssl.SSLEngineImpl$DelegatedTask$DelegatedAction.run(SSLEngineImpl.java:987) ~[na:1.8.0_261] at sun.security.ssl.SSLEngineImpl$DelegatedTask$DelegatedAction.run(SSLEngineImpl.java:974) ~[na:1.8.0_261] at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_261] at sun.security.ssl.SSLEngineImpl$DelegatedTask.run(SSLEngineImpl.java:921) ~[na:1.8.0_261] at weblogic.socket.JSSEFilterImpl.doTasks(JSSEFilterImpl.java:223) ~[com.oracle.weblogic.server.muxers.jar:12.2.1.4] at weblogic.socket.JSSEFilterImpl.doHandshake(JSSEFilterImpl.java:123) ~[com.oracle.weblogic.server.muxers.jar:12.2.1.4] at weblogic.socket.JSSEFilterImpl.doHandshake(JSSEFilterImpl.java:87) ~[com.oracle.weblogic.server.muxers.jar:12.2.1.4] at weblogic.socket.JSSESocket.startHandshake(JSSESocket.java:250) ~[com.oracle.weblogic.server.muxers.jar:12.2.1.4] at weblogic.net.http.HttpsClient.New(HttpsClient.java:577) ~[com.oracle.weblogic.net.jar:12.2.1.4] at weblogic.net.http.HttpsClient.New(HttpsClient.java:557) ~[com.oracle.weblogic.net.jar:12.2.1.4] at weblogic.net.http.HttpsURLConnection.connect(HttpsURLConnection.java:265) ~[com.oracle.weblogic.net.jar:12.2.1.4] at org.springframework.http.client.SimpleBufferingClientHttpRequest.executeInternal(SimpleBufferingClientHttpRequest.java:76) ~[spring-web-5.3.4.jar:5.3.4] at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48) ~[spring-web-5.3.4.jar:5.3.4] at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:66) ~[spring-web-5.3.4.jar:5.3.4] at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:776) ~[spring-web-5.3.4.jar:5.3.4] ... 142 common frames omitted Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:439) ~[na:1.8.0_261] at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:306) ~[na:1.8.0_261] at sun.security.validator.Validator.validate(Validator.java:271) ~[na:1.8.0_261] at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:312) ~[na:1.8.0_261] at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:232) ~[na:1.8.0_261] at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:109) ~[na:1.8.0_261] at weblogic.security.SSL.jsseadapter.JaTrustManager.checkServerTrusted(JaTrustManager.java:128) ~[com.bea.core.weblogic.security.ssl.jar:12.2.1.4] at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:1269) ~[na:1.8.0_261] at sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:624) ~[na:1.8.0_261] ... 161 common frames omitted Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) ~[na:1.8.0_261] at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) ~[na:1.8.0_261] at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) ~[na:1.8.0_261] at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:434) ~[na:1.8.0_261] ... 169 common frames omitted

<Feb 26, 2021 4:43:02,382 AM CST> <Feb 26, 2021 4:43:02,412 AM CST> <Unable to set the activation state to true for the application "test". weblogic.application.ModuleException: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140) at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) Truncated. see log file for complete stacktrace Caused By: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:434) at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:306) Truncated. see log file for complete stacktrace

smworld30 commented 3 years ago

But I am getting the above issue. Is this any with weblogic server or any extra configuration I need to add in the application?

arvindkrishnakumar-okta commented 3 years ago

Based on the log you provided above, it looks like a SSL setup issue with your Weblogic server. Your server is not able to talk to the issuer https://dev-xxxxxx.okta.com/oauth2/default due to SSL handshake exception. You might want to refer Weblogic's detailed SSL setup guide at https://docs.oracle.com/cd/E23943_01/web.1111/e13707/identity_trust.htm#SECMG379.

Or simply try turning host name verification off by following instructions at https://docs.oracle.com/middleware/12212/wls/WLACH/taskhelp/security/DisableHostNameVerification.html (NOT recommended for Production environments).

Please note: If you have a general question, please post it on the Okta Developer Forum instead. Issues in this repository are reserved for bug reports and feature requests only.

smworld30 commented 3 years ago

Ok . I was also searching the issue and i found this on internet. So the following can we do??? Please refer the link. seems like same issue

https://www.javaer101.com/en/article/5361747.html

does the public certificate from okta.com and adding it to the cacerts file under jre/lib/security/ of the weblogic server linux machine will work? Any idea?

Thanks

arvindkrishnakumar-okta commented 3 years ago

Yes, like I suggested earlier you need to setup SSL correctly in Weblogic server’s settings. Please refer the weblogic documentation link that I shared earlier.

On Feb 26, 2021, at 20:12, smworld30 notifications@github.com wrote:

This message originated outside your organization.

Ok . I was also searching the issue and i found this on internet. So the following can we do??? Please refer the link. seems like same issue

https://www.javaer101.com/en/article/5361747.html

Thanks

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

smworld30 commented 3 years ago

After enabling the SSL in weblogic server I am getting below error

java.lang.IllegalArgumentException: Unable to instantiate org.springframework.boot.env.EnvironmentPostProcessor [com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor] at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:103) at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90) at org.springframework.boot.env.ReflectionEnvironmentPostProcessorsFactory.getEnvironmentPostProcessors(ReflectionEnvironmentPostProcessorsFactory.java:63) at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.getEnvironmentPostProcessors(EnvironmentPostProcessorApplicationListener.java:117) at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:99) at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:86) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131) at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:82) at org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:63) at java.util.ArrayList.forEach(ArrayList.java:1259) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:117) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:111) at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:62) at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:362) at org.springframework.boot.SpringApplication.run(SpringApplication.java:320) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95) at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:174) at weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1433) at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1372) at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1353) at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1925) at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3191) at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1864) at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:919) at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360) at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:356) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:138) at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:78) at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:52) at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:752) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:262) at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:52) at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165) at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90) at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:274) at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:507) at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:53) at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:202) at weblogic.management.deploy.internal.AppTransition$2.transitionAppInternal(AppTransition.java:53) at weblogic.management.deploy.internal.AppTransition.transitionApp(AppTransition.java:138) at weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:741) at weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:109) at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:749) at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:702) at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:381) at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:233) at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:219) at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:133) at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76) at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1287) at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:333) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:375) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487) at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305) at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116) at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698) at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78) at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212) at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487) at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305) at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:90) at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1237) at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1168) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:681) at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352) at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337) at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57) at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420) at weblogic.work.ExecuteThread.run(ExecuteThread.java:360) Caused by: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720) at org.springframework.util.Assert.isAssignable(Assert.java:651) at org.springframework.util.Assert.isAssignable(Assert.java:682) at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99) ... 91 common frames omitted <Mar 1, 2021 4:39:17,278 AM CST> <Failed while destroying filter: Tomcat WebSocket (JSR356) Filter. java.lang.AbstractMethodError: org.apache.tomcat.websocket.server.WsFilter.destroy()V at weblogic.servlet.internal.FilterManager$FilterDestroyAction.run(FilterManager.java:416) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:344) at weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197) at weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203) at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71) Truncated. see log file for complete stacktrace

<Mar 1, 2021 4:39:17,290 AM CST> <Mar 1, 2021 4:39:17,327 AM CST> <Unable to set the activation state to true for the application "learning". weblogic.application.ModuleException: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140) at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) Truncated. see log file for complete stacktrace Caused By: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720) at org.springframework.util.Assert.isAssignable(Assert.java:651) at org.springframework.util.Assert.isAssignable(Assert.java:682) at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99) at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90) Truncated. see log file for complete stacktrace

Can you please check this. Thanks in advance

smworld30 commented 3 years ago

Attached the project which I use to deploy on weblogic. the weblogic you tried is SSL enabled? I am also able to deploy in the basic weblogic server without SSL enabled. But SSL enabled server got the above error

OktaTest.zip

smworld30 commented 3 years ago

Any news on this please

mraible commented 3 years ago

Are you behind a corporate proxy? If so, can you try tethering to your phone and see if it works when you're not using a proxy?

smworld30 commented 3 years ago

Ya I am inside corporate vpn. The weblogic server where I deployed above zip code can be opened only inside vpn. That weblogic server is SSL enabled and I got the error.

java.lang.IllegalArgumentException: Unable to instantiate org.springframework.boot.env.EnvironmentPostProcessor [com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor]
at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:103)
at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
at org.springframework.boot.env.ReflectionEnvironmentPostProcessorsFactory.getEnvironmentPostProcessors(ReflectionEnvironmentPostProcessorsFactory.java:63)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.getEnvironmentPostProcessors(EnvironmentPostProcessorApplicationListener.java:117)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:99)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:86)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:82)
at org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:63)
at java.util.ArrayList.forEach(ArrayList.java:1259)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:117)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:111)
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:62)
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:362)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:320)
at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173)
at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153)
at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95)
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:174)
at weblogic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1433)
at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1372)
at weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1353)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1925)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3191)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1864)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:919)
at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360)
at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:356)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:138)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:78)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:52)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:752)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:262)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:52)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90)
at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:274)
at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:507)
at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:53)
at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:202)
at weblogic.management.deploy.internal.AppTransition$2.transitionAppInternal(AppTransition.java:53)
at weblogic.management.deploy.internal.AppTransition.transitionApp(AppTransition.java:138)
at weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:741)
at weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:109)
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:749)
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:702)
at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:381)
at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:233)
at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:219)
at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:133)
at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76)
at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1287)
at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:333)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:375)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698)
at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78)
at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212)
at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:90)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1237)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1168)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:681)
at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)
at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)
at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)
at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:655)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:420)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:360)
Caused by: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
at org.springframework.util.Assert.isAssignable(Assert.java:651)
at org.springframework.util.Assert.isAssignable(Assert.java:682)
at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
... 91 common frames omitted
<Mar 1, 2021 4:39:17,278 AM CST> <Failed while destroying filter: Tomcat WebSocket (JSR356) Filter.
java.lang.AbstractMethodError: org.apache.tomcat.websocket.server.WsFilter.destroy()V
at weblogic.servlet.internal.FilterManager$FilterDestroyAction.run(FilterManager.java:416)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:344)
at weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197)
at weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71)
Truncated. see log file for complete stacktrace

<Mar 1, 2021 4:39:17,290 AM CST> <javax.enterprise.resource.webcontainer.jsf.config>
<Mar 1, 2021 4:39:17,327 AM CST> <Unable to set the activation state to true for the application "learning".
weblogic.application.ModuleException: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
Truncated. see log file for complete stacktrace
Caused By: java.lang.IllegalArgumentException: class com.okta.spring.boot.oauth.env.OktaOAuth2PropertiesMappingEnvironmentPostProcessor is not assignable to interface org.springframework.boot.env.EnvironmentPostProcessor
at org.springframework.util.Assert.assignableCheckFailed(Assert.java:720)
at org.springframework.util.Assert.isAssignable(Assert.java:651)
at org.springframework.util.Assert.isAssignable(Assert.java:682)
at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:99)
at org.springframework.boot.util.Instantiator.instantiate(Instantiator.java:90)
Truncated. see log file for complete stacktrace

Can you please check this. Also please check the above zip code as its correct or not? I am clueless

Thanks and Regards,

arvindkrishnakumar-okta commented 3 years ago

1) Does it work when you run it without proxy (outside of corporate VPN)? 2) If the answer to the above is yes, please refer to the instructions here to setup few additional proxy properties.

smworld30 commented 3 years ago

When I download the same version of weblogic(12.2.1.4) in my local machine there the application is deployed successfully. But the in the corporate weblogic server the application is not getting deployed

smworld30 commented 3 years ago

okta.oauth2.issuer=**** okta.oauth2.client-id= ***** okta.oauth2.client-secret= **** okta.oauth2.proxy.host= <<weblogic machine name??>> okta.oauth2.proxy.port= <<managed server port??>> stdout.log

Here the weblogic is there in a linux macine .Hence the machine name need to be given as host??

these details should be there in application.properties??

Still error persist. Attached the log. Please help

arvindkrishnakumar-okta commented 3 years ago

You should set the hostname of your corporate network's proxy server in okta.oauth2.proxy.host property (and the port number in okta.oauth2.proxy.host property).

These properties could either be set in any of the following ways:

  1. Application properties
  2. JVM args (-Dokta.oauth2.proxy.host=proxy.example.com -Dokta.oauth2.proxy.port=****)
  3. Set system properties programmatically:
System.setProperty("okta.oauth2.proxy.host", "proxy.example.com");
System.setProperty("okta.oauth2.proxy.port", "****");
smworld30 commented 3 years ago

The weblogic server team has put the below properties in JVM args inside the server and tried to deploy the application. But same error is happening

-Dokta.oauth2.proxy.host=drswls1.corp.pep.pvt < this is corporate weblogic server machine> -Dokta.oauth2.proxy.port= Port of this manage server

Please suggest on this

arvindkrishnakumar-okta commented 3 years ago

Can you attach (do not copy paste) the full log with headers (the logs you have attached and pasted earlier is truncated) included? Note that you'll have to enable DEBUG logging for Spring security in your application properties (logging.level.org.springframework.security=DEBUG) and then capture the application startup log.

smworld30 commented 3 years ago

After Adding below application.properties file

logging.level.org.springframework.security=DEBUG okta.oauth2.issuer= https://*********/oauth2/default okta.oauth2.client-id= * okta.oauth2.client-secret= *** we got the attached error. Note : The application is not deploying. Its status showing failed console error stdout.log

arvindkrishnakumar-okta commented 3 years ago

Thanks!

Few followup questions:

smworld30 commented 3 years ago

I have tried the same application inside vpn outside of weblogic server. It got deployed successfully. I have tried in tomcat servers inside vpn. it was successfully connecting with Okta. but in weblogic the deployment got failed and showing the mentioned error

arvindkrishnakumar-okta commented 3 years ago

This is clearly a Weblogic server setup issue behind your corporate VPN. Unfortunately, I am unable to reproduce this issue in my local environment setup.

I need to know more details on the below:

smworld30 commented 3 years ago

Proxy type : http We will share tcpdump shortly. So anything extra configuration needed for weblogic server for deploying okta applications? as in that server other applications working fine.

arvindkrishnakumar-okta commented 3 years ago

1) Can you also check if you're already adhering to the notes here?

2) Also, refer Spring documentation here. Try setting server.forward-headers-strategy to NATIVE.

smworld30 commented 3 years ago

Yes according to the above documentation I have implements WebApplicationInitializer. I have added weblogic.xml also. But I didn't exclude lettuce and include jedis in my code. Is it necessary?

I have also tried including below in application.properties file

server.forward-headers-strategy= NATIVE

But same error.

arvindkrishnakumar-okta commented 3 years ago

Thanks for the details!

Please reach out to customer support at support@okta.com for further assistance on this case. Please note that Issues in this repository are reserved for bug reports and feature requests.