你如何从servlet反省web.xml?

时间:2009-08-14 16:14:55

标签: java servlets java-ee web.xml servlet-filters

servlet过滤器有没有办法获取所有servlet及其映射的列表?

1 个答案:

答案 0 :(得分:4)

没有标准的API(已经存在了相当有限的内容) - 但它是一个带有标准模式的XML文件。您可以通过以下方式在过滤器中获取它:

filterConfig.getServletContext().getResource("/WEB-INF/web.xml");

使用SAX / DOM / XPath /你有什么东西从中得到你想要的东西,例如

 InputStream is = filterConfig.getServletContext()
   .getResourceAsStream("/WEB-INF/web.xml");
 DocumentBuilder builder = DocumentBuilderFactory.newInstance()
   .newDocumentBuilder();
 Document document = builder.parse(is);
 NodeList servlets = document.getElementsByTagName("servlet");