0

我正在使用 NetBeans 6.8 和 Tomcat 6.0.xx。我创建了一个自定义领域并更新了 NetBeans 项目 build.xml 以将该领域部署到 Tomcat。当我调试项目时,NetBeans 启动 Tomcat 服务器并对“manager/list”发出初始 HTTP GET 请求。Tomcat 慷慨地将这个请求交给我的自定义领域进行身份验证。请求被拒绝,NetBeans 在输出窗口中显示以下错误:(注意:NetBeans 被拒绝访问后显示错误)

未授权访问 Tomcat 服务器。在服务器管理器的 Tomcat 定制器中使用“管理员”角色设置正确的用户名和密码。

我有什么不正确的配置吗?如何防止 NetBeans 发出此初始请求?

谢谢,德鲁

4

1 回答 1

1

所以我想通了。我在 conf/server.xml 的引擎级别(例如,在标签内)添加了我的自定义领域声明。因此,当 NetBeans 在 Tomcat 上启动我的应用程序时,NetBeans 受制于我的自定义领域的身份验证。解决方案是将领域标签放在上下文元素内,在宿主元素内。以下是有关 server.xml 中元素的一些信息:http: //tomcat.apache.org/tomcat-6.0-doc/config/context.html

完成上述操作后,您将遇到的下一个问题是 NetBeans 执行了一个名为“就地部署”的精美小工具。这实质上意味着它在启动您的应用程序时将自己的上下文元素注入到 Tomcat 中。这将与您刚刚在上面添加的 server.xml 的上下文元素冲突。要解决此问题,请从 server.xml 中删除上下文元素(我知道您刚刚添加了它)。在 NetBeans 项目目录中有一个文件 web/META-INF/context.xml。将您的自定义领域元素声明放在这里。NetBeans 在启动时将此文件提供给 Tomcat。

希望这可以帮助。

于 2010-06-17T03:45:02.550 回答