I have tried to integrate togglz into my Spring Boot app, however it looks as though Auto Configuration has difficulty providing a FeatureManager. The following is my stack trace:
2017-02-23 16:04:30.033 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No cached FeatureManager for class loader: org.springframework.boot.devtools.restart.classloader.RestartClassLoader@6b8005f1
2017-02-23 16:05:57.403 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : Found 5 FeatureManagerProvider implementations...
2017-02-23 16:06:27.652 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No FeatureManager provided by org.togglz.core.context.ThreadLocalFeatureManagerProvider
2017-02-23 16:06:36.436 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No FeatureManager provided by org.togglz.core.context.BeanFinderFeatureManagerProvider
2017-02-23 16:06:45.980 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No FeatureManager provided by org.togglz.core.context.StaticFeatureManagerProvider
2017-02-23 16:06:51.164 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No FeatureManager provided by org.togglz.core.context.ContextClassLoaderFeatureManagerProvider
2017-02-23 16:06:55.980 DEBUG [myService,,,] 23359 --- [ restartedMain] o.t.c.c.JNDIFeatureManagerProvider : FeatureMananger not found: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
2017-02-23 16:06:57.990 DEBUG [myService,,,] 23359 --- [ restartedMain] org.togglz.core.context.FeatureContext : No FeatureManager provided by org.togglz.core.context.JNDIFeatureManagerProvider
with the app eventually dying with an IllegalStateException:
Caused by: java.lang.IllegalStateException: Could not find the FeatureManager. For web applications please verify that the TogglzFilter starts up correctly. In other deployment scenarios you will typically have to implement a FeatureManagerProvider as described in the 'Advanced Configuration' chapter of the documentation.
at org.togglz.core.context.FeatureContext.getFeatureManager(FeatureContext.java:53) ~[togglz-core-2.3.0.Final.jar:na]
I have the togglz.enabled
and my togglz.feature-enums
properties defined in my app properties, as well as my Configuration class implementing TogglzConfig created, it just seems to be whatever Spring Boot is doing behind the scenes with togglz is not quite working. Has anyone else came across this or know how to fix?