ensure configadmin service reference is available when loading configurations
diff --git a/winegrower-core/src/main/java/org/apache/winegrower/Ripener.java b/winegrower-core/src/main/java/org/apache/winegrower/Ripener.java
index 4a0c3ec..50c0918 100644
--- a/winegrower-core/src/main/java/org/apache/winegrower/Ripener.java
+++ b/winegrower-core/src/main/java/org/apache/winegrower/Ripener.java
@@ -310,6 +310,9 @@
             registerBuiltInService(ConfigurationAdmin.class, this.configurationAdmin, new Hashtable<>());
             registerBuiltInService(EventAdmin.class, this.eventAdmin, new Hashtable<>());
             registerBuiltInService(org.osgi.service.log.LoggerFactory.class, loadLoggerFactory(), new Hashtable<>());
+            if (DefaultConfigurationAdmin.class.isInstance(configurationAdmin)) {
+                DefaultConfigurationAdmin.class.cast(configurationAdmin).preload(configuration.getDefaultConfigurationAdminPids());
+            }
         }
 
         public <T> void registerBuiltInService(final Class<T> type, final T impl, final Dictionary<String, Object> props) {
@@ -324,14 +327,12 @@
             if (configurationAdminIterator.hasNext()) {
                 return configurationAdminIterator.next();
             }
-            final DefaultConfigurationAdmin impl = new DefaultConfigurationAdmin(new HashMap<>(), configurationListeners) {
+            return new DefaultConfigurationAdmin(new HashMap<>(), configurationListeners) {
                 @Override
                 protected ServiceReference<ConfigurationAdmin> getSelfReference() {
                     return (ServiceReference<ConfigurationAdmin>) services.getServices().iterator().next().getReference();
                 }
             };
-            impl.preload(configuration.getDefaultConfigurationAdminPids());
-            return impl;
         }
 
         private org.osgi.service.log.LoggerFactory loadLoggerFactory() {