From 913692f94724449ff6647bdddb074a705ca377e8 Mon Sep 17 00:00:00 2001 From: Michael Hirsch Date: Wed, 10 Aug 2016 09:22:57 +0200 Subject: [PATCH] lock session on error showing error notification Signed-off-by: Michael Hirsch --- .../hawkbit/ui/components/HawkbitUIErrorHandler.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/components/HawkbitUIErrorHandler.java b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/components/HawkbitUIErrorHandler.java index 7729b72a4..bd56aba42 100644 --- a/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/components/HawkbitUIErrorHandler.java +++ b/hawkbit-ui/src/main/java/org/eclipse/hawkbit/ui/components/HawkbitUIErrorHandler.java @@ -21,6 +21,7 @@ import com.google.common.base.Optional; import com.vaadin.server.DefaultErrorHandler; import com.vaadin.server.ErrorEvent; import com.vaadin.server.Page; +import com.vaadin.server.VaadinSession; import com.vaadin.ui.Component; /** @@ -40,7 +41,13 @@ public class HawkbitUIErrorHandler extends DefaultErrorHandler { if (originError.isPresent()) { final HawkbitErrorNotificationMessage message = buildNotification(getRootExceptionFrom(event)); - message.show(originError.get()); + final VaadinSession current = VaadinSession.getCurrent(); + current.lock(); + try { + message.show(originError.get()); + } finally { + current.unlock(); + } } }