From 2c98c1b81a2bfb6d0d13415a2fd222b642106146 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Wed, 12 Dec 2018 12:16:14 +0100 Subject: [PATCH] Relaxed assertion in NotificationPublisherAwareLazyTargetSource Issue: SPR-17592 --- .../java/org/springframework/jmx/export/MBeanExporter.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/spring-context/src/main/java/org/springframework/jmx/export/MBeanExporter.java b/spring-context/src/main/java/org/springframework/jmx/export/MBeanExporter.java index 971b7d8d0a..6e69297d58 100644 --- a/spring-context/src/main/java/org/springframework/jmx/export/MBeanExporter.java +++ b/spring-context/src/main/java/org/springframework/jmx/export/MBeanExporter.java @@ -939,9 +939,9 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo * {@link org.springframework.jmx.export.notification.NotificationPublisher} is injected. */ private void injectNotificationPublisherIfNecessary( - Object managedResource, ModelMBean modelMBean, ObjectName objectName) { + Object managedResource, @Nullable ModelMBean modelMBean, @Nullable ObjectName objectName) { - if (managedResource instanceof NotificationPublisherAware) { + if (managedResource instanceof NotificationPublisherAware && modelMBean != null && objectName != null) { ((NotificationPublisherAware) managedResource).setNotificationPublisher( new ModelMBeanNotificationPublisher(modelMBean, objectName, managedResource)); } @@ -1112,7 +1112,6 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo @Override protected void postProcessTargetObject(Object targetObject) { - Assert.state(this.modelMBean != null && this.objectName != null, "Not initialized"); injectNotificationPublisherIfNecessary(targetObject, this.modelMBean, this.objectName); } }