一个RCP的IM应用,请问关于网络故障及恢复的处理方法

一个RCP的IM应用,请教关于网络故障及恢复的处理方法
目前是一个IM系统,需要在网络连接断开的时候,关掉主程序,回到登陆对话框,并且在网络连接恢复的时候,可以自动登陆,类似于MSN和Skype的功能。

我们底层用的是SMACk,在3.0的版本中,已经实现了自动登陆的功能,但现在的问题出现在网络故障的那一步,我们所作的是调用 PlatformUI.getWorkbench().restart()方法,实现重启,并且使用IPreferenceStore来保存一些基本类型的数据信息。可是这样一来,内存中的所有对象就会被清理掉,新创建的ConnectionListener就无法监听到XMPPConnection的变化,于是UI就无法收到消息,从而不能自动登陆。

所以想问一下,有没有什么比较好的办法,可以在不调用PlatformUI.getWorkbench().restart()方法的情况下,关掉workbench,重新启动application,保留内存中的对象?
1 楼 dearwolf 2007-04-02  
帮自己顶一下,希望能够得到解决方法
2 楼 dearwolf 2007-04-03  
或者,可以有什么办法来禁止用户操作UI?
3 楼 warren 2007-09-21  
PlatformUI.getWorkbench().restart()这个方法, 我通过eclipse调试无问题, 但用jnlp通过webstart打包后,此功能无效果. 不知有什么解决的办法, 望高人赐教.