From: Leif Åstrand Date: Fri, 12 Jul 2013 06:59:25 +0000 (+0300) Subject: Ensure VaadinSession.service is set up by storeInSession (#12204) X-Git-Tag: 7.1.1~10 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=94c0f86fafd6808df902af0a4dbccd2b45922ba4;p=vaadin-framework.git Ensure VaadinSession.service is set up by storeInSession (#12204) Change-Id: Ie707442f2625f3c9c07c75924c99299f07a4f3ec --- diff --git a/server/src/com/vaadin/server/VaadinSession.java b/server/src/com/vaadin/server/VaadinSession.java index 9dedddcc2c..890b2eba29 100644 --- a/server/src/com/vaadin/server/VaadinSession.java +++ b/server/src/com/vaadin/server/VaadinSession.java @@ -426,6 +426,13 @@ public class VaadinSession implements HttpSessionBindingListener, Serializable { public void storeInSession(VaadinService service, WrappedSession session) { assert hasLock(service, session); session.setAttribute(getSessionAttributeName(service), this); + + /* + * GAEVaadinServlet passes newly deserialized sessions here, which means + * that these transient fields need to be populated to avoid NPE from + * refreshLock(). + */ + this.service = service; this.session = session; refreshLock(); }