Wweblogic: weblogic.xml.crypto.wss.WSSecurityConfigurationException: failed to get trusted CAs

30 Views Asked by At

I have a Java application packaged as a .war file, which includes a identidad.jks keystore. This application is deployed to a WebLogic Server environment. The application communicates with remote servers over HTTPS connections.

In my local environment, everything works as expected and the app deploys. However, when deploying the application to the test environment we encounter the following error:

weblogic.xml.crypto.wss.WSSecurityConfigurationException: failed to get trusted CAs

In addition to the identidad.jks keystore, which is included in the application package, the test and production environment utilizes a truststore located at a local path inside the server.

What could be causing the failed to get trusted CAs error in the test environment, and how can I resolve it?

In attempts to resolve the issue, I redeployed the application locally to see if it works, considering it hasn't been touched in 2 years. I also checked the identidad.jks keystore for any expired certificates; while some were found, they have been replaced with newer ones.

Here is the entire exception dump:

<24-ene-2024 12H00' CET> <Error> <HTTP> <BEA-101216> <Servlet: "ReceiveMessageServiceServlethttps" failed to preload on startup in Web application: "Bus112Mossos.war".
weblogic.wsee.ws.WsException: Failed to call deployment processor
        at weblogic.wsee.ws.WsFactory.callServerListeners(WsFactory.java:106)
        at weblogic.wsee.ws.WsFactory.createServerService(WsFactory.java:59)
        at weblogic.wsee.deploy.ServletDeployInfo.createWsService(ServletDeployInfo.java:88)
        at weblogic.wsee.deploy.DeployInfo.createWsPort(DeployInfo.java:366)
        at weblogic.wsee.server.servlet.BaseWSServlet.init(BaseWSServlet.java:83)
        Truncated. see log file for complete stacktrace
Caused By: weblogic.wsee.ws.init.WsDeploymentException: Could not process Policy
        at weblogic.wsee.policy.deployment.PolicyDeploymentListener.invokeProviderConfig(PolicyDeploymentListener.java:69)
        at weblogic.wsee.policy.deployment.PolicyDeploymentListener.process(PolicyDeploymentListener.java:36)
        at weblogic.wsee.ws.init.WsDeploymentChain.process(WsDeploymentChain.java:42)
        at weblogic.wsee.ws.WsFactory.callServerListeners(WsFactory.java:104)
        at weblogic.wsee.ws.WsFactory.createServerService(WsFactory.java:59)
        Truncated. see log file for complete stacktrace
Caused By: Failed to fill abstract token assertion.

        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleAbstractAssertions(SecurityPolicyCustomizer.java:239)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleIntegrity(SecurityPolicyCustomizer.java:187)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.process(SecurityPolicyCustomizer.java:79)
        at weblogic.wsee.policy.runtime.PolicyServer.processAssertions(PolicyServer.java:199)
        at weblogic.wsee.policy.runtime.PolicyServer.loadPolicy(PolicyServer.java:186)
        Truncated. see log file for complete stacktrace
Caused By: weblogic.xml.crypto.wss.WSSecurityConfigurationException: Failed to get trusted CAs.
        at weblogic.xml.crypto.utils.CertUtils.getTrustedCAs(CertUtils.java:209)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getTrustedCANames(BinarySecurityTokenImpl.java:275)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getSecurityTokenAssertion(BinarySecurityTokenImpl.java:227)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleAbstractAssertions(SecurityPolicyCustomizer.java:237)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleIntegrity(SecurityPolicyCustomizer.java:187)
        Truncated. see log file for complete stacktrace
>


<24-ene-2024 12H00' CET> <Error> <Deployer> <BEA-149231> <Unable to set the activation state to true for the application "Bus112Mossos".
weblogic.application.ModuleException: [HTTP:101216]Servlet: "ReceiveMessageServiceServlethttps" failed to preload on startup in Web application: "Bus112Mossos.war".
weblogic.wsee.ws.WsException: Failed to call deployment processor
        at weblogic.wsee.ws.WsFactory.callServerListeners(WsFactory.java:106)
        at weblogic.wsee.ws.WsFactory.createServerService(WsFactory.java:59)
        at weblogic.wsee.deploy.ServletDeployInfo.createWsService(ServletDeployInfo.java:88)
        at weblogic.wsee.deploy.DeployInfo.createWsPort(DeployInfo.java:366)
        at weblogic.wsee.server.servlet.BaseWSServlet.init(BaseWSServlet.java:83)
        at javax.servlet.GenericServlet.init(GenericServlet.java:240)
        at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:299)
        at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:250)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
        at weblogic.servlet.internal.StubSecurityHelper.initServletInstance(StubSecurityHelper.java:94)
        at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:82)
        at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:74)
        at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:60)
        at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:34)
        at weblogic.servlet.internal.ServletStubImpl.initStubLifecycleHelper(ServletStubImpl.java:638)
        at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:579)
        at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1874)
        at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1848)
        at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1738)
        at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2740)
        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1704)
        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35)
        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:70)
        at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:212)
        at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:111)
        at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35)
        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:70)
        at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:24)
        at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:729)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35)
        at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:258)
        at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:48)
        at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165)
        at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
        at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:192)
        at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:369)
        at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
        at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
        at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
        at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
        at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
        at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
        at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:186)
        at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:94)
        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused by: weblogic.wsee.ws.init.WsDeploymentException: Could not process Policy
        at weblogic.wsee.policy.deployment.PolicyDeploymentListener.invokeProviderConfig(PolicyDeploymentListener.java:69)
        at weblogic.wsee.policy.deployment.PolicyDeploymentListener.process(PolicyDeploymentListener.java:36)
        at weblogic.wsee.ws.init.WsDeploymentChain.process(WsDeploymentChain.java:42)
        at weblogic.wsee.ws.WsFactory.callServerListeners(WsFactory.java:104)
        ... 54 more
Caused by: Failed to fill abstract token assertion.

        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleAbstractAssertions(SecurityPolicyCustomizer.java:239)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleIntegrity(SecurityPolicyCustomizer.java:187)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.process(SecurityPolicyCustomizer.java:79)
        at weblogic.wsee.policy.runtime.PolicyServer.processAssertions(PolicyServer.java:199)
        at weblogic.wsee.policy.runtime.PolicyServer.loadPolicy(PolicyServer.java:186)
        at weblogic.wsee.policy.runtime.PolicyServer.getPolicy(PolicyServer.java:118)
        at weblogic.wsee.policy.deployment.PolicyRef.getPolicy(PolicyRef.java:207)
        at weblogic.wsee.policy.deployment.PolicyReferenceWsdlExtension.getEffectivePolicy(PolicyReferenceWsdlExtension.java:125)
        at weblogic.wsee.policy.deployment.WsdlPolicySubject.getEffectivePolicyFromWsdlExtensible(WsdlPolicySubject.java:485)
        at weblogic.wsee.policy.deployment.WsdlPolicySubject.getOperationPolicySubject(WsdlPolicySubject.java:399)
        at weblogic.wsee.policy.runtime.PolicyContext.getRequestEffectivePolicy(PolicyContext.java:104)
        at weblogic.wsee.policy.runtime.PolicyContext.getRequestEffectivePolicy(PolicyContext.java:74)
        at weblogic.wsee.reliability.policy.ReliabilityPolicyAssertionsFactory.hasRMPolicy(ReliabilityPolicyAssertionsFactory.java:175)
        at weblogic.wsee.reliability.policy.WsrmServiceConfigHandler.process(WsrmServiceConfigHandler.java:93)
        at weblogic.wsee.policy.deployment.PolicyDeploymentListener.invokeProviderConfig(PolicyDeploymentListener.java:67)
        ... 57 more
Caused by: weblogic.xml.crypto.wss.WSSecurityConfigurationException: Failed to get trusted CAs.
        at weblogic.xml.crypto.utils.CertUtils.getTrustedCAs(CertUtils.java:209)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getTrustedCANames(BinarySecurityTokenImpl.java:275)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getSecurityTokenAssertion(BinarySecurityTokenImpl.java:227)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleAbstractAssertions(SecurityPolicyCustomizer.java:237)
        ... 71 more

        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1706)
        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213)
        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35)
        Truncated. see log file for complete stacktrace
Caused By: weblogic.xml.crypto.wss.WSSecurityConfigurationException: Failed to get trusted CAs.
        at weblogic.xml.crypto.utils.CertUtils.getTrustedCAs(CertUtils.java:209)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getTrustedCANames(BinarySecurityTokenImpl.java:275)
        at weblogic.xml.crypto.wss.BinarySecurityTokenImpl.getSecurityTokenAssertion(BinarySecurityTokenImpl.java:227)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleAbstractAssertions(SecurityPolicyCustomizer.java:237)
        at weblogic.wsee.security.policy.SecurityPolicyCustomizer.handleIntegrity(SecurityPolicyCustomizer.java:187)
        Truncated. see log file for complete stacktrace
>
0

There are 0 best solutions below