mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-12 16:35:45 +01:00
reset resteasy StatisticsController to avoid ClassLoader leaks
This commit is contained in:
@@ -7,6 +7,7 @@ import org.jboss.resteasy.plugins.server.servlet.ListenerBootstrap;
|
||||
import org.jboss.resteasy.spi.Registry;
|
||||
import org.jboss.resteasy.spi.ResteasyDeployment;
|
||||
import org.jboss.resteasy.spi.ResteasyProviderFactory;
|
||||
import org.jboss.resteasy.spi.statistics.StatisticsController;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -70,6 +71,12 @@ public class ResteasyAllInOneServletDispatcher extends HttpServletDispatcher {
|
||||
super.destroy();
|
||||
deployment.stop();
|
||||
|
||||
// clear ResourceLocatorInvoker leaks
|
||||
StatisticsController statisticsController = ResteasyProviderFactory.getInstance().getStatisticsController();
|
||||
if (statisticsController != null) {
|
||||
statisticsController.reset();
|
||||
}
|
||||
|
||||
// ensure everything gets cleared, to avoid classloader leaks
|
||||
ResteasyProviderFactory.clearInstanceIfEqual(ResteasyProviderFactory.getInstance());
|
||||
RuntimeDelegate.setInstance(null);
|
||||
|
||||
Reference in New Issue
Block a user