Togglz jetty9嵌入式

时间:2013-08-27 05:36:09

标签: java jetty togglz

如何使用jetty 9嵌入运行togglz。我尝试使用跟随代码

        ServletHolder togglz = new ServletHolder(TogglzConsoleServlet.class);
        togglz.setInitParameter("org.togglz.core.manager.TogglzConfig", "com.citronium.togglz.config.PlansteryTogglzConfig");
        togglz.setInitParameter("org.togglz.FEATURE_MANAGER_PROVIDED", "true");
        context.addServlet(togglz, "/togglz/*");
        EnumSet<DispatcherType> all = EnumSet.of(DispatcherType.ASYNC, DispatcherType.ERROR, DispatcherType.FORWARD,
                DispatcherType.INCLUDE, DispatcherType.REQUEST);
        context.addFilter(new FilterHolder(new TogglzFilter()), "/togglz/*", all);

我有关注错误

  

o.e.j.u.component.AbstractLifeCycle - FAILED o.e.j.s.ServletContextHandler@6195bb34 {/,null,STARTING}:java.lang.IllegalStateException:找不到TogglzConfig或TogglzBootstrap的任何实现。请确保已将所需的集成模块添加到项目中,或者按照文档“配置”一章中的说明在web.xml中注册实现。   java.lang.IllegalStateException:找不到TogglzConfig或TogglzBootstrap的任何实现。请确保已将所需的集成模块添加到项目中,或者按照文档“配置”一章中的说明在web.xml中注册实现。

2 个答案:

答案 0 :(得分:1)

我认为您应该将org.togglz.FEATURE_MANAGER_PROVIDED设置为false。将其设置为true告诉Togglz它不应该使用TogglzConfig实现来引导FeatureManager,而是尝试使用由Spring或CDI等IoC容器提供的FeatureManager。

BTW:您还应该将TogglzFilter的映射更改为/*,以便Togglz适用于所有请求,而不仅仅是针对以/togglz开头的网址请求。

答案 1 :(得分:0)

我知道这个问题已经过时了,但是由于我遇到了同样的问题,我想分享解决方案。

您需要在ServletContextHandler上设置init参数,而不是ServletHolder。一切都运转正常。