java - 解锁 Apache Tomcat 用户 LockOutRealm

标签 java apache tomcat netbeans catalina

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

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

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

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();
    }
}
}

异常(exception):

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\8.1\executor-snippets\run.xml:53: Java returned: 1

有什么想法吗?

最佳答案

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

关于java - 解锁 Apache Tomcat 用户 LockOutRealm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37414281/

相关文章:

java - 尽管抛出了预期的异常,但 JUnit 测试失败

java - 使用java左键单击任务托盘图标上的弹出窗口(菜单)

java - 如何加密来自url的视频并将加密的视频保存到设备的SD卡

python - 如何在 apache 下从 mod_python 写入日志?

Apache 访问日志文件仅打印 vhost_combined

java - PrintWriter 是否实现了 HTTPServletResponse

tomcat - SSL、Tomcat 和 Grails

java - 无法访问 localhost 中的 Tomcat 默认页面 :8080 for Ubuntu 16. 04 Docker 容器

java - spring batch ItemProcessorAdapter如何将多个参数传递给targetMethod?

Android HTTPS 错误没有受信任的服务器证书