java,tomcat:web.xml中标签web-app中id属性的含义是什么?

时间:2011-05-11 04:20:15

标签: java tomcat7

web-app 标记的web.xml id 属性是什么意思?

Eclipse将其生成为 id =“WebApp_ID”。我使用版本的Servlet规范版本2.5,我切换到使用3.0,建议this answer不包含该ID。

真的有必要吗?应该是什么价值?

2 个答案:

答案 0 :(得分:15)

较新版本的servlet规范使用.xsd文件而没有关于id属性的更多信息,但是如果你回到带有.dtd的旧版本,例如web_app_2_2.dtd,你会发现:

  

ID机制是允许工具   轻松制作特定工具的参考资料   到部署的元素   描述。这允许工具   产生额外的部署   信息(即信息之外)   标准部署描述符   信息)存储非标准   信息在一个单独的文件中,和   可以从这些特定工​​具中轻松参考   文件到的信息   标准的Web应用程序部署   描述符。

例如,WebSphere Application Server在其旧的bnd和ext文件中使用了id机制:

web.xml:
<web-app id="WebApp_ID" ...

ibm-web-app-bnd.xmi:
<webappbnd:WebAppBinding ...
  <webapp href="WEB-INF/web.xml#WebApp_ID"/>

(值得庆幸的是,这是工具友好的 - 但是对于ibm-web-bnd / ext的较新的.xml文件格式,不再需要使用id属性,但我离题了。)

答案 1 :(得分:2)

AFAIK这不是必需的(根据DTD)。您可以将其评论出来,看看是否有效,我非常肯定该应用程序会加载正常。