當前位置: 首頁>>代碼示例>>Java>>正文


Java GuiceServletContextListener類代碼示例

本文整理匯總了Java中com.google.inject.servlet.GuiceServletContextListener的典型用法代碼示例。如果您正苦於以下問題:Java GuiceServletContextListener類的具體用法?Java GuiceServletContextListener怎麽用?Java GuiceServletContextListener使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


GuiceServletContextListener類屬於com.google.inject.servlet包,在下文中一共展示了GuiceServletContextListener類的14個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: startJetty

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@Before
public void startJetty() throws Exception {
  servletTester = new ServletTester();
  servletTester.getContext().addEventListener(new GuiceServletContextListener()
  {
    final Injector injector = Guice.createInjector(new TestModule());

    @Override
    protected Injector getInjector() {
      return injector;
    }
  });

  url = servletTester.createConnector(true) + TestModule.MOUNT_POINT;
  servletTester.addFilter(GuiceFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST));
  servletTester.addServlet(DummyServlet.class, "/*");
  servletTester.start();

  client = ClientBuilder.newClient();
}
 
開發者ID:sonatype,項目名稱:nexus-public,代碼行數:21,代碼來源:SiestaTestSupport.java

示例2: makeServletContextListener

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@VisibleForTesting
static ServletContextListener makeServletContextListener(
    final Injector parentInjector,
    final Module childModule) {

  return new GuiceServletContextListener() {
    @Override
    protected Injector getInjector() {
      return parentInjector.createChildInjector(
          childModule,
          new JerseyServletModule() {
            @Override
            protected void configureServlets() {
              bind(HttpStatsFilter.class).in(Singleton.class);
              filter("*").through(HttpStatsFilter.class);

              bind(LeaderRedirectFilter.class).in(Singleton.class);
              filterRegex(allOf(LEADER_ENDPOINTS))
                  .through(LeaderRedirectFilter.class);

              bind(GuiceContainer.class).in(Singleton.class);
              filterRegex(allOf(ImmutableSet.copyOf(JAX_RS_ENDPOINTS.values())))
                  .through(GuiceContainer.class, GUICE_CONTAINER_PARAMS);

              filterRegex("/assets/scheduler(?:/.*)?").through(LeaderRedirectFilter.class);

              serve("/assets", "/assets/*")
                  .with(new DefaultServlet(), ImmutableMap.of(
                      "resourceBase", STATIC_ASSETS_ROOT,
                      "dirAllowed", "false"));

              for (Class<?> jaxRsHandler : JAX_RS_ENDPOINTS.keySet()) {
                bind(jaxRsHandler);
              }
            }
          });
    }
  };
}
 
開發者ID:PacktPublishing,項目名稱:Mastering-Mesos,代碼行數:40,代碼來源:JettyServerModule.java

示例3: createServletEventListener

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
private void createServletEventListener(Environment environment, final Injector injector) {
    environment.getApplicationContext().addEventListener(new GuiceServletContextListener() {
        @Override
        protected Injector getInjector() {
            return injector;
        }
    });
}
 
開發者ID:robeio,項目名稱:robe,代碼行數:9,代碼來源:ServletScanner.java

示例4: setupHttpServer

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
private static HttpServer setupHttpServer(URI baseUri, final Injector injector) {
    final HttpServer serverLocal = GrizzlyHttpServerFactory
            .createHttpServer(baseUri, false);

    final WebappContext context = new WebappContext("Guice Webapp sample",
            "");

    context.addListener(new GuiceServletContextListener(){
        @Override
        protected Injector getInjector() {
            return injector;
        }
    });

    // Initialize and register Jersey ServletContainer
    final ServletRegistration servletRegistration = context.addServlet(
            "ServletContainer", ServletContainer.class);
    servletRegistration.addMapping("/*");
    servletRegistration.setInitParameter("javax.ws.rs.Application",
            WebApp.class.getName());

    // Initialize and register GuiceFilter
    final FilterRegistration registration = context.addFilter(
            "GuiceFilter", GuiceFilter.class);
    registration.addMappingForUrlPatterns(
            EnumSet.allOf(DispatcherType.class), "/*");

    context.deploy(serverLocal);

    return serverLocal;
}
 
開發者ID:udoprog,項目名稱:exposr,代碼行數:32,代碼來源:Main.java

示例5: servletContext

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@Provides
public ServletContextHandler servletContext(GuiceResteasyBootstrapServletContextListener resteasyListener,
                                            GuiceFilter guiceFilter,
                                            GuiceServletContextListener guiceServletContextListener) {
    final FilterHolder guiceFilterHolder = new FilterHolder(guiceFilter);
    final ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
    context.addFilter(guiceFilterHolder, "/*", EnumSet.allOf(DispatcherType.class));
    context.addEventListener(resteasyListener);
    context.addEventListener(guiceServletContextListener);
    return context;
}
 
開發者ID:benhardy,項目名稱:lilrest,代碼行數:12,代碼來源:JaxRsServerModule.java

示例6: getGuiceServletContextListener

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@Provides
private GuiceServletContextListener getGuiceServletContextListener(final Injector injector) {
    return new GuiceServletContextListener() {
        @Override
        protected Injector getInjector() {
            return injector;
        }
    };
}
 
開發者ID:benhardy,項目名稱:lilrest,代碼行數:10,代碼來源:JaxRsServerModule.java

示例7: setUp

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@Before
public void setUp() throws Exception {

    // starts the server with a random port
    jettyServer = new Server(0);

    WebAppContext bpCtrlWebapp = new WebAppContext();
    bpCtrlWebapp.setResourceBase("./src/main/java");
    bpCtrlWebapp.setParentLoaderPriority(true);

    bpCtrlWebapp.addFilter(GuiceFilter.class, "/*", null);
    bpCtrlWebapp.addEventListener(new GuiceServletContextListener() {

        private Injector injector;

        @Override
        public void contextInitialized(ServletContextEvent servletContextEvent) {
            injector = Guice.createInjector(getServletTestModule());
            super.contextInitialized(servletContextEvent);
        }

        @Override
        protected Injector getInjector() {
            return injector;
        }
    });

    jettyServer.setHandler(bpCtrlWebapp);

    jettyServer.start();

    int port = ((ServerConnector) jettyServer.getConnectors()[0]).getLocalPort();
    serverUrl = String.format("http://localhost:%d", port);
}
 
開發者ID:bmwcarit,項目名稱:joynr,代碼行數:35,代碼來源:AbstractServiceInterfaceTest.java

示例8: main

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
public static void main(String[] args) throws Exception {
    System.setProperty(Sdk.DISABLE_REQUEST_SIGNATURE_CHECK_SYSTEM_PROPERTY, "true");

    String envPort = System.getenv("PORT");
    int port = envPort == null || envPort.isEmpty() ? 8000 : Integer.valueOf(envPort);


    // Configure server and its associated servlets
    Server server = new Server(port);

    ServletContextHandler context = new ServletContextHandler();
    context.addEventListener(new GuiceServletContextListener() {
        @Override
        protected Injector getInjector() {
            Module services = new AbstractModule() {
                @Override
                protected void configure() {
                    bind(SpeechRouter.class).toProvider(new Provider<SpeechRouter>() {
                        @Inject Injector injector;

                        @Override
                        public SpeechRouter get() {
                            try {
                                return SpeechRouter.create(injector, "rottentomatoes");
                            } catch (Exception e) {
                                e.printStackTrace();
                                return null;
                            }
                        }
                    }).in(Singleton.class);
                    bind(AlexaSessionProvider.class).in(RequestScoped.class);
                    bind(RequestContextProvider.class).in(RequestScoped.class);
                    bind(SpeechletServlet.class).toProvider(new Provider<SpeechletServlet>() {
                        @Inject SpeechRouter router;
                        @Inject Injector injector;

                        @Override
                        public SpeechletServlet get() {
                            SpeechletServlet servlet = new SpeechletServlet();
                            servlet.setSpeechlet(new RoutingSpeechlet(router, injector));
                            return servlet;
                        }
                    }).in(Singleton.class);
                }
            };

            return Guice.createInjector(services, new ServletModule() {
                @Override
                protected void configureServlets() {
                    serve("/sample-utterances").with(SampleUtterancesServlet.class);
                    serve("/intent-schema").with(IntentSchemaServlet.class);
                    serve("/rotten-tomatoes").with(SpeechletServlet.class);
                }
            });
        }
    });
    context.addFilter(GuiceFilter.class, "/*", null);
    context.addServlet(DefaultServlet.class, "/");
    server.setHandler(context);
    server.start();
    server.join();
}
 
開發者ID:rs22,項目名稱:alexa-routing,代碼行數:63,代碼來源:Main.java

示例9: startWebSocketServer

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
public void startWebSocketServer(final Injector injector) {
  httpServer = new Server();

  List<Connector> connectors = getSelectChannelConnectors(httpAddresses);
  if (connectors.isEmpty()) {
    LOG.severe("No valid http end point address provided!");
  }
  for (Connector connector : connectors) {
    httpServer.addConnector(connector);
  }
  final WebAppContext context = new WebAppContext();

  context.setParentLoaderPriority(true);

  if (jettySessionManager != null) {
    // This disables JSessionIDs in URLs redirects
    // see: http://stackoverflow.com/questions/7727534/how-do-you-disable-jsessionid-for-jetty-running-with-the-eclipse-jetty-maven-plu
    // and: http://jira.codehaus.org/browse/JETTY-467?focusedCommentId=114884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-114884
    jettySessionManager.setSessionIdPathParameterName(null);

    context.getSessionHandler().setSessionManager(jettySessionManager);
  }
  final ResourceCollection resources = new ResourceCollection(resourceBases);
  context.setBaseResource(resources);

  addWebSocketServlets();

  try {
    final Injector parentInjector = injector;

    final ServletModule servletModule = getServletModule(parentInjector);

    ServletContextListener contextListener = new GuiceServletContextListener() {

      private final Injector childInjector = parentInjector.createChildInjector(servletModule);

      @Override
      protected Injector getInjector() {
        return childInjector;
      }
    };

    context.addEventListener(contextListener);
    context.addFilter(GuiceFilter.class, "/*", EnumSet.allOf(DispatcherType.class));
    context.addFilter(GzipFilter.class, "/webclient/*", EnumSet.allOf(DispatcherType.class));
    httpServer.setHandler(context);

    httpServer.start();
    restoreSessions();

  } catch (Exception e) { // yes, .start() throws "Exception"
    LOG.severe("Fatal error starting http server.", e);
    return;
  }
  LOG.fine("WebSocket server running.");
}
 
開發者ID:jorkey,項目名稱:Wiab.pro,代碼行數:57,代碼來源:ServerRpcProvider.java

示例10: getServletConfig

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
@Override
protected GuiceServletContextListener getServletConfig() {
	return new SystemAServletConfig();
}
 
開發者ID:bioko,項目名稱:system-a-test,代碼行數:5,代碼來源:SystemATestAbstract.java

示例11: startWebSocketServer

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
public void startWebSocketServer(final Injector injector) {
  httpServer = new Server();

  List<Connector> connectors = getSelectChannelConnectors(httpAddresses);
  if (connectors.isEmpty()) {
    LOG.severe("No valid http end point address provided!");
  }
  for (Connector connector : connectors) {
    httpServer.addConnector(connector);
  }
  final WebAppContext context = new WebAppContext();

  context.setParentLoaderPriority(true);

  if (jettySessionManager != null) {
    // This disables JSessionIDs in URLs redirects
    // see: http://stackoverflow.com/questions/7727534/how-do-you-disable-jsessionid-for-jetty-running-with-the-eclipse-jetty-maven-plu
    // and: http://jira.codehaus.org/browse/JETTY-467?focusedCommentId=114884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-114884
    jettySessionManager.setSessionIdPathParameterName(null);

    context.getSessionHandler().setSessionManager(jettySessionManager);
  }
  final ResourceCollection resources = new ResourceCollection(resourceBases);
  context.setBaseResource(resources);

  addWebSocketServlets();

  try {

    final ServletModule servletModule = getServletModule();

    ServletContextListener contextListener = new GuiceServletContextListener() {

      private final Injector childInjector = injector.createChildInjector(servletModule);

      @Override
      protected Injector getInjector() {
        return childInjector;
      }
    };

    context.addEventListener(contextListener);
    context.addFilter(GuiceFilter.class, "/*", EnumSet.allOf(DispatcherType.class));
    context.addFilter(GzipFilter.class, "/webclient/*", EnumSet.allOf(DispatcherType.class));
    httpServer.setHandler(context);

    httpServer.start();
    restoreSessions();

  } catch (Exception e) { // yes, .start() throws "Exception"
    LOG.severe("Fatal error starting http server.", e);
    return;
  }
  LOG.fine("WebSocket server running.");
}
 
開發者ID:apache,項目名稱:incubator-wave,代碼行數:56,代碼來源:ServerRpcProvider.java

示例12: start

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
public void start() throws Exception {
    ((ServerConnector) server.getConnectors()[0]).setReuseAddress(true);

    // Root context
    context.setContextPath("/abnormal");

    // Setup static content
    context.setResourceBase("src/main/webapp/");
    context.addServlet(DefaultServlet.class, "/");

    // Enable Jersey debug output
    context.setInitParameter("com.sun.jersey.config.statistic.Trace", "true");

    // Enable CORS - cross origin resource sharing
    FilterHolder cors = new FilterHolder();
    cors.setInitParameter("allowedOrigins", "https?://localhost:*, https?://*.e-navigation.net:*");
    cors.setInitParameter("allowedHeaders", "*");
    cors.setInitParameter("allowedMethods", "OPTIONS,GET,PUT,POST,DELETE,HEAD");
    cors.setFilter(new CrossOriginFilter());
    context.addFilter(cors, "*", EnumSet.of(DispatcherType.REQUEST, DispatcherType.ASYNC, DispatcherType.INCLUDE));

    // Little hack to satisfy OpenLayers URLs in DMA context
    RewritePatternRule openlayersRewriteRule = new RewritePatternRule();
    openlayersRewriteRule.setPattern("/abnormal/theme/*");
    openlayersRewriteRule.setReplacement("/abnormal/js/theme/");

    RewriteHandler rewrite = new RewriteHandler();
    rewrite.setRewriteRequestURI(true);
    rewrite.setRewritePathInfo(false);
    rewrite.setOriginalPathAttribute("requestedPath");
    rewrite.addRule(openlayersRewriteRule);
    rewrite.setHandler(context);
    server.setHandler(rewrite);

    // Setup Guice-Jersey integration
    context.addEventListener(new GuiceServletContextListener() {
        @Override
        protected Injector getInjector() {
            return Guice.createInjector(new RestModule(
                    repositoryName,
                    pathToEventDatabase,
                    eventRepositoryType,
                    eventDataDbHost,
                    eventDataDbPort,
                    eventDataDbName,
                    eventDataDbUsername,
                    eventDataDbPassword
            ));
        }
    });
    context.addFilter(com.google.inject.servlet.GuiceFilter.class, "/rest/*", EnumSet.allOf(DispatcherType.class));

    // Start the server
    server.start();
}
 
開發者ID:dma-ais,項目名稱:AisAbnormal,代碼行數:56,代碼來源:WebServer.java

示例13: JettyServer

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
public JettyServer(int port, GuiceServletContextListener guiceConfig) {
    this.port = port;
    this.guiceConfig = guiceConfig;
}
 
開發者ID:enigma11,項目名稱:jetty-guice,代碼行數:5,代碼來源:JettyServer.java

示例14: getServletConfig

import com.google.inject.servlet.GuiceServletContextListener; //導入依賴的package包/類
/**
 * Java version of the web.xml snippet:
 * <pre>
 * {@code
 * <listener>
 *   <listener-class>it.bioko.mysystem.injection.MySystemServletConfig</listener-class>
 * </listener>
 * }
 * <pre>
 * @return An instance of a subclass of {@link GuiceServletContextListener}
 */
protected abstract GuiceServletContextListener getServletConfig();
 
開發者ID:bioko,項目名稱:http-test,代碼行數:13,代碼來源:WebAppTest.java


注:本文中的com.google.inject.servlet.GuiceServletContextListener類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。