什么是servlet的“显示名称”?

根据Servlet 2.5部署描述符XSD , 元素似乎是元素的有效子元素。 也就是说,根据Eclipse的XMLvalidation器,这个:

  FooServlet FooServlet com.bar.servlet.FooServlet  

是一个有效的servlet-mapping ,而这个:

  FooServlet OMGWTFBBQ com.bar.servlet.FooServlet  

不是(这似乎足够合理)。

实际使用的display-name是什么? 我无法挖掘任何有关它的信息。

的规范内部名称,用作将url-patterns等内容链接到servlet的键。 供管理工具等使用。

当您考虑XML Schema允许多种元素(对于各种语言,例如)时,这可能更有意义

  MyServlet My Servlet Ma Servlet  

(原谅我的Frenglais)

servlet-name用于引用其他标记中的servlet(如servlet-mapping )。 这可以被认为是servlet的“内部名称”。 display-name是servlet的“外部名称” – 它应该出现在servlet容器的管理控制台上。 通常,Web应用程序作为一个单元进行管理 – 它们被部署/取消部署/重新启动/等。 作为一个整体,不管理单个servlet – 因此,通常不会看到使用此显示名称的位置。

我相信它主要由J2EE Web管理控制台使用,在显示统计信息等时。

可选的display-name元素指定Web应用程序显示名称,GUI工具可以显示的短名称。

元素是的子元素。 这些是web.xml部署描述符文件中使用的元素。 是可选的,允许与servlet相关联的短名称,GUI工具(例如Web浏览器)可能会读取该名称,以便在需要时将servlet的名称字面显示给客户端。 然而,在实践中,它几乎从未使用过,因此可以安全地被忽视。