eclipse-ee4j / eclipse-ee4j/jersey
JettyTestContainerFactory ignores ServletContextListener silently
- Dominant language
- Java
- Stars
- 730
- Forks
- 382
- PR merge metrics
- No merged PRs in 30d
Description
Given:
```
import org.glassfish.jersey.servlet.ServletContainer;
import org.glassfish.jersey.test.DeploymentContext;
import org.glassfish.jersey.test.JerseyTest;
import org.glassfish.jersey.test.ServletDeploymentContext;
import org.junit.Test;
public final class TestHelloWorld extends JerseyTest
{
@Override
protected DeploymentContext configureDeployment()
{
return ServletDeploymentContext.builder(TestApplication.class).
servletClass(ServletContainer.class).
addListener(JulToSlf4j.class).
build();
}
@Test
public void getMessage()
{
String message = target("helloworld").request().get(String.class);
System.out.println("response: " + message);
}
}
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.slf4j.bridge.SLF4JBridgeHandler;
/**
* Redirects logging from java.util.logging to slf4j.
*
* @author Gili Tzabari
*/
public final class JulToSlf4j implements ServletContextListener
{
@Override
public void contextInitialized(ServletContextEvent sce)
{
SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();
}
@Override
public void contextDestroyed(ServletContextEvent sce)
{
}
}
```
JettyTestContainerFactory creates a Jetty server but fails to register the ServletContextListener.
Contributor guide
Assessment
This issue has not been assessed yet.