Implementato shutdown Log4j
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -68,7 +68,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.logging.log4j</groupId>
|
<groupId>org.apache.logging.log4j</groupId>
|
||||||
<artifactId>log4j-bom</artifactId>
|
<artifactId>log4j-bom</artifactId>
|
||||||
<version>2.24.3</version>
|
<version>2.25.0</version>
|
||||||
<scope>import</scope>
|
<scope>import</scope>
|
||||||
<type>pom</type>
|
<type>pom</type>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ import java.lang.reflect.InvocationTargetException;
|
|||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.sql.DriverManager;
|
import java.sql.DriverManager;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Enumeration;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
@@ -72,6 +73,22 @@ public class EmsCoreContext {
|
|||||||
@PreDestroy
|
@PreDestroy
|
||||||
public void preDestroy() {
|
public void preDestroy() {
|
||||||
contextInitialized = false;
|
contextInitialized = false;
|
||||||
|
|
||||||
|
|
||||||
|
ClassLoader cl = Thread.currentThread().getContextClassLoader();
|
||||||
|
Enumeration<java.sql.Driver> drivers = DriverManager.getDrivers();
|
||||||
|
logger.info("Deregister DB Drivers");
|
||||||
|
|
||||||
|
while (drivers.hasMoreElements()) {
|
||||||
|
java.sql.Driver driver = drivers.nextElement();
|
||||||
|
if (driver.getClass().getClassLoader() == cl) {
|
||||||
|
try {
|
||||||
|
DriverManager.deregisterDriver(driver);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
// log error
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//@EventListener(ContextRefreshedEvent.class)
|
//@EventListener(ContextRefreshedEvent.class)
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package it.integry.ems.listener;
|
||||||
|
|
||||||
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
|
||||||
|
import javax.servlet.ServletContextEvent;
|
||||||
|
import javax.servlet.ServletContextListener;
|
||||||
|
|
||||||
|
public class Log4jShutdownListener implements ServletContextListener {
|
||||||
|
@Override
|
||||||
|
public void contextInitialized(ServletContextEvent servletContextEvent) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void contextDestroyed(ServletContextEvent sce) {
|
||||||
|
LogManager.shutdown();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -19,16 +19,18 @@
|
|||||||
<param-name>log4jConfiguration</param-name>
|
<param-name>log4jConfiguration</param-name>
|
||||||
<param-value>classpath:log4j2.xml</param-value>
|
<param-value>classpath:log4j2.xml</param-value>
|
||||||
</context-param>
|
</context-param>
|
||||||
|
|
||||||
<listener>
|
|
||||||
<listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
|
|
||||||
</listener>
|
|
||||||
<listener>
|
<listener>
|
||||||
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
|
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
|
||||||
</listener>
|
</listener>
|
||||||
<listener>
|
<listener>
|
||||||
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
|
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
|
||||||
</listener>
|
</listener>
|
||||||
|
<listener>
|
||||||
|
<listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
|
||||||
|
</listener>
|
||||||
|
<!-- <listener>-->
|
||||||
|
<!-- <listener-class>it.integry.ems.listener.Log4jShutdownListener</listener-class>-->
|
||||||
|
<!-- </listener>-->
|
||||||
|
|
||||||
<servlet>
|
<servlet>
|
||||||
<servlet-name>SpringDispatcherServlet</servlet-name>
|
<servlet-name>SpringDispatcherServlet</servlet-name>
|
||||||
|
|||||||
Reference in New Issue
Block a user