Example usage for org.springframework.web.context.support GenericWebApplicationContext setDisplayName

List of usage examples for org.springframework.web.context.support GenericWebApplicationContext setDisplayName

Introduction

In this page you can find the example usage for org.springframework.web.context.support GenericWebApplicationContext setDisplayName.

Prototype

public void setDisplayName(String displayName) 

Source Link

Document

Set a friendly name for this context.

Usage

From source file:org.impalaframework.web.spring.module.BaseWebModuleLoader.java

protected GenericWebApplicationContext newApplicationContext(ModuleDefinition moduleDefinition,
        ApplicationContext parent, ClassLoader classLoader, ServletContext servletContext,
        final DefaultListableBeanFactory beanFactory) {

    final GenericWebApplicationContext context = new GenericWebApplicationContext(beanFactory);
    context.setServletContext(servletContext);
    context.setClassLoader(classLoader);

    context.setParent(parent);/* w w  w  .j ava 2s .co m*/
    final String displayName = ModuleLoaderUtils.getDisplayName(moduleDefinition, context);
    context.setDisplayName(displayName);
    return context;
}

From source file:org.red5.server.jetty.Red5WebPropertiesConfiguration.java

/** {@inheritDoc} */
public void configureWebApp() throws Exception {
    log.debug("Configuring Jetty webapp");

    // Get context
    WebAppContext context = getWebAppContext();

    // If app is already started...
    if (context.isStarted()) {
        log.debug("Cannot configure webapp after it is started");
        return;//w  ww. java2s  .co  m
    }

    // Get WEB_INF directory
    Resource webInf = context.getWebInf();
    if (webInf != null && webInf.isDirectory()) {
        // Get properties file with virtualHosts and context path
        Resource config = webInf.addPath("red5-web.properties");
        if (config.exists()) {
            log.debug("Configuring red5-web.properties");
            // Load configuration properties
            Properties props = new Properties();
            props.load(config.getInputStream());

            // Get context path and virtual hosts
            String contextPath = props.getProperty("webapp.contextPath");
            String virtualHosts = props.getProperty("webapp.virtualHosts");

            // Get hostnames
            String[] hostnames = virtualHosts.split(",");
            for (int i = 0; i < hostnames.length; i++) {
                hostnames[i] = hostnames[i].trim();
                if (hostnames[i].equals("*")) {
                    // A virtual host "null" must be used so requests for
                    // any host will be served.
                    hostnames = null;
                    break;
                }
            }

            // Set virtual hosts and context path to context
            context.setVirtualHosts(hostnames);
            context.setContextPath(contextPath);
        }
    } else if (webInf == null) {
        // No WEB-INF directory found, register as default application
        log.info("No WEB-INF directory found for " + context.getContextPath()
                + ", creating default application.");
        BeanFactoryLocator bfl = ContextSingletonBeanFactoryLocator.getInstance("red5.xml");
        BeanFactoryReference bfr = bfl.useBeanFactory("red5.common");

        // Create WebScope dynamically
        WebScope scope = new WebScope();
        IServer server = (IServer) bfr.getFactory().getBean(IServer.ID);
        scope.setServer(server);
        scope.setGlobalScope(server.getGlobal("default"));

        // Get default Red5 context from context loader that is JettyLoader in this case
        ApplicationContext appCtx = JettyLoader.getApplicationContext();
        ContextLoader loader = (ContextLoader) appCtx.getBean("context.loader");
        appCtx = loader.getContext("default.context");

        // Create context for the WebScope and initialize
        Context scopeContext = new Context();
        scopeContext.setContextPath("/");
        scopeContext.setClientRegistry((IClientRegistry) appCtx.getBean("global.clientRegistry"));
        scopeContext.setMappingStrategy((IMappingStrategy) appCtx.getBean("global.mappingStrategy"));
        scopeContext.setServiceInvoker((IServiceInvoker) appCtx.getBean("global.serviceInvoker"));
        scopeContext.setScopeResolver((IScopeResolver) appCtx.getBean("red5.scopeResolver"));

        // The context needs an ApplicationContext so resources can be
        // resolved
        GenericWebApplicationContext webCtx = new GenericWebApplicationContext();
        webCtx.setDisplayName("Automatic generated WebAppContext");
        webCtx.setParent(appCtx);
        webCtx.setServletContext(ContextHandler.getCurrentContext());
        scopeContext.setApplicationContext(webCtx);

        // Store context in scope
        scope.setContext(scopeContext);

        // Use default ApplicationAdapter as handler
        scope.setHandler(new ApplicationAdapter());

        // Make available as "/<directoryName>" and allow access from all
        // hosts
        scope.setContextPath(context.getContextPath());
        scope.setVirtualHosts("*");

        // Register WebScope in server
        scope.register();
    }
}