public abstract class AbstractRefreshablePortletApplicationContext extends AbstractRefreshableConfigApplicationContext implements WebApplicationContext, ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
インターフェースを実装する AbstractRefreshableApplicationContext
サブクラス。ポートレットアプリケーションの起動時に ConfigurablePortletApplicationContext インターフェースを通じて設定される "configLocations" プロパティを提供します。 このクラスは AbstractRefreshableApplicationContext と同じくらい簡単にサブクラス化できます。実装する必要があるのは AbstractRefreshableApplicationContext.loadBeanDefinitions(org.springframework.beans.factory.support.DefaultListableBeanFactory)
メソッドだけです。詳細については、スーパークラスの javadoc を参照してください。実装は、getConfigLocations()
メソッドによって返された場所によって指定されたファイルから Bean 定義をロードすることになっていることに注意してください。
リソースパスをサーブレットコンテキストリソース、つまり Web アプリケーションルートのパスとして解釈します。絶対パス、たとえば Web アプリのルート外のファイルの場合は、DefaultResourceLoader
によって実装される "file:" URL からアクセスできます。
これは、異なる Bean 定義形式用にサブクラス化されるポートレットコンテキストです。このようなコンテキスト実装は、デフォルトの XmlPortletApplicationContext
を置き換えて、FrameworkPortlet の "contextClass" init-param として指定できます。すると、"contextConfigLocation" init-param が自動的に受信されます。
ポートレットベースのコンテキスト実装は、通常、ConfigurablePortletApplicationContext
インターフェースを通じて受信した構成に基づいて、自身を構成することになっていることに注意してください。対照的に、スタンドアロンアプリケーションコンテキストでは、カスタムスタートアップコード (GenericApplicationContext
など) での構成が許可される場合があります。
DefaultResourceLoader.ClassPathContextResource
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
APPLICATION_CONTEXT_ID_PREFIX, PORTLET_CONFIG_BEAN_NAME, PORTLET_CONTEXT_BEAN_NAME
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
CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME
FACTORY_BEAN_PREFIX
CLASSPATH_ALL_URL_PREFIX
CLASSPATH_URL_PREFIX
コンストラクターと説明 |
---|
AbstractRefreshablePortletApplicationContext() |
修飾子と型 | メソッドと説明 |
---|---|
protected ConfigurableEnvironment | createEnvironment() 新しい StandardPortletEnvironment を作成して返します。 |
protected void | customizeBeanFactory(DefaultListableBeanFactory beanFactory) このコンテキストで使用される内部 Bean ファクトリをカスタマイズします。 |
StringSE | getApplicationName() このコンテキストが属するデプロイされたアプリケーションの名前を返します。 |
StringSE[] | getConfigLocations() このコンテキストの構築に使用する XML Bean 定義ファイルを参照して、リソースの場所の配列を返します。 |
StringSE | getNamespace() この Web アプリケーションコンテキストのネームスペースがあれば、それを返します。 |
PortletConfig | getPortletConfig() このポートレットアプリケーションコンテキストの PortletConfig を返します (存在する場合)。 |
PortletContext | getPortletContext() このアプリケーションの標準ポートレット API PortletContext を返します。 |
protected Resource | getResourceByPath(StringSE path) この実装は、PortletContext のルートのファイルパスをサポートします。 |
protected ResourcePatternResolver | getResourcePatternResolver() この実装は、拡張されていない WAR のパターンマッチングもサポートします。 |
ServletContextEE | getServletContext() このアプリケーションの標準サーブレット API ServletContext を返します。 |
protected void | postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) リクエスト / セッションスコープ、 PortletContextAwareProcessor などを登録します。 |
void | setNamespace(StringSE namespace) デフォルトのコンテキスト構成の場所を構築するために使用される、このポートレットアプリケーションコンテキストの名前空間を設定します。 |
void | setParent(ApplicationContext parent) このアプリケーションコンテキストの親を設定します。 |
void | setPortletConfig(PortletConfig portletConfig) このポートレットアプリケーションコンテキストの PortletConfig を設定します。 |
void | setPortletContext(PortletContext portletContext) このポートレットアプリケーションコンテキストの PortletContext を設定します。 |
afterPropertiesSet, getDefaultConfigLocations, resolvePath, setBeanName, setConfigLocation, setConfigLocations, setId
assertBeanFactoryActive, cancelRefresh, closeBeanFactory, createBeanFactory, getBeanFactory, hasBeanFactory, loadBeanDefinitions, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferences
addApplicationListener, addBeanFactoryPostProcessor, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResources, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, resetCommonCaches, setDisplayName, setEnvironment, start, stop, toString
addProtocolResolver, getClassLoader, getProtocolResolvers, getResource, setClassLoader
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
setConfigLocation, setConfigLocations
addApplicationListener, addBeanFactoryPostProcessor, addProtocolResolver, close, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, setEnvironment, setId
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate
containsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation
containsLocalBean, getParentBeanFactory
containsBean, getAliases, getBean, getBean, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatch, isTypeMatch
getMessage, getMessage, getMessage
publishEvent, publishEvent
getResources
getClassLoader, getResource
public AbstractRefreshablePortletApplicationContext()
public void setParent(ApplicationContext parent)
親は変更しないでください。たとえば、WebApplicationContext セットアップの場合など、このクラスのオブジェクトを作成するときに使用できない場合にのみ、コンストラクターの外部で設定する必要があります。
親が非 null
であり、その環境が ConfigurableEnvironment
のインスタンスである場合、親環境はこの(子)アプリケーションコンテキスト環境とマージされます。
親が ConfigurableApplicationContext
実装である場合、親環境はこの (子) コンテキストに委譲されます。
親が WebApplicationContext
実装である場合、親サーブレットコンテキストはこの (子) コンテキストに委譲されます。
ConfigurableApplicationContext
の setParent
AbstractApplicationContext
の setParent
parent
- 親コンテキスト ConfigurableEnvironment.merge(ConfigurableEnvironment)
public ServletContextEE getServletContext()
WebApplicationContext
PortletContext に加えて、Portlet アプリケーションでも使用できます。
WebApplicationContext
の getServletContext
public void setPortletContext(PortletContext portletContext)
ConfigurablePortletApplicationContext
コンテキストの初期化は行われません。すべての構成プロパティを設定した後で、リフレッシュを呼び出す必要があります。
ConfigurablePortletApplicationContext
の setPortletContext
ConfigurableApplicationContext.refresh()
public PortletContext getPortletContext()
ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
の getPortletContext
public void setPortletConfig(PortletConfig portletConfig)
ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
の setPortletConfig
ConfigurableApplicationContext.refresh()
public PortletConfig getPortletConfig()
ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
の getPortletConfig
public void setNamespace(StringSE namespace)
ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
の setNamespace
public StringSE getNamespace()
ConfigurablePortletApplicationContext
ConfigurablePortletApplicationContext
の getNamespace
public StringSE[] getConfigLocations()
AbstractRefreshableConfigApplicationContext
デフォルトの実装は null
を返します。サブクラスはこれをオーバーライドして、Bean 定義をロードするためのリソースロケーションのセットを提供できます。
ConfigurablePortletApplicationContext
の getConfigLocations
AbstractRefreshableConfigApplicationContext
の getConfigLocations
null
AbstractApplicationContext.getResources(java.lang.String)
, AbstractApplicationContext.getResourcePatternResolver()
public StringSE getApplicationName()
ApplicationContext
ApplicationContext
の getApplicationName
AbstractApplicationContext
の getApplicationName
protected ConfigurableEnvironment createEnvironment()
StandardPortletEnvironment
を作成して返します。AbstractApplicationContext
の createEnvironment
protected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
PortletContextAwareProcessor
などを登録します。AbstractApplicationContext
の postProcessBeanFactory
beanFactory
- アプリケーションコンテキストで使用される Bean ファクトリ protected Resource getResourceByPath(StringSE path)
DefaultResourceLoader
の getResourceByPath
path
- リソースへのパス PortletContextResource
protected ResourcePatternResolver getResourcePatternResolver()
AbstractApplicationContext
の getResourcePatternResolver
PortletContextResourcePatternResolver
protected void customizeBeanFactory(DefaultListableBeanFactory beanFactory)
AbstractRefreshableApplicationContext
AbstractApplicationContext.refresh()
の試行ごとに呼び出されます。 デフォルトの実装は、指定されている場合、このコンテキストの "allowBeanDefinitionOverriding" および "allowCircularReferences" 設定を適用します。DefaultListableBeanFactory
の設定をカスタマイズするためにサブクラスでオーバーライドできます。
AbstractRefreshableApplicationContext
の customizeBeanFactory
beanFactory
- このコンテキスト用に新しく作成された Bean ファクトリ DefaultListableBeanFactory.setAllowBeanDefinitionOverriding(boolean)
, AbstractAutowireCapableBeanFactory.setAllowCircularReferences(boolean)
, AbstractAutowireCapableBeanFactory.setAllowRawInjectionDespiteWrapping(boolean)
, DefaultListableBeanFactory.setAllowEagerClassLoading(boolean)