protected Handler createAdminServlet(Server server, MutableServletContextHandler handler, MetricRegistry metrics, HealthCheckRegistry healthChecks) { configureSessionsAndSecurity(handler, server); handler.setServer(server); handler.getServletContext().setAttribute(MetricsServlet.METRICS_REGISTRY, metrics); handler.getServletContext().setAttribute(HealthCheckServlet.HEALTH_CHECK_REGISTRY, healthChecks); handler.addServlet(new NonblockingServletHolder(new AdminServlet()), "/*"); final String allowedMethodsParam = allowedMethods.stream() .collect(Collectors.joining(",")); handler.addFilter(AllowedMethodsFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)) .setInitParameter(AllowedMethodsFilter.ALLOWED_METHODS_PARAM, allowedMethodsParam); return handler; }
protected Handler createAppServlet(Server server, JerseyEnvironment jersey, ObjectMapper objectMapper, Validator validator, MutableServletContextHandler handler, @Nullable Servlet jerseyContainer, MetricRegistry metricRegistry) { configureSessionsAndSecurity(handler, server); final String allowedMethodsParam = allowedMethods.stream() .collect(Collectors.joining(",")); handler.addFilter(AllowedMethodsFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)) .setInitParameter(AllowedMethodsFilter.ALLOWED_METHODS_PARAM, allowedMethodsParam); if (enableThreadNameFilter) { handler.addFilter(ThreadNameFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)); } serverPush.addFilter(handler); if (jerseyContainer != null) { jerseyRootPath.ifPresent(jersey::setUrlPattern); jersey.register(new JacksonFeature(objectMapper)); jersey.register(new HibernateValidationBinder(validator)); if (registerDefaultExceptionMappers == null || registerDefaultExceptionMappers) { jersey.register(new ExceptionMapperBinder(detailedJsonProcessingExceptionMapper)); } handler.addServlet(new NonblockingServletHolder(jerseyContainer), jersey.getUrlPattern()); } final InstrumentedHandler instrumented = new InstrumentedHandler(metricRegistry); instrumented.setServer(server); instrumented.setHandler(handler); return instrumented; }
protected Handler createAdminServlet(Server server, MutableServletContextHandler handler, MetricRegistry metrics, HealthCheckRegistry healthChecks) { configureSessionsAndSecurity(handler, server); handler.setServer(server); handler.getServletContext().setAttribute(MetricsServlet.METRICS_REGISTRY, metrics); handler.getServletContext().setAttribute(HealthCheckServlet.HEALTH_CHECK_REGISTRY, healthChecks); handler.addServlet(new NonblockingServletHolder(new AdminServlet()), "/*"); handler.addFilter(AllowedMethodsFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)) .setInitParameter(AllowedMethodsFilter.ALLOWED_METHODS_PARAM, Joiner.on(',').join(allowedMethods)); return handler; }
protected Handler createAppServlet(Server server, JerseyEnvironment jersey, ObjectMapper objectMapper, Validator validator, MutableServletContextHandler handler, @Nullable Servlet jerseyContainer, MetricRegistry metricRegistry) { configureSessionsAndSecurity(handler, server); handler.addFilter(AllowedMethodsFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)) .setInitParameter(AllowedMethodsFilter.ALLOWED_METHODS_PARAM, Joiner.on(',').join(allowedMethods)); if (enableThreadNameFilter) { handler.addFilter(ThreadNameFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)); } serverPush.addFilter(handler); if (jerseyContainer != null) { jerseyRootPath.ifPresent(jersey::setUrlPattern); jersey.register(new JacksonBinder(objectMapper)); jersey.register(new HibernateValidationFeature(validator)); if (registerDefaultExceptionMappers == null || registerDefaultExceptionMappers) { jersey.register(new ExceptionMapperBinder(detailedJsonProcessingExceptionMapper)); } handler.addServlet(new NonblockingServletHolder(jerseyContainer), jersey.getUrlPattern()); } final InstrumentedHandler instrumented = new InstrumentedHandler(metricRegistry); instrumented.setServer(server); instrumented.setHandler(handler); return instrumented; }
private void registerServlets(Environment environment) { environment.getApplicationContext().addServlet(ClusterInfoServlet.class, "/servlet/clusterinfo"); environment.getApplicationContext().addServlet(KafkaTopicStatsServlet.class, "/servlet/topicstats"); environment.getApplicationContext().addServlet(DoctorKafkaActionsServlet.class, "/servlet/actions"); environment.getApplicationContext().addServlet(DoctorKafkaInfoServlet.class, "/servlet/info"); environment.getApplicationContext().addServlet(DoctorKafkaBrokerStatsServlet.class, "/servlet/brokerstats"); environment.getApplicationContext().addServlet(UnderReplicatedPartitionsServlet.class, "/servlet/urp"); }
@Override public void scanAndAdd(Environment environment, Injector injector, Reflections reflections) { Set<Class<?>> servletClasses = reflections.getTypesAnnotatedWith(RobeServlet.class); for (Class<?> servlet : servletClasses) { RobeServlet ann = servlet.getAnnotation(RobeServlet.class); ServletHolder holder = new ServletHolder(); try { holder.setServlet(new WrapperServlet((Class<ResourceServlet>) servlet, ann.singleton())); } catch (NoSuchMethodException e) { e.printStackTrace(); } environment.getApplicationContext().addServlet(holder, ann.path()); LOGGER.info("Added servlet: " + servlet); } createServletEventListener(environment, injector); }
/** * Load all servlets. */ @SuppressWarnings("unchecked") private void loadServlets(Map<String, ServletConfiguration> servlets, Environment environment) throws ClassNotFoundException { if (servlets != null) { for (Map.Entry<String, ServletConfiguration> servletEntry : servlets.entrySet()) { ServletConfiguration servlet = servletEntry.getValue(); // Create servlet holder ServletHolder servletHolder = new ServletHolder((Class<? extends Servlet>) Class.forName(servlet.getClazz())); // Set name of servlet servletHolder.setName(servletEntry.getKey()); // Set params if (servlet.getParam() != null) { for (Map.Entry<String, String> entry : servlet.getParam().entrySet()) { servletHolder.setInitParameter(entry.getKey(), entry.getValue()); } } // Add servlet environment.getApplicationContext().addServlet(servletHolder, servlet.getUrl()); } } }
applicationContext.addServlet(entry.getValue(), entry.getKey());
environment.jersey().register(new RegionResource(regionDao)); environment.getApplicationContext().addServlet(PingServlet.class, "/ping"); StreamRegistryHealthCheck streamRegistryHealthCheck = new StreamRegistryHealthCheck(managedKStreams, streamResource, metricRegistry);