如何获取所有可用servlet的列表?

Fer*_*iro 10 java servlets

是否有可能获得应用程序中所有可用servlet的列表?

我正在编写一个Web应用程序,它将暴露许多servlet,我想使用HttpUnit来测试每个servlet,看看它是否正在返回(或不是!).

由于很多它将返回一个简单的XML响应,因此不为每个响应编写一个测试用例,只验证它是否正常工作(例如,数据库更改并没有阻止此servlet工作).

Tim*_*dze 8

Map<String, ? extends ServletRegistration> servletRegistrations = request.getServletContext().getServletRegistrations();
Run Code Online (Sandbox Code Playgroud)

它会对你有所帮助.

  • 这对我有用,谢谢.但是对于其他人来说,`getServletRegistrations()`方法仅在Servlet 3.0规范(即Java EE 6 - 即Tomcat 7+)之后才可用. (3认同)

Dan*_*ura 0

使用反射,您可以查找所有属于 HTTPServlet 的类。