Class XsltViewResolver
- java.lang.Object
- org.springframework.context.support.ApplicationObjectSupport
- org.springframework.web.context.support.WebApplicationObjectSupport
- org.springframework.web.servlet.view.AbstractCachingViewResolver
- org.springframework.web.servlet.view.UrlBasedViewResolver
- org.springframework.web.servlet.view.xslt.XsltViewResolver
- All Implemented Interfaces:
Aware,ApplicationContextAware,Ordered,ServletContextAware,ViewResolver
public class XsltViewResolver extends UrlBasedViewResolver
ViewResolverimplementation that resolves instances ofXsltViewby translating the supplied view name into the URL of the XSLT stylesheet.- Since:
- 2.0
- Author:
- Rob Harrop, Juergen Hoeller
Field Summary
Fields inherited from class org.springframework.web.servlet.view.UrlBasedViewResolver
FORWARD_URL_PREFIX, REDIRECT_URL_PREFIX
Fields inherited from class org.springframework.web.servlet.view.AbstractCachingViewResolver
DEFAULT_CACHE_LIMIT
Fields inherited from class org.springframework.context.support.ApplicationObjectSupport
logger
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor Summary
Constructors Constructor Description XsltViewResolver()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected AbstractUrlBasedViewbuildView(String viewName)Creates a new View instance of the specified view class and configures it.protected Class<?>requiredViewClass()Return the required type of view for this resolver.voidsetCacheTemplates(boolean cacheTemplates)Turn on/off the caching of the XSLT templates.voidsetErrorListener(ErrorListener errorListener)Set an implementation of theErrorListenerinterface for custom handling of transformation errors and warnings.voidsetIndent(boolean indent)Set whether the XSLT transformer may add additional whitespace when outputting the result tree.voidsetOutputProperties(Properties outputProperties)Set arbitrary transformer output properties to be applied to the stylesheet.voidsetSourceKey(String sourceKey)Set the name of the model attribute that represents the XSLT Source.voidsetUriResolver(URIResolver uriResolver)Set the URIResolver used in the transform.Methods inherited from class org.springframework.web.servlet.view.UrlBasedViewResolver
canHandle, createView, getAttributesMap, getCacheKey, getContentType, getExposeContextBeansAsAttributes, getExposedContextBeanNames, getExposePathVariables, getOrder, getPrefix, getRedirectHosts, getRequestContextAttribute, getSuffix, getViewClass, getViewNames, initApplicationContext, isRedirectContextRelative, isRedirectHttp10Compatible, loadView, setAttributes, setAttributesMap, setContentType, setExposeContextBeansAsAttributes, setExposedContextBeanNames, setExposePathVariables, setOrder, setPrefix, setRedirectContextRelative, setRedirectHosts, setRedirectHttp10Compatible, setRequestContextAttribute, setSuffix, setViewClass, setViewNames
Methods inherited from class org.springframework.web.servlet.view.AbstractCachingViewResolver
clearCache, getCacheLimit, isCache, isCacheUnresolved, removeFromCache, resolveViewName, setCache, setCacheLimit, setCacheUnresolved
Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
Methods inherited from class org.springframework.context.support.ApplicationObjectSupport
getApplicationContext, getMessageSourceAccessor, requiredContextClass, setApplicationContext
Constructor Detail
XsltViewResolver
public XsltViewResolver()
Method Detail
requiredViewClass
protected Class<?> requiredViewClass()
Description copied from class:UrlBasedViewResolverReturn the required type of view for this resolver. This implementation returns AbstractUrlBasedView.- Overrides:
requiredViewClassin classUrlBasedViewResolver- See Also:
AbstractUrlBasedView
setSourceKey
public void setSourceKey(String sourceKey)
setUriResolver
public void setUriResolver(URIResolver uriResolver)
Set the URIResolver used in the transform.The URIResolver handles calls to the XSLT
document()function.
setErrorListener
public void setErrorListener(ErrorListener errorListener)
Set an implementation of theErrorListenerinterface for custom handling of transformation errors and warnings.If not set, a default
SimpleTransformErrorListeneris used that simply logs warnings using the logger instance of the view class, and rethrows errors to discontinue the XML transformation.- See Also:
SimpleTransformErrorListener
setIndent
public void setIndent(boolean indent)
Set whether the XSLT transformer may add additional whitespace when outputting the result tree.Default is
true(on); set this tofalse(off) to not specify an "indent" key, leaving the choice up to the stylesheet.- See Also:
OutputKeys.INDENT
setOutputProperties
public void setOutputProperties(Properties outputProperties)
Set arbitrary transformer output properties to be applied to the stylesheet.Any values specified here will override defaults that this view sets programmatically.
setCacheTemplates
public void setCacheTemplates(boolean cacheTemplates)
Turn on/off the caching of the XSLT templates.The default value is "true". Only set this to "false" in development, where caching does not seriously impact performance.
buildView
protected AbstractUrlBasedView buildView(String viewName) throws Exception
Description copied from class:UrlBasedViewResolverCreates a new View instance of the specified view class and configures it. Does not perform any lookup for pre-defined View instances.Spring lifecycle methods as defined by the bean container do not have to be called here; those will be applied by the
loadViewmethod after this method returns.Subclasses will typically call
super.buildView(viewName)first, before setting further properties themselves.loadViewwill then apply Spring lifecycle methods at the end of this process.- Overrides:
buildViewin classUrlBasedViewResolver- Parameters:
viewName- the name of the view to build- Returns:
- the View instance
- Throws:
Exception- if the view couldn't be resolved- See Also:
UrlBasedViewResolver.loadView(String, java.util.Locale)