解锁 Apache Tomcat 用户 LockOutRealm

Unlock Apache Tomcat user LockOutRealm

由于我下载并安装了 Apache Tomcat,因此我通过 NetBeans 面临 运行 简单的空 Web 服务问题。无法打开空的 Web 项目 - 需要身份验证。 Tomcat 运行良好(在 localhost:8080 打开网页),但进一步的操作 (ManagerApp link) 需要登录名和密码。我已经将必要的字段添加到 tomcat-users.xml。

<role rolename="manager-gui"/>
<user username="medet" password="mira" roles="manager-gui"/>

当我尝试输入这些登录名和密码时,apache 日志显示它们被阻止,即使它们是第一次输入。 我试图创建扩展 LockOutRealm 的 java class 以解锁我的用户(因为它具有 unlock(String user) 功能)。

public class UserUnlocker extends LockOutRealm{

@Override
public void unlock(String username) {
    super.unlock(username); 
}

public static void main(String [] args) {
    UserUnlocker mt = new UserUnlocker();
    try {
        mt.unlock("admin");
    }
    catch(Exception ex) {
        ex.printStackTrace();
    }
}
}

异常:

java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
at org.apache.catalina.util.LifecycleBase.<clinit>(LifecycleBase.java:37)
Caused by: java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
Exception in thread "main" C:\Users\mkoilybai\AppData\Local\NetBeans\Cache.1\executor-snippets\run.xml:53: Java returned: 1

有什么想法吗?

好的,我明白了。我重新安装了 Apache 并再次将服务器添加到 NetBeans。在部署任何东西之前,我将新用户添加到具有 manager-gui 权限的 tomcat-users.xml 中。它允许我在 tomcat 欢迎页面 (localhost:8080) 中输入 Manager App link。但我仍然无法部署我的测试 WebService。它需要我的用户(经理脚本)的额外权限。我再次编辑了tomcat-users.xml,但没有任何意义。好像我需要再次做所有的事情。 如果你们有更简单的解决方案,请告诉我。