自定义领域/从 Netbeans 6.8 启动 Tomcat 6.0/第一个 HTTP 请求

发布于 2024-09-05 23:09:55 字数 373 浏览 11 评论 0原文

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

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

我是否有什么配置不正确的地方?如何阻止 NetBeans 发出此初始请求?

谢谢, 德鲁

I'm using NetBeans 6.8 and Tomcat 6.0.xx. I've created a custom realm and updated the NetBeans project build.xml to deploy the realm to Tomcat. When I debug the project, NetBeans starts the Tomcat server and makes an initial HTTP GET request for 'manager/list'. Tomcat graciously hands this request off to my custom realm for authentication. The request gets denied and NetBeans displays the following error in the output window: (note: error is displayed after NetBeans gets access denied)

Access to Tomcat server has not been authorized. Set the correct username and password with the "manager" role in the Tomcat customizer in the Server Manager.

Do I have something incorrectly configured? How do I prevent NetBeans from issuing this initial request?

Thanks,
Drew

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薄荷→糖丶微凉 2024-09-12 23:09:55

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

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

希望这有帮助。

So I figured this out. I had added my custom realm declaration at the engine level (e.g. inside the tag) in conf/server.xml. Therefore when NetBeans fired up my app on Tomcat, NetBeans was subject to my custom realm's authentication. The solution is to put the realm tag inside the context element, inside the host element. Here's some info about the elements in server.xml: http://tomcat.apache.org/tomcat-6.0-doc/config/context.html

The next issue you'll run into, once you've accomplished the above, is that NetBeans does a fancy little jig called 'in-place deployment'. This essentially means it injects it's own context element into Tomcat when it fires up your app. This will conflict with the context element you just added server.xml above. To fix this, remove the context element from server.xml(I know you just added it). In the NetBeans project directory there is a file web/META-INF/context.xml. Put your custom realm element declaration in here. NetBeans feeds this file to Tomcat on startup.

Hope this helps.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文