gpt4 book ai didi

tomcat - 是否可以在没有单独的 J2EE 容器部署的情况下虚拟化 war 文件执行?

转载 作者:行者123 更新时间:2023-11-28 22:33:36 25 4
gpt4 key购买 nike

假设我想让我的开发人员将他们的war 文件上传到在我们的 Intranet 上运行的 Web 应用程序(不是应用程序服务器本身)并且 Web 应用程序 然后将运行 这些 war 就好像它们是单独部署在我们的 J2EE 容器中的独立应用程序

换句话说,我们实际上并没有将wars部署为容器中的单独应用程序——它们只是在这个网络应用程序中并排运行 < strong>就像一个 J2EE 容器。

这可能吗?

类似war 虚拟化应用程序的东西?

最佳答案

您可以开始创建 ClassLoader,扩展 .war,加载类并将对应用程序的请求分派(dispatch)到正确的子 Web 应用程序。这看起来像是在重新发明轮子(假设 app.server 已经这样做了)并且可能非常复杂。

另一方面,这看起来与 portlet 的工作方式非常相似。 Portlet 被打包成一个.war 文件,然后供门户使用。例如,在 Liferay 门户中,您可以从 liferay 门户(而不是应用程序服务器本身)上传一个 portlet .war。然后 Liferay 会将上传的 .war 文件放在应用程序的自动部署目录中。然后将像常规 Web 应用程序一样部署的服务器。然后是将请求从门户分派(dispatch)到正确的 Portlet Web 应用程序等的 Portlet 桥。可能值得仔细研究一下。

我不知道您的要求,但我肯定会尝试保持简单,因为这样的事情可能会变得非常复杂。但是你可以:

  • 让用户从您的应用程序上传.war
  • 操作 .warweb.xml 以确保上下文类似于 /ParentApp/ChildApp
  • 将修改后的.war保存到auto-deploy文件夹中,让app.服务器部署它

这将提供您可以从父 Web 应用部署子 Web 应用的错觉。

关于tomcat - 是否可以在没有单独的 J2EE 容器部署的情况下虚拟化 war 文件执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2557915/

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