diff --git a/dotCMS/src/main/java/com/dotcms/rest/config/JerseyApplicationEventListener.java b/dotCMS/src/main/java/com/dotcms/rest/config/JerseyApplicationEventListener.java index 9603fc264fa1..0f0970bed5ab 100644 --- a/dotCMS/src/main/java/com/dotcms/rest/config/JerseyApplicationEventListener.java +++ b/dotCMS/src/main/java/com/dotcms/rest/config/JerseyApplicationEventListener.java @@ -1,2 +1,39 @@ -package com.dotcms.rest.config;public class JerseyApplicationEventListener { -} +package com.dotcms.rest.config; + +import com.dotmarketing.util.Logger; +import java.util.Objects; +import java.util.Set; +import javax.enterprise.context.ApplicationScoped; +import javax.ws.rs.ext.Provider; +import org.glassfish.jersey.server.monitoring.ApplicationEvent; +import org.glassfish.jersey.server.monitoring.ApplicationEvent.Type; +import org.glassfish.jersey.server.monitoring.ApplicationEventListener; +import org.glassfish.jersey.server.monitoring.RequestEvent; +import org.glassfish.jersey.server.monitoring.RequestEventListener; + +@Provider +@ApplicationScoped +public class JerseyApplicationEventListener implements ApplicationEventListener { + + @Override + public void onEvent(ApplicationEvent event) { + if (Objects.requireNonNull(event.getType()) == Type.INITIALIZATION_FINISHED) { + logLoadedClasses(event); + } + } + + private void logLoadedClasses(ApplicationEvent event) { + Set> resourceClasses = event.getResourceConfig().getClasses(); + Logger.info(JerseyApplicationEventListener.class,"Loaded resource classes:"); + resourceClasses.forEach(clazz -> Logger.info(JerseyApplicationEventListener.class,clazz.getName())); + + Set providerClasses = event.getResourceConfig().getInstances(); + Logger.info(JerseyApplicationEventListener.class,"Loaded provider classes:"); + providerClasses.forEach(instance -> Logger.info(JerseyApplicationEventListener.class,instance.getClass().getName())); + } + + @Override + public RequestEventListener onRequest(RequestEvent requestEvent) { + return null; // No specific request events handling + } +} \ No newline at end of file diff --git a/dotCMS/src/main/java/com/dotcms/rest/exception/mapper/DotBadRequestExceptionMapper.java b/dotCMS/src/main/java/com/dotcms/rest/exception/mapper/DotBadRequestExceptionMapper.java index e77df62a5f72..7cbfabba65b7 100644 --- a/dotCMS/src/main/java/com/dotcms/rest/exception/mapper/DotBadRequestExceptionMapper.java +++ b/dotCMS/src/main/java/com/dotcms/rest/exception/mapper/DotBadRequestExceptionMapper.java @@ -2,7 +2,6 @@ import com.dotmarketing.util.SecurityLogger; import javax.ws.rs.core.Response; -import javax.ws.rs.ext.Provider; /** * Mapper for all the exceptions that represent a BadRequest