@Test
    void showPropsWithNullValues() {
        // list any config values that are null.  This may be valid so no assertions used.
        PropertyUtil.walkObjectTree(
                new AppConfig(),
                prop -> true,
                prop -> {
                    if (prop.getValueFromConfigObject() == null) {
                        LOGGER.warn("{} => {} is null",
                                prop.getParentObject().getClass().getSimpleName(),
                                prop.getName());
                    }
                });
    }
Test to verify that all fields in the config tree of type stroom.*
extend AbstractConfig . Also useful for seeing the object tree
and the annotations
stroom-config/stroom-config-app/src/test/java/stroom/config/app/TestAppConfig.java