为了自定义JBoss 5.1 Web应用程序的根上下文,有一种记录在案的方法,描述如何在Web应用程序的WEB-INF目录下添加一个jboss-web.xml文件。
这很有效,但需要修改war文件。另一种选择是重命名我的war文件,但我更愿意保留原始名称,其中包括版本号,这不会满足在上下文根目录中具有文件夹层次结构的需求(因为#符号不支持在deploy文件夹中)。我想实现相同的效果,但不修改war文件。我知道Tomcat可以通过使用上下文配置来实现,而且据我所知,JBoss 5.1确实包含了Tomcat的变体,因此我想知道我们是否可以实现相同的效果。我在jboss.org wiki上找到了这个页面,描述了各个版本的jboss和tomcat的context configuration,但这对我没有用:尝试添加
这告诉我在
<jboss-web>
<context-root>/my/custom/context/root</context-root>
</jboss-web>
这很有效,但需要修改war文件。另一种选择是重命名我的war文件,但我更愿意保留原始名称,其中包括版本号,这不会满足在上下文根目录中具有文件夹层次结构的需求(因为#符号不支持在deploy文件夹中)。我想实现相同的效果,但不修改war文件。我知道Tomcat可以通过使用上下文配置来实现,而且据我所知,JBoss 5.1确实包含了Tomcat的变体,因此我想知道我们是否可以实现相同的效果。我在jboss.org wiki上找到了这个页面,描述了各个版本的jboss和tomcat的context configuration,但这对我没有用:尝试添加
<Context docBase="/path/to/my.war" path="/my/custom/context/root"/>
在启动时,尝试部署/ jboss.sar / server.xml 可能会导致错误:
org.jboss.xb.binding.JBossXBException: Failed to parse source: Context not found as a child of Host in unordered_sequence: Listener* Valve* Alias* Realm? attributes?
这告诉我在
Host
下不支持Context
标记。将Context
元素添加到名为deploy/jboss.sar/jboss.web/localhost/my#custom#context#root.xml
的文件中不起作用,并且被jboss忽略(尽管我可以看到java进程正在打开该文件)。也许这在jboss 5.1中不可能?欢迎任何想法。注意:看起来这已经被注释掉了源代码。这就解释了为什么不支持,但还有其他选择吗?