Java 类javax.servlet.ServletContainerInitializer 实例源码

项目:tomee    文件:TomEEOverlayRunner.java   
@Override
public void onStartup(final Set<Class<?>> classes, final ServletContext ctx) throws ServletException {
    if (System.getProperty("openejb.embedder.source") != null) {
        ctx.log("TomEE already initialized");
        return;
    }

    ctx.log("Embedded TomEE starting");

    final Properties properties = new Properties();
    properties.putAll(System.getProperties());
    properties.setProperty("openejb.system.apps", Boolean.toString(Boolean.getBoolean("openejb.system.apps")));
    properties.setProperty("tomee.war", new File(ctx.getRealPath("WEB-INF")).getParentFile().getAbsolutePath());
    properties.setProperty("openejb.embedder.source", getClass().getSimpleName());

    TomcatEmbedder.embed(properties, ServletContainerInitializer.class.getClassLoader());

    ctx.log("Embedded TomEE started");

    Deployer.deploy(ctx);

    ctx.log("Application '" + ctx.getContextPath() + "' TomEE-ised");
}
项目:embed-apache-tomcat    文件:TomcatServerRule.java   
private void start() throws InstantiationException, IllegalAccessException {

        TomcatApplicationBuilderFactory builderFactory = factoryClass.newInstance();
        TomcatApplicationBuilder builder = builderFactory.getBuilder(annotation);

        for (ServletContainerInitializer initializer : initializers) {
            builder.addServletContainerInitializer(initializer);
        }

        if (annotation != null) {
            this.timeout = annotation.timeout();
        } else {
            this.timeout = TomcatServerConfig.DEFAULT_TIMEOUT;
        }

        Tomcat tomcat = builder.build();

        this.runtime = tomcat.start(timeout);
    }
项目:embed-apache-tomcat    文件:SimpleTomcatApplicationBuilderFactory.java   
@Override
public TomcatApplicationBuilder getBuilder(TomcatServerConfig annotation) {

    File baseFile = getBaseDir(annotation);
    String appName = getAppName(annotation);
    int port = getPort(annotation);

    File appDir = new File(baseFile, String.format("webapps/%s", appName));
    if (!appDir.exists() && !appDir.mkdirs()) {
        throw new IllegalStateException("Unable to create app dir at: " + appDir);
    }

    TomcatApplicationBuilder builder = new TomcatFactory().create()
        .newMinimalServer(baseFile, port)
            .createApplication(appName)
            .setStartStopThreads(1)
            .withDefaultConfig();

    if (annotation != null) {
        for (Class<? extends ServletContainerInitializer> initializer : annotation.value()) {
            builder.addServletContainerInitializer(initializer);
        }
    }

    return builder;
}
项目:tomcat7    文件:ContextConfig.java   
private Set<ServletContainerInitializer> getSCIsForClass(String className) {
    for (Map.Entry<Class<?>, Set<ServletContainerInitializer>> entry :
            typeInitializerMap.entrySet()) {
        Class<?> clazz = entry.getKey();
        if (!clazz.isAnnotation()) {
            if (clazz.getName().equals(className)) {
                return entry.getValue();
            }
        }
    }
    return EMPTY_SCI_SET;
}
项目:tomcat7    文件:TestWebappServiceLoader.java   
@Test
public void testWebapp() throws Exception {
    Tomcat tomcat = getTomcatInstance();
    File appDir = new File("test/webapp-3.0-fragments-empty-absolute-ordering");
    StandardContext ctxt = (StandardContext) tomcat.addContext(null, "/test", appDir.getAbsolutePath());
    ctxt.addLifecycleListener(new ContextConfig());
    tomcat.start();

    WebappServiceLoader<ServletContainerInitializer> loader =
            new WebappServiceLoader<ServletContainerInitializer>(ctxt);
    @SuppressWarnings("unused")
    Collection<ServletContainerInitializer> initializers = loader.load(ServletContainerInitializer.class);
}
项目:tomcat7    文件:TestStandardContext.java   
@Test
public void testBug50015() throws Exception {
    // Test that configuring servlet security constraints programmatically
    // does work.

    // Set up a container
    Tomcat tomcat = getTomcatInstance();

    // No file system docBase required
    Context ctx = tomcat.addContext("", null);

    // Setup realm
    MapRealm realm = new MapRealm();
    realm.addUser("tomcat", "tomcat");
    realm.addUserRole("tomcat", "tomcat");
    ctx.setRealm(realm);

    // Configure app for BASIC auth
    LoginConfig lc = new LoginConfig();
    lc.setAuthMethod("BASIC");
    ctx.setLoginConfig(lc);
    ctx.getPipeline().addValve(new BasicAuthenticator());

    // Add ServletContainerInitializer
    ServletContainerInitializer sci = new Bug50015SCI();
    ctx.addServletContainerInitializer(sci, null);

    // Start the context
    tomcat.start();

    // Request the first servlet
    ByteChunk bc = new ByteChunk();
    int rc = getUrl("http://localhost:" + getPort() + "/bug50015",
            bc, null);

    // Check for a 401
    assertNotSame("OK", bc.toString());
    assertEquals(401, rc);
}
项目:tomcat7    文件:TestStandardWrapper.java   
private void doTestSecurityAnnotationsAddServlet(boolean useCreateServlet)
        throws Exception {

    // Setup Tomcat instance
    Tomcat tomcat = getTomcatInstance();

    // No file system docBase required
    Context ctx = tomcat.addContext("", null);

    Servlet s = new DenyAllServlet();
    ServletContainerInitializer sci = new SCI(s, useCreateServlet);
    ctx.addServletContainerInitializer(sci, null);

    tomcat.start();

    ByteChunk bc = new ByteChunk();
    int rc;
    rc = getUrl("http://localhost:" + getPort() + "/", bc, null, null);

    if (useCreateServlet) {
        assertTrue(bc.getLength() > 0);
        assertEquals(403, rc);
    } else {
        assertEquals("OK", bc.toString());
        assertEquals(200, rc);
    }
}
项目:apache-tomcat-7.0.73-with-comment    文件:ContextConfig.java   
private Set<ServletContainerInitializer> getSCIsForClass(String className) {
    for (Map.Entry<Class<?>, Set<ServletContainerInitializer>> entry :
            typeInitializerMap.entrySet()) {
        Class<?> clazz = entry.getKey();
        if (!clazz.isAnnotation()) {
            if (clazz.getName().equals(className)) {
                return entry.getValue();
            }
        }
    }
    return EMPTY_SCI_SET;
}
项目:apache-tomcat-7.0.73-with-comment    文件:TestWebappServiceLoader.java   
@Test
public void testWebapp() throws Exception {
    Tomcat tomcat = getTomcatInstance();
    File appDir = new File("test/webapp-3.0-fragments-empty-absolute-ordering");
    StandardContext ctxt = (StandardContext) tomcat.addContext(null, "/test", appDir.getAbsolutePath());
    ctxt.addLifecycleListener(new ContextConfig());
    tomcat.start();

    WebappServiceLoader<ServletContainerInitializer> loader =
            new WebappServiceLoader<ServletContainerInitializer>(ctxt);
    @SuppressWarnings("unused")
    Collection<ServletContainerInitializer> initializers = loader.load(ServletContainerInitializer.class);
}
项目:apache-tomcat-7.0.73-with-comment    文件:TestStandardContext.java   
@Test
public void testBug50015() throws Exception {
    // Test that configuring servlet security constraints programmatically
    // does work.

    // Set up a container
    Tomcat tomcat = getTomcatInstance();

    // No file system docBase required
    Context ctx = tomcat.addContext("", null);

    // Setup realm
    MapRealm realm = new MapRealm();
    realm.addUser("tomcat", "tomcat");
    realm.addUserRole("tomcat", "tomcat");
    ctx.setRealm(realm);

    // Configure app for BASIC auth
    LoginConfig lc = new LoginConfig();
    lc.setAuthMethod("BASIC");
    ctx.setLoginConfig(lc);
    ctx.getPipeline().addValve(new BasicAuthenticator());

    // Add ServletContainerInitializer
    ServletContainerInitializer sci = new Bug50015SCI();
    ctx.addServletContainerInitializer(sci, null);

    // Start the context
    tomcat.start();

    // Request the first servlet
    ByteChunk bc = new ByteChunk();
    int rc = getUrl("http://localhost:" + getPort() + "/bug50015",
            bc, null);

    // Check for a 401
    assertNotSame("OK", bc.toString());
    assertEquals(401, rc);
}
项目:apache-tomcat-7.0.73-with-comment    文件:TestStandardWrapper.java   
private void doTestSecurityAnnotationsAddServlet(boolean useCreateServlet)
        throws Exception {

    // Setup Tomcat instance
    Tomcat tomcat = getTomcatInstance();

    // No file system docBase required
    Context ctx = tomcat.addContext("", null);

    Servlet s = new DenyAllServlet();
    ServletContainerInitializer sci = new SCI(s, useCreateServlet);
    ctx.addServletContainerInitializer(sci, null);

    tomcat.start();

    ByteChunk bc = new ByteChunk();
    int rc;
    rc = getUrl("http://localhost:" + getPort() + "/", bc, null, null);

    if (useCreateServlet) {
        assertTrue(bc.getLength() > 0);
        assertEquals(403, rc);
    } else {
        assertEquals("OK", bc.toString());
        assertEquals(200, rc);
    }
}
项目:lazycat    文件:ContextConfig.java   
private void populateSCIsForCacheEntry(JavaClassCacheEntry cacheEntry) {
    Set<ServletContainerInitializer> result = new HashSet<ServletContainerInitializer>();

    // Super class
    String superClassName = cacheEntry.getSuperclassName();
    JavaClassCacheEntry superClassCacheEntry = javaClassCache.get(superClassName);

    // Avoid an infinite loop with java.lang.Object
    if (cacheEntry.equals(superClassCacheEntry)) {
        cacheEntry.setSciSet(EMPTY_SCI_SET);
        return;
    }

    // May be null of the class is not present or could not be loaded.
    if (superClassCacheEntry != null) {
        if (superClassCacheEntry.getSciSet() == null) {
            populateSCIsForCacheEntry(superClassCacheEntry);
        }
        result.addAll(superClassCacheEntry.getSciSet());
    }
    result.addAll(getSCIsForClass(superClassName));

    // Interfaces
    for (String interfaceName : cacheEntry.getInterfaceNames()) {
        JavaClassCacheEntry interfaceEntry = javaClassCache.get(interfaceName);
        // A null could mean that the class not present in application or
        // that there is nothing of interest. Either way, nothing to do here
        // so move along
        if (interfaceEntry != null) {
            if (interfaceEntry.getSciSet() == null) {
                populateSCIsForCacheEntry(interfaceEntry);
            }
            result.addAll(interfaceEntry.getSciSet());
        }
        result.addAll(getSCIsForClass(interfaceName));
    }

    cacheEntry.setSciSet(result.isEmpty() ? EMPTY_SCI_SET : result);
}
项目:lazycat    文件:ContextConfig.java   
private Set<ServletContainerInitializer> getSCIsForClass(String className) {
    for (Map.Entry<Class<?>, Set<ServletContainerInitializer>> entry : typeInitializerMap.entrySet()) {
        Class<?> clazz = entry.getKey();
        if (!clazz.isAnnotation()) {
            if (clazz.getName().equals(className)) {
                return entry.getValue();
            }
        }
    }
    return EMPTY_SCI_SET;
}
项目:joinfaces    文件:MojarraServletContextInitializer.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new FacesInitializer();
    }
    return this.servletContainerInitializer;
}
项目:joinfaces    文件:MyfacesServletContextInitializer.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new MyFacesContainerInitializer();
    }
    return this.servletContainerInitializer;
}
项目:joinfaces    文件:MyfacesServletContextInitializer.java   
@Override
public void onStartup(ServletContext sc) throws ServletException {
    ServletContainerInitializer servletContainerInitializer = getServletContainerInitializer();
    JsfClassFactory jsfClassFactory = new JsfClassFactory(this);
    JoinFacesAnnotationProvider.setAnnotatedClasses(jsfClassFactory.getAnnotatedClassMap());
    JoinFacesAnnotationProvider.setUrls(jsfClassFactory.getURLs());
    servletContainerInitializer.onStartup(jsfClassFactory.getAllClasses(), sc);
}
项目:joinfaces    文件:OmnifacesServletContextInitializer.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new FacesViewsInitializer();
    }
    return this.servletContainerInitializer;
}
项目:joinfaces    文件:MojarraJsfClassFactoryConfiguration.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new FacesInitializer();
    }
    return this.servletContainerInitializer;
}
项目:joinfaces    文件:MyfacesJsfClassFactoryConfiguration.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new MyFacesContainerInitializer();
    }
    return this.servletContainerInitializer;
}
项目:joinfaces    文件:NullAnotherJsfClassFactoryConfiguration.java   
@Override
public ServletContainerInitializer getServletContainerInitializer() {
    if (this.servletContainerInitializer == null) {
        this.servletContainerInitializer = new MyFacesContainerInitializer();
    }
    return this.servletContainerInitializer;
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:TomcatEmbeddedServletContainerFactory.java   
private void addJasperInitializer(TomcatEmbeddedContext context) {
    try {
        ServletContainerInitializer initializer = (ServletContainerInitializer) ClassUtils
                .forName("org.apache.jasper.servlet.JasperInitializer", null)
                .newInstance();
        context.addServletContainerInitializer(initializer, null);
    }
    catch (Exception ex) {
        // Probably not Tomcat 8
    }
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:UndertowEmbeddedServletContainerFactory.java   
private void registerServletContainerInitializerToDriveServletContextInitializers(
        DeploymentInfo deployment, ServletContextInitializer... initializers) {
    ServletContextInitializer[] mergedInitializers = mergeInitializers(initializers);
    Initializer initializer = new Initializer(mergedInitializers);
    deployment.addServletContainerInitalizer(new ServletContainerInitializerInfo(
            Initializer.class,
            new ImmediateInstanceFactory<ServletContainerInitializer>(initializer),
            NO_CLASSES));
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JasperInitializer.java   
private ServletContainerInitializer newInitializer() {
    for (String className : INITIALIZER_CLASSES) {
        try {
            Class<?> initializerClass = ClassUtils.forName(className, null);
            return (ServletContainerInitializer) initializerClass.newInstance();
        }
        catch (Exception ex) {
            // Ignore
        }
    }
    return null;
}
项目:spring-boot-concourse    文件:TomcatEmbeddedServletContainerFactory.java   
private void addJasperInitializer(TomcatEmbeddedContext context) {
    try {
        ServletContainerInitializer initializer = (ServletContainerInitializer) ClassUtils
                .forName("org.apache.jasper.servlet.JasperInitializer", null)
                .newInstance();
        context.addServletContainerInitializer(initializer, null);
    }
    catch (Exception ex) {
        // Probably not Tomcat 8
    }
}
项目:spring-boot-concourse    文件:UndertowEmbeddedServletContainerFactory.java   
private void registerServletContainerInitializerToDriveServletContextInitializers(
        DeploymentInfo deployment, ServletContextInitializer... initializers) {
    ServletContextInitializer[] mergedInitializers = mergeInitializers(initializers);
    Initializer initializer = new Initializer(mergedInitializers);
    deployment.addServletContainerInitalizer(new ServletContainerInitializerInfo(
            Initializer.class,
            new ImmediateInstanceFactory<ServletContainerInitializer>(initializer),
            NO_CLASSES));
}
项目:contestparser    文件:TomcatEmbeddedServletContainerFactory.java   
private void addJasperInitializer(TomcatEmbeddedContext context) {
    try {
        ServletContainerInitializer initializer = (ServletContainerInitializer) ClassUtils
                .forName("org.apache.jasper.servlet.JasperInitializer", null)
                .newInstance();
        context.addServletContainerInitializer(initializer, null);
    }
    catch (Exception ex) {
        // Probably not Tomcat 8
    }
}
项目:contestparser    文件:UndertowEmbeddedServletContainerFactory.java   
private void registerServletContainerInitializerToDriveServletContextInitializers(
        DeploymentInfo deployment, ServletContextInitializer... initializers) {
    ServletContextInitializer[] mergedInitializers = mergeInitializers(initializers);
    Initializer initializer = new Initializer(mergedInitializers);
    deployment.addServletContainerInitalizer(new ServletContainerInitializerInfo(
            Initializer.class,
            new ImmediateInstanceFactory<ServletContainerInitializer>(initializer),
            NO_CLASSES));
}
项目:mysql_perf_analyzer    文件:App.java   
private List<ContainerInitializer> jspInitializers() {
    JettyJasperInitializer sci = new JettyJasperInitializer();
    ContainerInitializer initializer = new ContainerInitializer(
            (ServletContainerInitializer) sci, null);
    List<ContainerInitializer> initializers = new ArrayList<ContainerInitializer>();
    initializers.add(initializer);
    return initializers;
}
项目:funsteroid    文件:TomcatServer.java   
public void run() throws Exception{
    Tomcat tomcat = new Tomcat();
    tomcat.setPort(port);

    final FunsteroidModule funsteroidModule=new FunsteroidModule()
            .withFilter(filterConfiguration)
            .withFilter(filter)
            .withRoutes(route)
            .withRoutes(routeProvider)
            .withMacros(macroRegister)
            .withMacros(macroRegisterInstance);


    Context webapp = tomcat.addWebapp("/", getWebAppPath());

    createGuiceFilter(webapp);

    webapp.addServletContainerInitializer(new ServletContainerInitializer() {

        @Override
        public void onStartup(Set<Class<?>> c, ServletContext ctx) throws ServletException {
            ctx.addListener(new GuiceConfigListener(funsteroidModule));
        }
    }, null);

    tomcat.start();
    tomcat.getServer().await();
}
项目:osgi.ee    文件:DispatchingServlet.java   
/**
 * Call the initializers accessible from the specific class loader. This may result in additional changes to
 * the servlet context because the initializers may want to add event listeners or maybe even servlets to
 * the context.
 *
 * @param context The servlet context to initialize
 * @param loader The class loader
 */
private static void callInitializers(ServletContext context, ClassLoader loader) {
    ServiceLoader<ServletContainerInitializer> services =
            ServiceLoader.load(ServletContainerInitializer.class, loader);
    services.forEach((l) -> {
        try {
            l.onStartup(null, context);
        } catch (Exception exc) {
            exc.printStackTrace();
        }
    });
}
项目:module.jersey-container-undertow    文件:UndertowContainer.java   
private List<ServletContainerInitializerInfo> getServletContainerInitializers() {
    List<ServletContainerInitializerInfo> infos = new ArrayList<>();
    for (ServletContainerInitializer initializer : ServiceLoader.load(ServletContainerInitializer.class)) {
        HandlesTypes types = initializer.getClass().getAnnotation(HandlesTypes.class);
        infos.add(new ServletContainerInitializerInfo(
            initializer.getClass(),
            new ImmediateInstanceFactory<>(initializer),
            types == null ? Collections.emptySet() : new LinkedHashSet<>(Arrays.asList(types.value()))));
    }
    return infos;
}
项目:class-guard    文件:ContextConfig.java   
private Set<ServletContainerInitializer> getSCIsForClass(String className) {
    for (Map.Entry<Class<?>, Set<ServletContainerInitializer>> entry :
            typeInitializerMap.entrySet()) {
        Class<?> clazz = entry.getKey();
        if (!clazz.isAnnotation()) {
            if (clazz.getName().equals(className)) {
                return entry.getValue();
            }
        }
    }
    return Collections.emptySet();
}
项目:class-guard    文件:TestWebappServiceLoader.java   
@Test
public void testWebapp() throws Exception {
    Tomcat tomcat = getTomcatInstance();
    File appDir = new File("test/webapp-3.0-fragments-empty-absolute-ordering");
    StandardContext ctxt = (StandardContext) tomcat.addContext(null, "/test", appDir.getAbsolutePath());
    ctxt.addLifecycleListener(new ContextConfig());
    tomcat.start();

    WebappServiceLoader<ServletContainerInitializer> loader =
            new WebappServiceLoader<ServletContainerInitializer>(ctxt.getServletContext(), null);
    @SuppressWarnings("unused")
    Collection<ServletContainerInitializer> initializers = loader.load(ServletContainerInitializer.class);
}
项目:class-guard    文件:TestStandardContext.java   
@Test
public void testBug50015() throws Exception {
    // Test that configuring servlet security constraints programmatically
    // does work.

    // Set up a container
    Tomcat tomcat = getTomcatInstance();

    // Must have a real docBase - just use temp
    File docBase = new File(System.getProperty("java.io.tmpdir"));
    Context ctx = tomcat.addContext("", docBase.getAbsolutePath());

    // Setup realm
    MapRealm realm = new MapRealm();
    realm.addUser("tomcat", "tomcat");
    realm.addUserRole("tomcat", "tomcat");
    ctx.setRealm(realm);

    // Configure app for BASIC auth
    LoginConfig lc = new LoginConfig();
    lc.setAuthMethod("BASIC");
    ctx.setLoginConfig(lc);
    ctx.getPipeline().addValve(new BasicAuthenticator());

    // Add ServletContainerInitializer
    ServletContainerInitializer sci = new Bug50015SCI();
    ctx.addServletContainerInitializer(sci, null);

    // Start the context
    tomcat.start();

    // Request the first servlet
    ByteChunk bc = new ByteChunk();
    int rc = getUrl("http://localhost:" + getPort() + "/bug50015",
            bc, null);

    // Check for a 401
    assertNotSame("OK", bc.toString());
    assertEquals(401, rc);
}
项目:class-guard    文件:TestStandardWrapper.java   
private void doTestSecurityAnnotationsAddServlet(boolean useCreateServlet)
        throws Exception {

    // Setup Tomcat instance
    Tomcat tomcat = getTomcatInstance();

    // Must have a real docBase - just use temp
    Context ctx =
        tomcat.addContext("", System.getProperty("java.io.tmpdir"));

    Servlet s = new DenyAllServlet();
    ServletContainerInitializer sci = new SCI(s, useCreateServlet);
    ctx.addServletContainerInitializer(sci, null);

    tomcat.start();

    ByteChunk bc = new ByteChunk();
    int rc;
    rc = getUrl("http://localhost:" + getPort() + "/", bc, null, null);

    if (useCreateServlet) {
        assertTrue(bc.getLength() > 0);
        assertEquals(403, rc);
    } else {
        assertEquals("OK", bc.toString());
        assertEquals(200, rc);
    }
}
项目:apache-tomcat-7.0.57    文件:ContextConfig.java   
private Set<ServletContainerInitializer> getSCIsForClass(String className) {
    for (Map.Entry<Class<?>, Set<ServletContainerInitializer>> entry :
            typeInitializerMap.entrySet()) {
        Class<?> clazz = entry.getKey();
        if (!clazz.isAnnotation()) {
            if (clazz.getName().equals(className)) {
                return entry.getValue();
            }
        }
    }
    return EMPTY_SCI_SET;
}
项目:apache-tomcat-7.0.57    文件:TestWebappServiceLoader.java   
@Test
public void testWebapp() throws Exception {
    Tomcat tomcat = getTomcatInstance();
    File appDir = new File("test/webapp-3.0-fragments-empty-absolute-ordering");
    StandardContext ctxt = (StandardContext) tomcat.addContext(null, "/test", appDir.getAbsolutePath());
    ctxt.addLifecycleListener(new ContextConfig());
    tomcat.start();

    WebappServiceLoader<ServletContainerInitializer> loader =
            new WebappServiceLoader<ServletContainerInitializer>(ctxt.getServletContext(), null);
    @SuppressWarnings("unused")
    Collection<ServletContainerInitializer> initializers = loader.load(ServletContainerInitializer.class);
}
项目:apache-tomcat-7.0.57    文件:TestStandardContext.java   
@Test
public void testBug50015() throws Exception {
    // Test that configuring servlet security constraints programmatically
    // does work.

    // Set up a container
    Tomcat tomcat = getTomcatInstance();

    // Must have a real docBase - just use temp
    File docBase = new File(System.getProperty("java.io.tmpdir"));
    Context ctx = tomcat.addContext("", docBase.getAbsolutePath());

    // Setup realm
    MapRealm realm = new MapRealm();
    realm.addUser("tomcat", "tomcat");
    realm.addUserRole("tomcat", "tomcat");
    ctx.setRealm(realm);

    // Configure app for BASIC auth
    LoginConfig lc = new LoginConfig();
    lc.setAuthMethod("BASIC");
    ctx.setLoginConfig(lc);
    ctx.getPipeline().addValve(new BasicAuthenticator());

    // Add ServletContainerInitializer
    ServletContainerInitializer sci = new Bug50015SCI();
    ctx.addServletContainerInitializer(sci, null);

    // Start the context
    tomcat.start();

    // Request the first servlet
    ByteChunk bc = new ByteChunk();
    int rc = getUrl("http://localhost:" + getPort() + "/bug50015",
            bc, null);

    // Check for a 401
    assertNotSame("OK", bc.toString());
    assertEquals(401, rc);
}
项目:apache-tomcat-7.0.57    文件:TestStandardWrapper.java   
private void doTestSecurityAnnotationsAddServlet(boolean useCreateServlet)
        throws Exception {

    // Setup Tomcat instance
    Tomcat tomcat = getTomcatInstance();

    // Must have a real docBase - just use temp
    Context ctx =
        tomcat.addContext("", System.getProperty("java.io.tmpdir"));

    Servlet s = new DenyAllServlet();
    ServletContainerInitializer sci = new SCI(s, useCreateServlet);
    ctx.addServletContainerInitializer(sci, null);

    tomcat.start();

    ByteChunk bc = new ByteChunk();
    int rc;
    rc = getUrl("http://localhost:" + getPort() + "/", bc, null, null);

    if (useCreateServlet) {
        assertTrue(bc.getLength() > 0);
        assertEquals(403, rc);
    } else {
        assertEquals("OK", bc.toString());
        assertEquals(200, rc);
    }
}
项目:apache-tomcat-7.0.57    文件:TestWebappServiceLoader.java   
@Test
public void testWebapp() throws Exception {
    Tomcat tomcat = getTomcatInstance();
    File appDir = new File("test/webapp-3.0-fragments-empty-absolute-ordering");
    StandardContext ctxt = (StandardContext) tomcat.addContext(null, "/test", appDir.getAbsolutePath());
    ctxt.addLifecycleListener(new ContextConfig());
    tomcat.start();

    WebappServiceLoader<ServletContainerInitializer> loader =
            new WebappServiceLoader<ServletContainerInitializer>(ctxt.getServletContext(), null);
    @SuppressWarnings("unused")
    Collection<ServletContainerInitializer> initializers = loader.load(ServletContainerInitializer.class);
}