public class GroovyMarkupView extends AbstractTemplateView
AbstractTemplateView
subclass based on Groovy XML/XHTML markup templates.
Spring's Groovy Markup Template support requires Groovy 2.3.1 and higher.
GroovyMarkupViewResolver
,
GroovyMarkupConfigurer
,
Groovy Markup Template engine documentationModifier and Type | Field and Description |
---|---|
private MarkupTemplateEngine |
engine |
SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE
DEFAULT_CONTENT_TYPE
logger
PATH_VARIABLES, RESPONSE_STATUS_ATTRIBUTE, SELECTED_CONTENT_TYPE
Constructor and Description |
---|
GroovyMarkupView() |
Modifier and Type | Method and Description |
---|---|
protected MarkupTemplateEngine |
autodetectMarkupTemplateEngine()
Autodetect a MarkupTemplateEngine via the ApplicationContext.
|
boolean |
checkResource(java.util.Locale locale)
Check whether the underlying resource that the configured URL points to
actually exists.
|
protected Template |
getTemplate(java.lang.String viewUrl)
Return a template compiled by the configured Groovy Markup template engine
for the given view URL.
|
protected void |
initApplicationContext(ApplicationContext context)
Invoked at startup.
|
protected void |
renderMergedTemplateModel(java.util.Map<java.lang.String,java.lang.Object> model,
HttpServletRequest request,
HttpServletResponse response)
Subclasses must implement this method to actually render the view.
|
void |
setTemplateEngine(MarkupTemplateEngine engine)
Set the MarkupTemplateEngine to use in this view.
|
applyContentType, renderMergedOutputModel, setAllowRequestOverride, setAllowSessionOverride, setExposeRequestAttributes, setExposeSessionAttributes, setExposeSpringMacroHelpers
afterPropertiesSet, getUrl, isUrlRequired, setUrl, toString
addStaticAttribute, createMergedOutputModel, createRequestContext, createTemporaryOutputStream, exposeModelAsRequestAttributes, generatesDownloadContent, getAttributesMap, getBeanName, getContentType, getRequestContextAttribute, getRequestToExpose, getStaticAttributes, isExposePathVariables, prepareResponse, render, setAttributes, setAttributesCSV, setAttributesMap, setBeanName, setContentType, setExposeContextBeansAsAttributes, setExposedContextBeanNames, setExposePathVariables, setRequestContextAttribute, setResponseContentType, writeToResponse
getServletContext, getTempDir, getWebApplicationContext, initServletContext, isContextRequired, setServletContext
getApplicationContext, getMessageSourceAccessor, initApplicationContext, requiredContextClass, setApplicationContext
public void setTemplateEngine(MarkupTemplateEngine engine)
If not set, the engine is auto-detected by looking up a single
GroovyMarkupConfig
bean in the web application context and using
it to obtain the configured MarkupTemplateEngine
instance.
GroovyMarkupConfig
protected void initApplicationContext(ApplicationContext context)
templateEngine
has
been manually set, this method looks up a GroovyMarkupConfig
bean
by type and uses it to obtain the Groovy Markup template engine.initApplicationContext
in class WebApplicationObjectSupport
context
- the containing ApplicationContextGroovyMarkupConfig
,
#setTemplateEngine(groovy.text.markup.MarkupTemplateEngine)
protected MarkupTemplateEngine autodetectMarkupTemplateEngine() throws BeansException
BeansException
public boolean checkResource(java.util.Locale locale) throws java.lang.Exception
AbstractUrlBasedView
checkResource
in class AbstractUrlBasedView
locale
- the desired Locale that we're looking fortrue
if the resource exists (or is assumed to exist);
false
if we know that it does not existjava.lang.Exception
- if the resource exists but is invalid (e.g. could not be parsed)protected void renderMergedTemplateModel(java.util.Map<java.lang.String,java.lang.Object> model, HttpServletRequest request, HttpServletResponse response) throws java.lang.Exception
AbstractTemplateView
renderMergedTemplateModel
in class AbstractTemplateView
model
- combined output Map, with request attributes and
session attributes merged into it if requiredrequest
- current HTTP requestresponse
- current HTTP responsejava.lang.Exception
- if rendering failedprotected Template getTemplate(java.lang.String viewUrl) throws java.lang.Exception
java.lang.Exception