|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.AbstractRefreshableApplicationContext
org.springframework.context.support.AbstractRefreshableConfigApplicationContext
org.springframework.web.context.support.AbstractRefreshableWebApplicationContext
org.springframework.web.context.support.XmlWebApplicationContext
org.apache.struts2.spring.ClassReloadingXMLWebApplicationContext
public class ClassReloadingXMLWebApplicationContext
This class can be used instead of XmlWebApplicationContext, and it will watch jar files and directories for changes
and reload then changed classes.
To use this class:
<context-param>
<param-name>contextClass</param-name>
<param-value>org.apache.struts2.spring.ClassReloadingXMLWebApplicationContext</param-value>
</context-param>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jci-fam</artifactId>
<version>1.0</version>
<optional>true</optional>
</dependency>
| Field Summary | |
|---|---|
protected ClassReloadingBeanFactory |
beanFactory
|
protected com.opensymphony.xwork2.util.classloader.ReloadingClassLoader |
classLoader
|
protected org.apache.commons.jci.monitor.FilesystemAlterationMonitor |
fam
|
| Fields inherited from class org.springframework.web.context.support.XmlWebApplicationContext |
|---|
DEFAULT_CONFIG_LOCATION, DEFAULT_CONFIG_LOCATION_PREFIX, DEFAULT_CONFIG_LOCATION_SUFFIX |
| Fields inherited from class org.springframework.context.support.AbstractApplicationContext |
|---|
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME |
| Fields inherited from interface org.springframework.web.context.ConfigurableWebApplicationContext |
|---|
APPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAME |
| Fields inherited from interface org.springframework.web.context.WebApplicationContext |
|---|
CONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAME |
| Fields inherited from interface org.springframework.context.ConfigurableApplicationContext |
|---|
CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME |
| Fields inherited from interface org.springframework.beans.factory.BeanFactory |
|---|
FACTORY_BEAN_PREFIX |
| Fields inherited from interface org.springframework.core.io.support.ResourcePatternResolver |
|---|
CLASSPATH_ALL_URL_PREFIX |
| Fields inherited from interface org.springframework.core.io.ResourceLoader |
|---|
CLASSPATH_URL_PREFIX |
| Constructor Summary | |
|---|---|
ClassReloadingXMLWebApplicationContext()
|
|
| Method Summary | |
|---|---|
void |
close()
|
protected org.springframework.beans.factory.support.DefaultListableBeanFactory |
createBeanFactory()
|
com.opensymphony.xwork2.util.classloader.ReloadingClassLoader |
getReloadingClassLoader()
|
void |
onDirectoryChange(File file)
|
void |
onDirectoryCreate(File file)
|
void |
onDirectoryDelete(File file)
|
void |
onFileChange(File file)
|
void |
onFileCreate(File file)
|
void |
onFileDelete(File file)
|
void |
onStart(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
|
void |
onStop(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
|
protected void |
prepareBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
|
void |
refresh()
|
void |
setupReloading(String[] watchList,
String acceptClasses,
javax.servlet.ServletContext servletContext,
boolean reloadConfig)
|
| Methods inherited from class org.springframework.web.context.support.XmlWebApplicationContext |
|---|
getDefaultConfigLocations, initBeanDefinitionReader, loadBeanDefinitions, loadBeanDefinitions |
| Methods inherited from class org.springframework.web.context.support.AbstractRefreshableWebApplicationContext |
|---|
getConfigLocations, getNamespace, getResourceByPath, getResourcePatternResolver, getServletConfig, getServletContext, getTheme, onRefresh, postProcessBeanFactory, setNamespace, setServletConfig, setServletContext |
| Methods inherited from class org.springframework.context.support.AbstractRefreshableConfigApplicationContext |
|---|
afterPropertiesSet, resolvePath, setBeanName, setConfigLocation, setConfigLocations, setId |
| Methods inherited from class org.springframework.context.support.AbstractRefreshableApplicationContext |
|---|
cancelRefresh, closeBeanFactory, customizeBeanFactory, getBeanFactory, hasBeanFactory, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferences |
| Methods inherited from class org.springframework.context.support.AbstractApplicationContext |
|---|
addApplicationListener, addBeanFactoryPostProcessor, addListener, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResources, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, prepareRefresh, publishEvent, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, setParent, start, stop, toString |
| Methods inherited from class org.springframework.core.io.DefaultResourceLoader |
|---|
getClassLoader, getResource, setClassLoader |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.web.context.ConfigurableWebApplicationContext |
|---|
setConfigLocation, setConfigLocations |
| Methods inherited from interface org.springframework.context.ConfigurableApplicationContext |
|---|
addApplicationListener, addBeanFactoryPostProcessor, getBeanFactory, isActive, registerShutdownHook, setId, setParent |
| Methods inherited from interface org.springframework.context.ApplicationContext |
|---|
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate |
| Methods inherited from interface org.springframework.beans.factory.ListableBeanFactory |
|---|
containsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation |
| Methods inherited from interface org.springframework.beans.factory.HierarchicalBeanFactory |
|---|
containsLocalBean, getParentBeanFactory |
| Methods inherited from interface org.springframework.beans.factory.BeanFactory |
|---|
containsBean, getAliases, getBean, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatch |
| Methods inherited from interface org.springframework.context.MessageSource |
|---|
getMessage, getMessage, getMessage |
| Methods inherited from interface org.springframework.context.ApplicationEventPublisher |
|---|
publishEvent |
| Methods inherited from interface org.springframework.core.io.support.ResourcePatternResolver |
|---|
getResources |
| Methods inherited from interface org.springframework.core.io.ResourceLoader |
|---|
getClassLoader, getResource |
| Methods inherited from interface org.springframework.context.Lifecycle |
|---|
isRunning, start, stop |
| Field Detail |
|---|
protected com.opensymphony.xwork2.util.classloader.ReloadingClassLoader classLoader
protected org.apache.commons.jci.monitor.FilesystemAlterationMonitor fam
protected ClassReloadingBeanFactory beanFactory
| Constructor Detail |
|---|
public ClassReloadingXMLWebApplicationContext()
| Method Detail |
|---|
public void setupReloading(String[] watchList,
String acceptClasses,
javax.servlet.ServletContext servletContext,
boolean reloadConfig)
public void close()
close in interface org.springframework.context.ConfigurableApplicationContextclose in class org.springframework.context.support.AbstractApplicationContext
public void refresh()
throws org.springframework.beans.BeansException,
IllegalStateException
refresh in interface org.springframework.context.ConfigurableApplicationContextrefresh in class org.springframework.context.support.AbstractApplicationContextorg.springframework.beans.BeansException
IllegalStateExceptionprotected org.springframework.beans.factory.support.DefaultListableBeanFactory createBeanFactory()
createBeanFactory in class org.springframework.context.support.AbstractRefreshableApplicationContextprotected void prepareBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
prepareBeanFactory in class org.springframework.context.support.AbstractApplicationContextpublic void onDirectoryChange(File file)
onDirectoryChange in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onDirectoryCreate(File file)
onDirectoryCreate in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onDirectoryDelete(File file)
onDirectoryDelete in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onFileChange(File file)
onFileChange in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onFileCreate(File file)
onFileCreate in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onFileDelete(File file)
onFileDelete in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onStart(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
onStart in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic void onStop(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
onStop in interface org.apache.commons.jci.monitor.FilesystemAlterationListenerpublic com.opensymphony.xwork2.util.classloader.ReloadingClassLoader getReloadingClassLoader()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||