diff --git a/repository/src/main/java/org/orderofthebee/addons/support/tools/repo/config/PropertyBackedBeanPersister.java b/repository/src/main/java/org/orderofthebee/addons/support/tools/repo/config/PropertyBackedBeanPersister.java index f29a4c8e..63baf369 100644 --- a/repository/src/main/java/org/orderofthebee/addons/support/tools/repo/config/PropertyBackedBeanPersister.java +++ b/repository/src/main/java/org/orderofthebee/addons/support/tools/repo/config/PropertyBackedBeanPersister.java @@ -280,12 +280,21 @@ protected void handleNewPropertyBackedBean(final PropertyBackedBean propertyBack // for some reason most subsystem beans are by default not configured to broadcast property changes // JMX only works because it is the only tool / component dealing with this, and only performs direct calls - if (propertyBackedBean instanceof AbstractPropertyBackedBean) + try { - ((AbstractPropertyBackedBean) propertyBackedBean).setSaveSetProperty(true); + if (propertyBackedBean instanceof AbstractPropertyBackedBean) + { + ((AbstractPropertyBackedBean) propertyBackedBean).setSaveSetProperty(false); + } + this.initializeFromPersistedProperties(name, propertyBackedBean); + } + finally + { + if (propertyBackedBean instanceof AbstractPropertyBackedBean) + { + ((AbstractPropertyBackedBean) propertyBackedBean).setSaveSetProperty(true); + } } - - this.initializeFromPersistedProperties(name, propertyBackedBean); } protected void handleRemovedPropertyBackedBean(final PropertyBackedBean propertyBackedBean, final boolean permanent)