是否可以获取应用中所有可用servlet的列表?
我正在编写一个Web应用程序,它将公开许多servlet,我想使用HttpUnit来测试每个servlet,看看它是否正在返回(或不是!)。
由于很多都会返回一个简单的XML响应,因此不为每个响应编写一个测试用例,只验证它是否正常工作(例如,数据库更改没有阻止此servlet工作)
答案 0 :(得分:8)
Map<String, ? extends ServletRegistration> servletRegistrations = request.getServletContext().getServletRegistrations();
它会帮助你。
答案 1 :(得分:1)
不要认为开箱即用。但是,您可以编写一个小程序来解析您的web.xml以获取所需的信息。
答案 2 :(得分:0)
使用反射,您可以查找作为HTTPServlet的所有类。
答案 3 :(得分:0)
如果使用tomcat,则可以在类路径中包含服务器jar,然后将ServletContext转换为Tomcat实现。它包含您需要的一切。