org.springframework.web.context.support
Class GenericWebApplicationContext
java.lang.Object
org.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.GenericApplicationContext
org.springframework.web.context.support.GenericWebApplicationContext
- All Implemented Interfaces:
- BeanFactory, DisposableBean, HierarchicalBeanFactory, ListableBeanFactory, BeanDefinitionRegistry, ApplicationContext, ApplicationEventPublisher, ConfigurableApplicationContext, Lifecycle, MessageSource, AliasRegistry, ResourceLoader, ResourcePatternResolver, ThemeSource, WebApplicationContext
public class GenericWebApplicationContext
- extends GenericApplicationContext
- implements WebApplicationContext, ThemeSource
Subclass of GenericApplicationContext
, suitable for web environments.
Implements the WebApplicationContext
interface, but not
ConfigurableWebApplicationContext
,
as it is not intended for declarative setup in web.xml
. Instead,
it is designed for programmatic setup, for example for building nested contexts.
If you intend to implement a WebApplicationContext that reads bean definitions
from configuration files, consider deriving from AbstractRefreshableWebApplicationContext,
reading the bean definitions in an implementation of the loadBeanDefinitions
method.
Interprets resource paths as servlet context resources, i.e. as paths beneath
the web application root. Absolute paths, e.g. for files outside the web app root,
can be accessed via "file:" URLs, as implemented by AbstractApplicationContext.
In addition to the special beans detected by
AbstractApplicationContext
,
this class detects a ThemeSource bean in the context, with the name "themeSource".
- Since:
- 1.2
- Author:
- Juergen Hoeller
Methods inherited from class org.springframework.context.support.GenericApplicationContext |
closeBeanFactory, getBeanDefinition, getBeanFactory, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBeanDefinition, removeAlias, removeBeanDefinition, setParent, setResourceLoader |
Methods inherited from class org.springframework.context.support.AbstractApplicationContext |
addApplicationListener, addBeanFactoryPostProcessor, addListener, cancelRefresh, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getDisplayName, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, getType, initApplicationEventMulticaster, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, prepareRefresh, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, setId, start, stop, toString |
GenericWebApplicationContext
public GenericWebApplicationContext()
- Create a new GenericWebApplicationContext.
- See Also:
setServletContext(javax.servlet.ServletContext)
,
GenericApplicationContext.registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition)
,
AbstractApplicationContext.refresh()
GenericWebApplicationContext
public GenericWebApplicationContext(DefaultListableBeanFactory beanFactory)
- Create a new GenericWebApplicationContext with the given DefaultListableBeanFactory.
- Parameters:
beanFactory
- the DefaultListableBeanFactory instance to use for this context- See Also:
setServletContext(javax.servlet.ServletContext)
,
GenericApplicationContext.registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition)
,
AbstractApplicationContext.refresh()
setServletContext
public void setServletContext(ServletContext servletContext)
- Set the ServletContext that this WebApplicationContext runs in.
getServletContext
public ServletContext getServletContext()
- Description copied from interface:
WebApplicationContext
- Return the standard Servlet API ServletContext for this application.
- Specified by:
getServletContext
in interface WebApplicationContext
postProcessBeanFactory
protected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
- Register ServletContextAwareProcessor.
- Overrides:
postProcessBeanFactory
in class AbstractApplicationContext
- Parameters:
beanFactory
- the bean factory used by the application context- See Also:
ServletContextAwareProcessor
getResourceByPath
protected Resource getResourceByPath(String path)
- This implementation supports file paths beneath the root of the ServletContext.
- Overrides:
getResourceByPath
in class DefaultResourceLoader
- Parameters:
path
- the path to the resource
- Returns:
- the corresponding Resource handle
- See Also:
ServletContextResource
getResourcePatternResolver
protected ResourcePatternResolver getResourcePatternResolver()
- This implementation supports pattern matching in unexpanded WARs too.
- Overrides:
getResourcePatternResolver
in class AbstractApplicationContext
- Returns:
- the ResourcePatternResolver for this context
- See Also:
ServletContextResourcePatternResolver
onRefresh
protected void onRefresh()
- Initialize the theme capability.
- Overrides:
onRefresh
in class AbstractApplicationContext
- See Also:
AbstractApplicationContext.refresh()
getTheme
public Theme getTheme(String themeName)
- Description copied from interface:
ThemeSource
- Return the Theme instance for the given theme name.
The returned Theme will resolve theme-specific messages, codes,
file paths, etc (e.g. CSS and image files in a web environment).
- Specified by:
getTheme
in interface ThemeSource
- Parameters:
themeName
- the name of the theme
- Returns:
- the corresponding Theme, or
null
if none defined.
Note that, by convention, a ThemeSource should at least be able to
return a default Theme for the default theme name "theme" but may also
return default Themes for other theme names. - See Also:
AbstractThemeResolver.ORIGINAL_DEFAULT_THEME_NAME
Copyright © 2002-2008 The Spring Framework.