gpt4 book ai didi

netbeans - 需要身份验证对话框

转载 作者:行者123 更新时间:2023-12-04 06:28:06 27 4
gpt4 key购买 nike

我在 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);
...
}

此登录面板仅调用服务器端的一种安全方法,如果未发生异常,并且
返回的 String[] 包含用户名和姓氏,然后登录屏幕配置并向客户端显示 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 弹出 Authentication Requires Dialog 就像在 Web 浏览器中一样
基本身份验证对话框。

dialog

如何禁用此对话框?

提前致谢!

最佳答案

您可以使用方法 Authenticator.setDefault(Authenticator) 覆盖此对话框.

如果您确实尝试通过覆盖默认身份验证器来禁用身份验证,则需要在您的客户端代码中考虑这一点...因为您可能会收到“未经授权”响应流。

关于netbeans - 需要身份验证对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5778558/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com