在同一台服务器上的几个java webapps

时间:2010-10-14 14:57:51

标签: java java-ee jetty

我需要在单个服务器实例上提供多个Java Web应用程序,但是要将它们动态添加到特定的URI中。 例如 将webapp启动到此上下文/ user_1_app 将webapp启动到此上下文/ user_2_app

我不知道要使用什么网络服务器,但我现在正在调查Jetty

我可以放弃/ usr / share / jetty / webapps中的战争吗?

但是如何在不弹跳服务器的情况下添加新的呢?

它已经阅读了有关使用ContextDeployer中的scanInterval功能(使用爆炸目录)并为WebAppDeployer(用于战争)实现它的方法

我在哪里可以获得指南?

2 个答案:

答案 0 :(得分:2)

所有人都说,你可以在webapps目录中删除WAR,它们只会自动部署并活跃起来。如果你删除了WAR,它们就会消失。

但是,在这方面不熟悉Jetty,最好经过一些正式的部署过程。这使您可以访问所有Lifecycle事件。所以它知道它正在启动,也许同样重要的是,知道它正在关闭。

但是如果你只是想让它们可用,那么复制WAR就会这样做,它们会自动部署。

答案 1 :(得分:1)

答案当然是AppServer特定的,但任何AppServer都应该能够在不同的上下文中运行多个webapp。大多数AppServer都允许您通过将WAR复制到特定目录,或复制爆炸的WAR,或者提供某种Web服务来部署应用程序。

请注意,在大多数应用程序服务器上(是的,即使是非常昂贵的应用程序服务器),如果过于频繁地部署/取消部署/重新部署应用程序,则可能会导致内存泄漏。