public class XmlViewResolver extends AbstractCachingViewResolver implements Ordered, InitializingBean, DisposableBean
ViewResolver
実装。ファイルは通常、WEB-INF ディレクトリにあります。デフォルトは "/WEB-INF/views.xml" です。 この ViewResolver
は、その定義リソースのレベルでの国際化をサポートしていません。ロケールごとに異なるビューリソースを適用する必要がある場合は、ResourceBundleViewResolver
を検討してください。
メモ: この ViewResolver
は、ViewResolver
チェーンへの柔軟な参加を可能にするために、Ordered
インターフェースを実装しています。例: 一部の特別なビューは、この ViewResolver
( "order" 値として 0 を指定)を介して定義できますが、残りのすべてのビューは UrlBasedViewResolver
によって解決できます。
ResourceLoader.getResource(java.lang.String)
, ResourceBundleViewResolver
, UrlBasedViewResolver
修飾子と型 | フィールドと説明 |
---|---|
static StringSE | DEFAULT_LOCATION 他の場所が指定されていない場合のデフォルト。 |
DEFAULT_CACHE_LIMIT
logger
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターと説明 |
---|
XmlViewResolver() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() XML ファイルからファクトリを事前初期化します。 |
void | destroy() コンテキストのシャットダウン時にビュー Bean ファクトリを閉じます。 |
protected ObjectSE | getCacheKey(StringSE viewName, LocaleSE locale) XmlViewResolver はローカライズされた解決をサポートしていないため、この実装はビュー名のみを返します。 |
int | getOrder() このオブジェクトの順序値を取得します。 |
protected BeanFactory | initFactory() XML ファイルからビュー Bean ファクトリを初期化します。 |
protected View | loadView(StringSE viewName, LocaleSE locale) サブクラスはこのメソッドを実装して、指定されたビューの View オブジェクトを構築する必要があります。 |
void | setLocation(Resource location) ビュー Bean を定義する XML ファイルの場所を設定します。 |
void | setOrder(int order) この ViewResolver Bean の順序値を指定します。 |
clearCache, createView, getCacheLimit, isCache, isCacheUnresolved, removeFromCache, resolveViewName, setCache, setCacheLimit, setCacheUnresolved
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
getApplicationContext, getMessageSourceAccessor, initApplicationContext, obtainApplicationContext, requiredContextClass, setApplicationContext
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setLocation(Resource location)
デフォルトは "/WEB-INF/views.xml" です。
location
- XML ファイルの場所。public void setOrder(int order)
デフォルト値は Ordered.LOWEST_PRECEDENCE
で、順序なしを意味します。
Ordered.getOrder()
public int getOrder()
Ordered
値が高いほど、優先度は低くなります。結果として、最も低い値を持つオブジェクトが最高の優先度を持ちます(サーブレット load-on-startup
の値に多少似ています)。
同じ順序の値は、影響を受けるオブジェクトの任意のソート位置になります。
Ordered
の getOrder
Ordered.HIGHEST_PRECEDENCE
, Ordered.LOWEST_PRECEDENCE
public void afterPropertiesSet() throws BeansException
InitializingBean
の afterPropertiesSet
BeansException
protected ObjectSE getCacheKey(StringSE viewName, LocaleSE locale)
AbstractCachingViewResolver
の getCacheKey
protected View loadView(StringSE viewName, LocaleSE locale) throws BeansException
AbstractCachingViewResolver
サブクラスは国際化をサポートすることを強制されません: 単にロケールパラメーターを無視しないサブクラス。
AbstractCachingViewResolver
の loadView
viewName
- 取得するビューの名前 locale
- ビューを取得するロケール null
(ViewResolver チェーニングを可能にするオプション)BeansException
AbstractCachingViewResolver.resolveViewName(java.lang.String, java.util.Locale)
protected BeanFactory initFactory() throws BeansException
BeansException
- 初期化エラーの場合 public void destroy() throws BeansException
DisposableBean
の destroy
BeansException