我有一个非常标准的webapp用JSF 2.0和Seam 2.2.1 Final制作。我的application.xml列出了一个context-root,如下所示:
<module>
<web>
<web-uri>app.war</web-uri>
<context-root>app</context-root>
</web>
</module>
我的应用程序在四个单独的实例中使用,但上下文根必须在实例之间有所不同。最好的解决方案是获取数据库实例名称并将其设置为context-root(例如:databaseInstance1,databaseInstance2 ...),但不是必需的。有没有办法动态设置context-root?
答案 0 :(得分:0)
部署时设置Java Web服务器应用程序的根上下文。因此,如果不重新部署它,它的根上下文就无法改变......至少在没有重新编写自己的Java Web服务器的情况下也是如此。
如果单独的实例实际上是不同的部署,那么您应该能够为每个部署提供不同的context-root
值。可以使用诸如Maven之类的构建工具在构建时从数据库中检索“动态”名称。