Я сталкиваюсь с проблемой с экраном входа в систему в netbeans rcp.
серверная часть: glassfish v 3.1, ejb и HessianServlet с базовым идентификатором в web.xml
клиентская часть: netebeans rcp 7.0 и серверная Api.
на сервере используется настраиваемая область, и клиент предоставляет имя пользователя и пароль после заставки, в настраиваемой панели входа в систему поверх DialogDescriptor
код панели входа в систему:
public class Installer extends ModuleInstall {
...
@Override
public void restored() {
DialogDescriptor loginDialog = new DialogDescriptor(panel, "Login Dialog");
loginDialog.setModal(true);
loginDialog.setClosingOptions(new Object[]{});
loginDialog.setOptions(new Object[]{});
loginDialog.setButtonListener(al);
loginDialog.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
if (NotifyDescriptor.CLOSED_OPTION.equals(evt.getNewValue())) {
LifecycleManager.getDefault().exit();
}
}
});
DialogDisplayer.getDefault().notifyLater(loginDialog);
...
}
эта панель входа в систему просто вызывает один защищенный метод на стороне сервера и, если исключение не произошло, и
Возвращаемая строка [] содержит имя пользователя и фамилию, затем экран входа в систему и rcp показывается клиенту.
на панели входа в систему:
HessianProxyFactory proxy= new HessianProxyFactory();
proxy.setUser(user);
proxy.setPassword(password);
LoginObject loginObject = xxx.create(LoginObject .class, "<a href="http://localhost:port/trali/vali">http://localhost:port/trali/vali");
String[] value=loginObject .isAppUser("login name");
if(value==null){
//message login failed
}else {
//dispose login screen and show main app
}
все в порядке, пока клиент не предоставит правильное имя пользователя и пароль, но если вход в систему не удастся
сервер Netbeans RCP всплывающие окна аутентификации требуется диалог, как в веб-браузере
основной диалог авторизации.
Как отключить этот диалог?
спасибо заранее!