在Tomcat 7上重命名web部署描述符

在Tomcat 7上重命名web部署描述符,tomcat,tomcat7,Tomcat,Tomcat7,Tomcat7上的web部署描述符(web.xml)是否可以使用其他名称?如果是这样,怎么做?servlet规范说部署描述符是WEB-INF/WEB.xml。这就是所有工具和所有servlet容器/应用服务器都同意并知道要处理的内容 你到底为什么要这么做 在某些情况下,您根本不需要一个-请参阅本手册的A.6.6节 如果web应用程序不包含web.xml,则不需要它 包含任何Servlet、筛选器或侦听器组件。换言之 仅包含静态文件或JSP页面的应用程序不需要 要显示的web.xml文件 编辑:回

Tomcat7上的web部署描述符(
web.xml
)是否可以使用其他名称?如果是这样,怎么做?

servlet规范说部署描述符是WEB-INF/WEB.xml。这就是所有工具和所有servlet容器/应用服务器都同意并知道要处理的内容

你到底为什么要这么做

在某些情况下,您根本不需要一个-请参阅本手册的A.6.6节

如果web应用程序不包含web.xml,则不需要它 包含任何Servlet、筛选器或侦听器组件。换言之 仅包含静态文件或JSP页面的应用程序不需要 要显示的web.xml文件

编辑:回答您的评论,如果您想为两个不同的AppServer提供两个不同的版本,您应该通过构建时更改对两个AppServer进行不同的配置(例如,通过提供不同的参数-例如阅读JNDI并使用它连接到数据库),例如,将ant或maven配置为构建两个版本的webapp,或在部署时进行配置-例如,在部署步骤中编写脚本部署并通过脚本更新WAR文件


我之前错过了一个答案:Tomcat(以及JBoss)是开源的。因此,从技术上讲,您可以使用不同的代码重新编译它以读取部署描述符。但是a)您将失去所有工具支持,因为没有一个IDE会期望此配置像web.xml中那样有任何效果(请考虑读取标记库和指示有问题的JSP)b)您将创建一个维护噩梦,因为您必须为每个新的tomcat版本执行此操作,除了您之外,没有人会期望任何自尊的WEB服务器出现这种行为。servlet规范称部署描述符为WEB-INF/WEB.xml。这就是所有工具和所有servlet容器/应用服务器都同意并知道要处理的内容

你到底为什么要这么做

在某些情况下,您根本不需要一个-请参阅本手册的A.6.6节

如果web应用程序不包含web.xml,则不需要它 包含任何Servlet、筛选器或侦听器组件。换言之 仅包含静态文件或JSP页面的应用程序不需要 要显示的web.xml文件

编辑:回答您的评论,如果您想为两个不同的AppServer提供两个不同的版本,您应该通过构建时更改对两个AppServer进行不同的配置(例如,通过提供不同的参数-例如阅读JNDI并使用它连接到数据库),例如,将ant或maven配置为构建两个版本的webapp,或在部署时进行配置-例如,在部署步骤中编写脚本部署并通过脚本更新WAR文件


我之前错过了一个答案:Tomcat(以及JBoss)是开源的。因此,从技术上讲,您可以使用不同的代码重新编译它以读取部署描述符。但是a)您将失去所有工具支持,因为没有一个IDE会期望此配置像web.xml中那样有任何效果(请考虑读取标记库和指示有问题的JSP)b)您将创建一个维护噩梦,因为对于每个新的tomcat版本,您都必须这样做,没有人会期望任何自尊的Web服务器出现这种行为

我有一个应用程序,我想将其部署到两个不同的服务器(tomcat 7和jboss as)。所以我想也许我可以在tomcat上用另一个文件对它进行不同的配置。这里我有一个应用程序,我想将它部署到两个不同的服务器(Tomcat7和JBossAS)。所以我想也许我可以在tomcat上用另一个文件对它进行不同的配置。看这里