Community Tip - You can change your system assigned username to something more personal in your community settings. X
I am trying to install thingworx and I am getting the error below. I have set everyone to read/write privileges for the thingworx folders. I have also tried this link with no luck. Can anyone help me? Here is the error
java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
I have postgres installed on a separate server but tomcat is on this one.
Here is the link to what I have tried with no success.
Solved! Go to Solution.
Hi @JOberle.
In working the case, we found that the database had not been populated. To resolve the issue, we dropped the existing database, validated the database user existed, then re-ran the scripts for creating the db and schema from the command prompt to validate that no errors were received:
thingworxPostgresDBSetup.bat
thingworxPostgresSchemaSetup.bat
This resolved the issue.
If you agree with this post, please mark it as the Accepted Solution for the benefit of others in the community.
Regards.
--Sharon
Here is the full error..
-ERROR in ch.qos.logback.core.joran.spi.Interpreter@3:88 - RuntimeException in Action for tag [contextListener] com.thingworx.exceptions.ConfigurationException: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
at com.thingworx.exceptions.ConfigurationException: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
at at com.thingworx.system.configuration.PlatformSettings.getInstance(PlatformSettings.java:2281)
at at com.thingworx.logging.LogbackUtilities.loadLogbackConfiguration(LogbackUtilities.java:55)
at at com.thingworx.logging.LogUtilities.initializeLoggerContext(LogUtilities.java:440)
at at com.thingworx.logging.LogbackCustomLoggerContextListener.start(LogbackCustomLoggerContextListener.java:22)
at at ch.qos.logback.classic.joran.action.LoggerContextListenerAction.end(LoggerContextListenerAction.java:70)
at at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309)
at at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193)
at at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179)
at at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
at at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75)
at at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:150)
at at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
at at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
at at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150)
at at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)
at at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:412)
at at ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addStatus(StatusViaSLF4JLoggerFactory.java:32)
at at ch.qos.logback.classic.util.StatusViaSLF4JLoggerFactory.addInfo(StatusViaSLF4JLoggerFactory.java:20)
at at ch.qos.logback.classic.servlet.LogbackServletContainerInitializer.onStartup(LogbackServletContainerInitializer.java:26)
at at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5166)
at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
at at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
at at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:706)
at at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:978)
at at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1848)
at at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
at at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:773)
at at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:427)
at at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
at at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
at at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
at at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
at at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:936)
at at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:843)
at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
at at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
at at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
at at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
at at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at at org.apache.catalina.core.StandardService.startInternal(StandardService.java:421)
at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
at at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
at at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at at java.lang.reflect.Method.invoke(Method.java:498)
at at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
at at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
Caused by: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
at at com.thingworx.security.SecurityManagerBootstrapper.init(SecurityManagerBootstrapper.java:108)
at at com.thingworx.security.SecurityManagerBootstrapper.init(SecurityManagerBootstrapper.java:74)
at at com.thingworx.system.configuration.PlatformSettings.<init>(PlatformSettings.java:1506)
at at com.thingworx.system.configuration.PlatformSettings.getInstance(PlatformSettings.java:2272)
at ... 62 common frames omitted
12:41:17,183 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
12:41:17,199 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@de215f9 - Registering current configuration as safe fallback point
SLF4J: A number (5) of logging calls during the initialization phase have been intercepted and are
SLF4J: now being replayed. These are subject to the filtering rules of the underlying logging system.
SLF4J: See also http://www.slf4j.org/codes.html#replay
com.thingworx.exceptions.ConfigurationException: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
at com.thingworx.system.configuration.PlatformSettings.getInstance(PlatformSettings.java:2281)
at com.thingworx.system.ThingWorxBootstrapper.contextInitialized(ThingWorxBootstrapper.java:79)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4716)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5177)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:706)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:978)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1848)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:773)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:427)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:936)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:843)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:421)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
Caused by: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
at com.thingworx.security.SecurityManagerBootstrapper.init(SecurityManagerBootstrapper.java:108)
at com.thingworx.security.SecurityManagerBootstrapper.init(SecurityManagerBootstrapper.java:74)
at com.thingworx.system.configuration.PlatformSettings.<init>(PlatformSettings.java:1506)
at com.thingworx.system.configuration.PlatformSettings.getInstance(PlatformSettings.java:2272)
... 42 more
*** CRITICAL ERROR ON STARTUP: java.lang.RuntimeException: Failed to create SecurityManager, Failed to load SecretProvider
Hi @JOberle.
You indicated you are trying to install ThingWorx, so I assume you haven't yet been able to get it running. Is that correct? If so, you can try stopping Tomcat, then removing the contents of \ThingworxStorage and the contents of \ThingworxPlatform with the exception of platform-settings.json. The folders/files contained there should be recreated on restart.
If you still have issues, it would be helpful to understand the following:
Regards.
--Sharon
Yes this is the first thing I tried. This is thingworx8 using the thingworx 8 installation guide page 34-35. This is windows 10 os. As far as the thingworxStorage folder... For some reason I have this folder in 3 locations. One at the root C. One at Apache Software Foundation, and another at tomcat9.0. With that said, I think I resolved this by editing my platform settings file. However, I am getting a new error related to the postgresql databse. This database is on a separate server and I am not sure how to configure my platformsettings.json so it can find it. Any ideas? Here is the new error.
*** CRITICAL ERROR ON STARTUP: Unable to initialize and start system: Connections could not be acquired from the underlying database!
Hi @JJ_9598732.
Since the database is on a separate server, you may need a firewall rule to allow the traffic through. Are you able to ping the database server from the application server? If so, are you able to connect to the port PostgreSQL is running on from the application server via telnet? (Default port is 5432)
telnet <hostname or IP address of database> <PostgreSQL port>
Note: On Windows, telnet is not installed by default. Follow these instructions to install it:
It's also possible that the platform-settings.json file does not contain the correct information for connecting to the database. Check it for typos.
Regards.
--Sharon
Thanks. I can ping the server no issues. I do not have telnet but I will try this asap. I have gotten to a point where it looks like thingworx is trying to connect to it but fails. I now get this error.
Unfortunately I will not be able to access this again until Monday. I will resume then. Thank you.
No I am not running docker. Yes I have followed this already. I ran both batch files with no issues. Unfortunately this link doesn't help me. I usually exhaust my google resources before posting so I have probably tried any links you can find.
btw I think the previous error was resolved by using the ipaddress instead of localhost in my platform-settings.json. I had to figure this out on my own as I saw no documentation on this so it may not be correct. Nevertheless, I am getting this new error now.
Hi @JOberle.
Are you sure you are using the IP address of the database server in platform-settings.json? Localhost would never work since your database server is on a different server/VM.
If you still have issues, it might be best to open a case if you have a support contract. If you're interested in doing so, please private message me with your PTC support email address and I will be happy to open the case on your behalf.
Regards.
--Sharon
I sent you a message but I am out of ideas on what is wrong.
Hi @JOberle.
As you know, a case has been opened. Once resolved, I will post an update here for the benefit of others in the community.
Regards.
--Sharon
Hi @JOberle.
In working the case, we found that the database had not been populated. To resolve the issue, we dropped the existing database, validated the database user existed, then re-ran the scripts for creating the db and schema from the command prompt to validate that no errors were received:
thingworxPostgresDBSetup.bat
thingworxPostgresSchemaSetup.bat
This resolved the issue.
If you agree with this post, please mark it as the Accepted Solution for the benefit of others in the community.
Regards.
--Sharon