Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-dev] How to enable extended listener types for a servlet context?

Hi,

I was trying to set up an embedded Jetty 9.1, Jersey 2.5, Spring 4 application and tried to register Spring’s ContextLoaderListener with the servlet context that I get from Jetty using servletContext.addListener(new ContextLoaderListener(springAppContext))

How ever, by default, I get an exception as:

Caused by: java.lang.IllegalArgumentException: Inappropriate listener class org.springframework.web.context.ContextLoaderListener
    at org.eclipse.jetty.server.handler.ContextHandler$Context.checkListener(ContextHandler.java:2247)
    at org.eclipse.jetty.server.handler.ContextHandler$Context.addListener(ContextHandler.java:2197)
    at org.eclipse.jetty.servlet.ServletContextHandler$Context.addListener(ServletContextHandler.java:1294)
    at com.narmnevis.papyrus.SpringContainerLifeCycleListener.onStartup(SpringContainerLifeCycleListener.java:54)
    at org.glassfish.jersey.server.internal.ConfigHelper$3.onStartup(ConfigHelper.java:95)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:171)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:359)
    at javax.servlet.GenericServlet.init(GenericServlet.java:244)
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:561)
    ... 23 more

When I looked into ContextHandler$Context, it seems there is a method:

org.eclipse.jetty.server.handler.ContextHandler.Context.setExtendedListenerTypes(boolean)

But the question is how I can use this method because it’s basically very down the implementation? Is there a standard way to enable this feature?

Thanks,
Behrooz

--
-- Behrooz Nobakht

Back to the top