|
|||||||||
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.ConfigurableApplicationContext
close
in class org.springframework.context.support.AbstractApplicationContext
public void refresh() throws org.springframework.beans.BeansException, IllegalStateException
refresh
in interface org.springframework.context.ConfigurableApplicationContext
refresh
in class org.springframework.context.support.AbstractApplicationContext
org.springframework.beans.BeansException
IllegalStateException
protected org.springframework.beans.factory.support.DefaultListableBeanFactory createBeanFactory()
createBeanFactory
in class org.springframework.context.support.AbstractRefreshableApplicationContext
protected void prepareBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
prepareBeanFactory
in class org.springframework.context.support.AbstractApplicationContext
public void onDirectoryChange(File file)
onDirectoryChange
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onDirectoryCreate(File file)
onDirectoryCreate
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onDirectoryDelete(File file)
onDirectoryDelete
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onFileChange(File file)
onFileChange
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onFileCreate(File file)
onFileCreate
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onFileDelete(File file)
onFileDelete
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onStart(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
onStart
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public void onStop(org.apache.commons.jci.monitor.FilesystemAlterationObserver filesystemAlterationObserver)
onStop
in interface org.apache.commons.jci.monitor.FilesystemAlterationListener
public com.opensymphony.xwork2.util.classloader.ReloadingClassLoader getReloadingClassLoader()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |