|
Re: strange 'context has been disposed' problems in RWTLifeCycle-class in rap 1.2.1 [message #535734 is a reply to message #535731] |
Tue, 25 May 2010 13:00 |
Stefan Hansel Messages: 103 Registered: July 2009 |
Senior Member |
|
|
I just realized that my NNTP-Reader produces HTML (which the Web-Forum doesn't render), so here the message again in plain text, if anyone can't read it easily.
Hi there,
We have one customer who claims that our RAP.1.2.1-app crashes from time to time (no user can connect, all just see a white page) and only a restart of Tomcat helps.
Unfortunately we cannot reproduce it locally.
In the logs we found one exception which might be the cause of that:
----------
Exception in thread "UIThread [4F59A62615A5A8430B03331F1995B74C]" java.lang.IllegalStateException: The context has been disposed.
at org.eclipse.rwt.internal.service.ServiceContext.checkState(S erviceContext.java:154)
at org.eclipse.rwt.internal.service.ServiceContext.getRequest(S erviceContext.java:82)
at org.eclipse.rwt.internal.service.ContextProvider.getRequest( ContextProvider.java:129)
at org.eclipse.rwt.internal.service.ContextProvider.getSession( ContextProvider.java:148)
at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.setShutdownA dapter(RWTLifeCycle.java:350)
at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.access$0(RWT LifeCycle.java:347)
at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadCont roller.run(RWTLifeCycle.java:133)
at java.lang.Thread.run(Unknown Source)
----------
As you can see its within RAP and if I look at the RWTLifeCycleClass of 1.2.1 it seems that the original 'Throwable thr' was swallowed, so we cannot get the Root-Cause.
-------------
private final class UIThreadController implements Runnable {
public void run() {
IUIThreadHolder uiThread = ( IUIThreadHolder )Thread.currentThread();
try {
[...]
} catch( final Throwable thr ) {
// TODO [rh] preliminary fix for
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=232289
// For a decent solution, see these ideas
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=219465
line 133: setShutdownAdapter( null ); // line 133
IServiceStateInfo stateInfo = ContextProvider.getStateInfo();
stateInfo.setAttribute( UI_THREAD_THROWABLE, thr );
}
}
}
-------------
If I see correctly the RWTLifeCycleClass was changed in 1.3.M3 , at least it doesn't call 'setShutdownAdapater()' anymore.
Could you give us any hints from your experience what could cause the original problem in RAP 1.2.1 and how we could circumvent it ?
We are a bit reluctant to just put RAP 1.3.M3 or later into production, without testing it thoroughly (and not even knowing if it would fix the problem).
So any idea making us able to reproduce this error or searching for strange RAP usage in our own code would help us very much !
Kind Regards
Stefan
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.05081 seconds