论坛首页 Java版

在RCP程序启动前进行身份验证

浏览 1082 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2007-01-30 关键字: Rcp
有时候在RCP启动前需要进行用户登陆的身份验证,而用户不能通过验证的话,则程序直接退出。下面的代码示例将介绍这样的一种方式在
RCP中的实现。
 
 
public class Application implements IPlatformRunnable {

   /* (non-Javadoc)
    * @see org.eclipse.core.runtime.IPlatformRunnable#run(java.lang.Object)
    */
   public Object run(Object args) throws Exception {
       Display display = PlatformUI.createDisplay();
       if(!MessageDialog.openConfirm(display.getActiveShell(),"test","test")){
           display.dispose();
           return IPlatformRunnable.EXIT_OK;
       }
       try {
           int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
           
           if (returnCode == PlatformUI.RETURN_RESTART) {
               return IPlatformRunnable.EXIT_RESTART;
           }
           return IPlatformRunnable.EXIT_OK;
       } finally {
           display.dispose();
       }
   }

在这个方法里已经实现了显示窗口所必须的条件,有一个Display和Shell。
由于窗体是阻塞进程的(SWT 中的窗体可以设置不阻塞当前进程),所以可以进行你想要的操作。
如果用户名和密码错误,返回一个return IPlatformRunnable.EXIT_OK;就可以了。
   
论坛首页 Java版

跳转论坛:
JavaEye推荐