eclipse-ee4j / eclipse-ee4j/jersey

JettyTestContainerFactory ignores ServletContextListener silently

Open
#3,386 3 comments 0 reactions 0 assignees View on GitHub
Priority: Major Type: Bug
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.