当前位置: 首页>>代码示例>>Java>>正文


Java Context.setCrossContext方法代码示例

本文整理汇总了Java中org.apache.catalina.Context.setCrossContext方法的典型用法代码示例。如果您正苦于以下问题:Java Context.setCrossContext方法的具体用法?Java Context.setCrossContext怎么用?Java Context.setCrossContext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.catalina.Context的用法示例。


在下文中一共展示了Context.setCrossContext方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testBug57190

import org.apache.catalina.Context; //导入方法依赖的package包/类
@Test
public void testBug57190() throws Exception {
    Tomcat tomcat = getTomcatInstance();

    Context foo1 = new StandardContext();
    foo1.setName("/foo##1");
    foo1.setPath("/foo");
    foo1.setWebappVersion("1");
    foo1.setDocBase(System.getProperty("java.io.tmpdir"));
    foo1.addLifecycleListener(new FixContextListener());
    foo1.addLifecycleListener(new SetIdListener("foo1"));
    tomcat.getHost().addChild(foo1);

    Context foo2 = new StandardContext();
    foo2.setName("/foo##2");
    foo2.setPath("/foo");
    foo2.setWebappVersion("2");
    foo2.setDocBase(System.getProperty("java.io.tmpdir"));
    foo2.addLifecycleListener(new FixContextListener());
    foo2.addLifecycleListener(new SetIdListener("foo2"));
    tomcat.getHost().addChild(foo2);

    // No file system docBase required
    Context bar = tomcat.addContext("/bar", null);
    bar.addLifecycleListener(new SetIdListener("bar"));

    // No file system docBase required
    Context ctx = tomcat.addContext("", null);
    ctx.addLifecycleListener(new SetIdListener("ROOT"));
    ctx.setCrossContext(true);

    Tomcat.addServlet(ctx, "Bug57190Servlet", new Bug57190Servlet());
    ctx.addServletMapping("/", "Bug57190Servlet");

    tomcat.start();

    ByteChunk res = getUrl("http://localhost:" + getPort() + "/");
    String body = res.toString();

    Assert.assertTrue(body, body.contains("01-bar"));
    Assert.assertTrue(body, body.contains("02-foo2"));
    Assert.assertTrue(body, body.contains("03-foo1"));
    Assert.assertTrue(body, body.contains("04-foo2"));
    Assert.assertTrue(body, body.contains("05-foo2"));
    Assert.assertTrue(body, body.contains("06-ROOT"));
    Assert.assertTrue(body, body.contains("07-ROOT"));
    Assert.assertTrue(body, body.contains("08-foo2"));
    Assert.assertTrue(body, body.contains("09-ROOT"));
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:50,代码来源:TestApplicationContext.java

示例2: importDefaultContext

import org.apache.catalina.Context; //导入方法依赖的package包/类
/**
 * Import the configuration from the DefaultContext into
 * current Context.
 *
 * @param context current web application context
 */
public void importDefaultContext(Context context) {

    if (context instanceof StandardContext) {
        ((StandardContext)context).setUseNaming(isUseNaming());
        ((StandardContext)context).setSwallowOutput(getSwallowOutput());
        if (!contexts.containsKey(context)) {
            ((StandardContext) context).addLifecycleListener(this);
        }
    }

    context.setCookies(getCookies());
    context.setCrossContext(getCrossContext());
    context.setReloadable(getReloadable());

    String [] listeners = findApplicationListeners();
    for( int i = 0; i < listeners.length; i++ ) {
        context.addApplicationListener(listeners[i]);
    }
    listeners = findInstanceListeners();
    for( int i = 0; i < listeners.length; i++ ) {
        context.addInstanceListener(listeners[i]);
    }
    String [] wrapper = findWrapperListeners();
    for( int i = 0; i < wrapper.length; i++ ) {
        context.addWrapperListener(wrapper[i]);
    }
    wrapper = findWrapperLifecycles();
    for( int i = 0; i < wrapper.length; i++ ) {
        context.addWrapperLifecycle(wrapper[i]);
    }
    String [] parameters = findParameters();
    for( int i = 0; i < parameters.length; i++ ) {
        context.addParameter(parameters[i],findParameter(parameters[i]));
    }
    ApplicationParameter [] appParam = findApplicationParameters();
    for( int i = 0; i < appParam.length; i++ ) {
        context.addApplicationParameter(appParam[i]);
    }

    if (!(context instanceof StandardContext)) {
        ContextEjb [] contextEjb = findEjbs();
        for( int i = 0; i < contextEjb.length; i++ ) {
            context.addEjb(contextEjb[i]);
        }
        ContextEnvironment [] contextEnv = findEnvironments();
        for( int i = 0; i < contextEnv.length; i++ ) {
            context.addEnvironment(contextEnv[i]);
        }
        /*
        if (context instanceof StandardContext) {
            ResourceParams [] resourceParams = findResourceParams();
            for( int i = 0; i < resourceParams.length; i++ ) {
                ((StandardContext)context).addResourceParams
                    (resourceParams[i]);
            }
        }
        */
        ContextResource [] resources = findResources();
        for( int i = 0; i < resources.length; i++ ) {
            context.addResource(resources[i]);
        }
        String [] envRefs = findResourceEnvRefs();
        for( int i = 0; i < envRefs.length; i++ ) {
            context.addResourceEnvRef
                (envRefs[i],findResourceEnvRef(envRefs[i]));
        }
    }

}
 
开发者ID:c-rainstorm,项目名称:jerrydog,代码行数:76,代码来源:StandardDefaultContext.java


注:本文中的org.apache.catalina.Context.setCrossContext方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。