我必须为Tomcat使用自定义记录器。扩展java.util.logging.Handler
我实现了一个桥接到自定义记录器。它通过WEB-INF/classes/logging.properties
进行实例化。
但它需要由战争中的属性文件配置。所以我需要ServletContext来做servletContext.getResourceAsStream(iniFileName)
。由于自定义Logger是由java日志记录机制创建的,因此我无法从Servlet构造函数或依赖注入中获取ServletContext。
如何在创建任何Servlet之前获取ServletContext?
答案 0 :(得分:2)
创建ServletContextListener并以编程方式实例化您的处理程序。如果必须通过loggin.property进行实例化,您仍然可以通过logger API查找处理程序实例并进行配置。