我有这样的application.xml。
服务-收件箱服务。
我想把不同的上下文根映射到一个web-uri。但是有一些约束,每个模块应该只包含一个web部分和每个web --只有一个上下文--根部分。除了复制这个名不同的war文件之外,还有其他方法吗?
发布于 2012-08-22 12:53:35
Yegoshin我相信您必须清楚基于Java的Web应用程序中的URI概念:
<hostname:port/context-root/resource-path?parameters>现在,如果有人想使用不同的hostname+port组合来由同一个安装的应用程序提供服务,那么他们应该使用虚拟托管的概念,这是大多数应用服务器支持的概念,比如Tomcat、WebSphere。
如果有人想使用不同的资源路径映射到web应用程序中的同一资源,则通过在web.xml中配置url-模式来完成。
现在,如果有人想要为一个应用程序的单个安装使用不同的上下文根,这是不可能的。即使你从类加载器的角度来看。上下文导致创建上下文类加载器,它是应用服务器类加载器的子级。对于一个web应用程序,我们不能有一个以上的上下文类加载器,否则就不可能解析资源/类引用。因此,唯一的解决方案是让一个应用程序的多个实例在不同的上下文根下运行。
https://stackoverflow.com/questions/11985537
复制相似问题