Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 276930
Collapse All | Expand All

(-)src/org/eclipse/rwt/internal/lifecycle/UICallBackServiceHandler.java (-1 / +4 lines)
Lines 17-22 Link Here
17
import javax.servlet.*;
17
import javax.servlet.*;
18
import javax.servlet.http.*;
18
import javax.servlet.http.*;
19
19
20
import org.eclipse.rwt.RWT;
20
import org.eclipse.rwt.SessionSingletonBase;
21
import org.eclipse.rwt.SessionSingletonBase;
21
import org.eclipse.rwt.internal.service.*;
22
import org.eclipse.rwt.internal.service.*;
22
import org.eclipse.rwt.internal.util.HTML;
23
import org.eclipse.rwt.internal.util.HTML;
Lines 415-422 Link Here
415
  }
416
  }
416
417
417
  public void service() throws IOException, ServletException {
418
  public void service() throws IOException, ServletException {
419
    ISessionStore sessionStore = RWT.getSessionStore();
418
    if(    !UICallBackManager.getInstance().blockCallBackRequest()
420
    if(    !UICallBackManager.getInstance().blockCallBackRequest()
419
        && ContextProvider.hasContext() )
421
        && ContextProvider.hasContext() 
422
        && sessionStore.isBound() )
420
    {
423
    {
421
      writeResponse();
424
      writeResponse();
422
    }
425
    }
(-)src/org/eclipse/rwt/internal/lifecycle/UICallBackManager.java (-1 / +8 lines)
Lines 211-217 Link Here
211
      } finally {
211
      } finally {
212
        locked.remove( currentThread );
212
        locked.remove( currentThread );
213
        if( !result ) {
213
        if( !result ) {
214
          ContextProvider.getSession().removeSessionStoreListener( listener );
214
          // TODO [rh] remove the try/catch block once this bug 278258 is fixed
215
          //      (Rework ISessionStore#add/removeSessionStoreListener)
216
          try {
217
            ContextProvider.getSession().removeSessionStoreListener( listener );
218
          } catch( IllegalStateException e ) {
219
            // ignore - the session store is (about to be) unbound, this means
220
            // the listener is/will be removed anyway
221
          }
215
        }
222
        }
216
      }
223
      }
217
      waitForUIThread = true;
224
      waitForUIThread = true;

Return to bug 276930