我目前有一个没有web.xml的Jersey webapp。它部署得很好,但在收到第一个Web请求之前不会启动。在Tomcat + Jersey没有web.xml的情况下在容器启动时加载webapp?
为了让webapp在启动时加载,我可以为webapp创建一个web.xml并给出a load-on-startup tag。但是,我会强烈宁愿不做一个web.xml。
有没有办法让JAX-RS应用程序在没有web.xml的启动时加载?我甚至会接受针对泽西岛和/或Tomcat的解决方案。
编辑:我也能接受,在一个Tomcat实例加载所有应用热切的解决方案。
编辑:让我多给点关于应用程序如何部署,每个评论的信息。
部署过程并不复杂。
该应用程序将运行在运行Ubuntu 12.04的EC2实例上。我正在手动设置应用程序的一个实例;一旦它有效,我将创建应用程序的AMI并根据需要创建更多副本。
要在初始实例上部署应用程序,我只需将WAR文件复制到/var/lib/tomcat7/webapps
并重新启动Tomcat。此Tomcat实例上不会运行其他web应用程序。
如果有任何其他信息会有用,请告诉我!我会很高兴地添加它。
编辑:为了清楚起见,这是我的webapp Application
类的外观,在较高的水平:
@ApplicationPath("/")
public class App extends ResourceConfig {
// ...
}
我使用的,而不是更普遍的JAX-具体新泽西ResourceConfig
类RS Application
类,因为我使用Jersey的内置HK-2来执行一些依赖注入。
如果您描述或显示您如何部署应用程序,这将有很大帮助。 –
我添加了一些关于部署环境和过程的附加信息。如果您需要更多信息,或者这不是您要查找的信息,请告诉我。 – sigpwned