[[appendix.application-properties.templating]] == Templating Properties [cols="4,3,3", options="header"] |=== |Name|Description|Default Value |[[application-properties.templating.spring.freemarker.allow-request-override]]xref:#application-properties.templating.spring.freemarker.allow-request-override[`+spring.freemarker.allow-request-override+`] |+++Whether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.freemarker.allow-session-override]]xref:#application-properties.templating.spring.freemarker.allow-session-override[`+spring.freemarker.allow-session-override+`] |+++Whether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.freemarker.cache]]xref:#application-properties.templating.spring.freemarker.cache[`+spring.freemarker.cache+`] |+++Whether to enable template caching.+++ |`+false+` |[[application-properties.templating.spring.freemarker.charset]]xref:#application-properties.templating.spring.freemarker.charset[`+spring.freemarker.charset+`] |+++Template encoding.+++ |`+UTF-8+` |[[application-properties.templating.spring.freemarker.check-template-location]]xref:#application-properties.templating.spring.freemarker.check-template-location[`+spring.freemarker.check-template-location+`] |+++Whether to check that the templates location exists.+++ |`+true+` |[[application-properties.templating.spring.freemarker.content-type]]xref:#application-properties.templating.spring.freemarker.content-type[`+spring.freemarker.content-type+`] |+++Content-Type value.+++ |`+text/html+` |[[application-properties.templating.spring.freemarker.enabled]]xref:#application-properties.templating.spring.freemarker.enabled[`+spring.freemarker.enabled+`] |+++Whether to enable MVC view resolution for this technology.+++ |`+true+` |[[application-properties.templating.spring.freemarker.expose-request-attributes]]xref:#application-properties.templating.spring.freemarker.expose-request-attributes[`+spring.freemarker.expose-request-attributes+`] |+++Whether all request attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.freemarker.expose-session-attributes]]xref:#application-properties.templating.spring.freemarker.expose-session-attributes[`+spring.freemarker.expose-session-attributes+`] |+++Whether all HttpSession attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.freemarker.expose-spring-macro-helpers]]xref:#application-properties.templating.spring.freemarker.expose-spring-macro-helpers[`+spring.freemarker.expose-spring-macro-helpers+`] |+++Whether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".+++ |`+true+` |[[application-properties.templating.spring.freemarker.prefer-file-system-access]]xref:#application-properties.templating.spring.freemarker.prefer-file-system-access[`+spring.freemarker.prefer-file-system-access+`] |+++Whether to prefer file system access for template loading to enable hot detection of template changes. When a template path is detected as a directory, templates are loaded from the directory only and other matching classpath locations will not be considered.+++ |`+false+` |[[application-properties.templating.spring.freemarker.prefix]]xref:#application-properties.templating.spring.freemarker.prefix[`+spring.freemarker.prefix+`] |+++Prefix that gets prepended to view names when building a URL.+++ | |[[application-properties.templating.spring.freemarker.request-context-attribute]]xref:#application-properties.templating.spring.freemarker.request-context-attribute[`+spring.freemarker.request-context-attribute+`] |+++Name of the RequestContext attribute for all views.+++ | |[[application-properties.templating.spring.freemarker.settings]]xref:#application-properties.templating.spring.freemarker.settings[`+spring.freemarker.settings.*+`] |+++Well-known FreeMarker keys which are passed to FreeMarker's Configuration.+++ | |[[application-properties.templating.spring.freemarker.suffix]]xref:#application-properties.templating.spring.freemarker.suffix[`+spring.freemarker.suffix+`] |+++Suffix that gets appended to view names when building a URL.+++ |`+.ftlh+` |[[application-properties.templating.spring.freemarker.template-loader-path]]xref:#application-properties.templating.spring.freemarker.template-loader-path[`+spring.freemarker.template-loader-path+`] |+++Comma-separated list of template paths.+++ |`+[classpath:/templates/]+` |[[application-properties.templating.spring.freemarker.view-names]]xref:#application-properties.templating.spring.freemarker.view-names[`+spring.freemarker.view-names+`] |+++View names that can be resolved.+++ | |[[application-properties.templating.spring.groovy.template.allow-request-override]]xref:#application-properties.templating.spring.groovy.template.allow-request-override[`+spring.groovy.template.allow-request-override+`] |+++Whether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.groovy.template.allow-session-override]]xref:#application-properties.templating.spring.groovy.template.allow-session-override[`+spring.groovy.template.allow-session-override+`] |+++Whether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.groovy.template.cache]]xref:#application-properties.templating.spring.groovy.template.cache[`+spring.groovy.template.cache+`] |+++Whether to enable template caching.+++ |`+false+` |[[application-properties.templating.spring.groovy.template.charset]]xref:#application-properties.templating.spring.groovy.template.charset[`+spring.groovy.template.charset+`] |+++Template encoding.+++ |`+UTF-8+` |[[application-properties.templating.spring.groovy.template.check-template-location]]xref:#application-properties.templating.spring.groovy.template.check-template-location[`+spring.groovy.template.check-template-location+`] |+++Whether to check that the templates location exists.+++ |`+true+` |[[application-properties.templating.spring.groovy.template.configuration]]xref:#application-properties.templating.spring.groovy.template.configuration[`+spring.groovy.template.configuration.auto-escape+` + `+spring.groovy.template.configuration.auto-indent+` + `+spring.groovy.template.configuration.auto-indent-string+` + `+spring.groovy.template.configuration.auto-new-line+` + `+spring.groovy.template.configuration.base-template-class+` + `+spring.groovy.template.configuration.cache-templates+` + `+spring.groovy.template.configuration.declaration-encoding+` + `+spring.groovy.template.configuration.expand-empty-elements+` + `+spring.groovy.template.configuration.locale+` + `+spring.groovy.template.configuration.new-line-string+` + `+spring.groovy.template.configuration.resource-loader-path+` + `+spring.groovy.template.configuration.use-double-quotes+` + ] |+++See GroovyMarkupConfigurer+++ | |[[application-properties.templating.spring.groovy.template.content-type]]xref:#application-properties.templating.spring.groovy.template.content-type[`+spring.groovy.template.content-type+`] |+++Content-Type value.+++ |`+text/html+` |[[application-properties.templating.spring.groovy.template.enabled]]xref:#application-properties.templating.spring.groovy.template.enabled[`+spring.groovy.template.enabled+`] |+++Whether to enable MVC view resolution for this technology.+++ |`+true+` |[[application-properties.templating.spring.groovy.template.expose-request-attributes]]xref:#application-properties.templating.spring.groovy.template.expose-request-attributes[`+spring.groovy.template.expose-request-attributes+`] |+++Whether all request attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.groovy.template.expose-session-attributes]]xref:#application-properties.templating.spring.groovy.template.expose-session-attributes[`+spring.groovy.template.expose-session-attributes+`] |+++Whether all HttpSession attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.groovy.template.expose-spring-macro-helpers]]xref:#application-properties.templating.spring.groovy.template.expose-spring-macro-helpers[`+spring.groovy.template.expose-spring-macro-helpers+`] |+++Whether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".+++ |`+true+` |[[application-properties.templating.spring.groovy.template.prefix]]xref:#application-properties.templating.spring.groovy.template.prefix[`+spring.groovy.template.prefix+`] |+++Prefix that gets prepended to view names when building a URL.+++ | |[[application-properties.templating.spring.groovy.template.request-context-attribute]]xref:#application-properties.templating.spring.groovy.template.request-context-attribute[`+spring.groovy.template.request-context-attribute+`] |+++Name of the RequestContext attribute for all views.+++ | |[[application-properties.templating.spring.groovy.template.resource-loader-path]]xref:#application-properties.templating.spring.groovy.template.resource-loader-path[`+spring.groovy.template.resource-loader-path+`] |+++Template path.+++ |`+classpath:/templates/+` |[[application-properties.templating.spring.groovy.template.suffix]]xref:#application-properties.templating.spring.groovy.template.suffix[`+spring.groovy.template.suffix+`] |+++Suffix that gets appended to view names when building a URL.+++ |`+.tpl+` |[[application-properties.templating.spring.groovy.template.view-names]]xref:#application-properties.templating.spring.groovy.template.view-names[`+spring.groovy.template.view-names+`] |+++View names that can be resolved.+++ | |[[application-properties.templating.spring.mustache.charset]]xref:#application-properties.templating.spring.mustache.charset[`+spring.mustache.charset+`] |+++Template encoding.+++ |`+UTF-8+` |[[application-properties.templating.spring.mustache.check-template-location]]xref:#application-properties.templating.spring.mustache.check-template-location[`+spring.mustache.check-template-location+`] |+++Whether to check that the templates location exists.+++ |`+true+` |[[application-properties.templating.spring.mustache.enabled]]xref:#application-properties.templating.spring.mustache.enabled[`+spring.mustache.enabled+`] |+++Whether to enable MVC view resolution for Mustache.+++ |`+true+` |[[application-properties.templating.spring.mustache.prefix]]xref:#application-properties.templating.spring.mustache.prefix[`+spring.mustache.prefix+`] |+++Prefix to apply to template names.+++ |`+classpath:/templates/+` |[[application-properties.templating.spring.mustache.reactive.media-types]]xref:#application-properties.templating.spring.mustache.reactive.media-types[`+spring.mustache.reactive.media-types+`] |+++Media types supported by Mustache views.+++ |`+text/html;charset=UTF-8+` |[[application-properties.templating.spring.mustache.request-context-attribute]]xref:#application-properties.templating.spring.mustache.request-context-attribute[`+spring.mustache.request-context-attribute+`] |+++Name of the RequestContext attribute for all views.+++ | |[[application-properties.templating.spring.mustache.servlet.allow-request-override]]xref:#application-properties.templating.spring.mustache.servlet.allow-request-override[`+spring.mustache.servlet.allow-request-override+`] |+++Whether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.mustache.servlet.allow-session-override]]xref:#application-properties.templating.spring.mustache.servlet.allow-session-override[`+spring.mustache.servlet.allow-session-override+`] |+++Whether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name.+++ |`+false+` |[[application-properties.templating.spring.mustache.servlet.cache]]xref:#application-properties.templating.spring.mustache.servlet.cache[`+spring.mustache.servlet.cache+`] |+++Whether to enable template caching.+++ |`+false+` |[[application-properties.templating.spring.mustache.servlet.content-type]]xref:#application-properties.templating.spring.mustache.servlet.content-type[`+spring.mustache.servlet.content-type+`] |+++Content-Type value.+++ | |[[application-properties.templating.spring.mustache.servlet.expose-request-attributes]]xref:#application-properties.templating.spring.mustache.servlet.expose-request-attributes[`+spring.mustache.servlet.expose-request-attributes+`] |+++Whether all request attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.mustache.servlet.expose-session-attributes]]xref:#application-properties.templating.spring.mustache.servlet.expose-session-attributes[`+spring.mustache.servlet.expose-session-attributes+`] |+++Whether all HttpSession attributes should be added to the model prior to merging with the template.+++ |`+false+` |[[application-properties.templating.spring.mustache.servlet.expose-spring-macro-helpers]]xref:#application-properties.templating.spring.mustache.servlet.expose-spring-macro-helpers[`+spring.mustache.servlet.expose-spring-macro-helpers+`] |+++Whether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext".+++ |`+true+` |[[application-properties.templating.spring.mustache.suffix]]xref:#application-properties.templating.spring.mustache.suffix[`+spring.mustache.suffix+`] |+++Suffix to apply to template names.+++ |`+.mustache+` |[[application-properties.templating.spring.mustache.view-names]]xref:#application-properties.templating.spring.mustache.view-names[`+spring.mustache.view-names+`] |+++View names that can be resolved.+++ | |[[application-properties.templating.spring.thymeleaf.cache]]xref:#application-properties.templating.spring.thymeleaf.cache[`+spring.thymeleaf.cache+`] |+++Whether to enable template caching.+++ |`+true+` |[[application-properties.templating.spring.thymeleaf.check-template]]xref:#application-properties.templating.spring.thymeleaf.check-template[`+spring.thymeleaf.check-template+`] |+++Whether to check that the template exists before rendering it.+++ |`+true+` |[[application-properties.templating.spring.thymeleaf.check-template-location]]xref:#application-properties.templating.spring.thymeleaf.check-template-location[`+spring.thymeleaf.check-template-location+`] |+++Whether to check that the templates location exists.+++ |`+true+` |[[application-properties.templating.spring.thymeleaf.enable-spring-el-compiler]]xref:#application-properties.templating.spring.thymeleaf.enable-spring-el-compiler[`+spring.thymeleaf.enable-spring-el-compiler+`] |+++Enable the SpringEL compiler in SpringEL expressions.+++ |`+false+` |[[application-properties.templating.spring.thymeleaf.enabled]]xref:#application-properties.templating.spring.thymeleaf.enabled[`+spring.thymeleaf.enabled+`] |+++Whether to enable Thymeleaf view resolution for Web frameworks.+++ |`+true+` |[[application-properties.templating.spring.thymeleaf.encoding]]xref:#application-properties.templating.spring.thymeleaf.encoding[`+spring.thymeleaf.encoding+`] |+++Template files encoding.+++ |`+UTF-8+` |[[application-properties.templating.spring.thymeleaf.excluded-view-names]]xref:#application-properties.templating.spring.thymeleaf.excluded-view-names[`+spring.thymeleaf.excluded-view-names+`] |+++Comma-separated list of view names (patterns allowed) that should be excluded from resolution.+++ | |[[application-properties.templating.spring.thymeleaf.mode]]xref:#application-properties.templating.spring.thymeleaf.mode[`+spring.thymeleaf.mode+`] |+++Template mode to be applied to templates. See also Thymeleaf's TemplateMode enum.+++ |`+HTML+` |[[application-properties.templating.spring.thymeleaf.prefix]]xref:#application-properties.templating.spring.thymeleaf.prefix[`+spring.thymeleaf.prefix+`] |+++Prefix that gets prepended to view names when building a URL.+++ |`+classpath:/templates/+` |[[application-properties.templating.spring.thymeleaf.reactive.chunked-mode-view-names]]xref:#application-properties.templating.spring.thymeleaf.reactive.chunked-mode-view-names[`+spring.thymeleaf.reactive.chunked-mode-view-names+`] |+++Comma-separated list of view names (patterns allowed) that should be the only ones executed in CHUNKED mode when a max chunk size is set.+++ | |[[application-properties.templating.spring.thymeleaf.reactive.full-mode-view-names]]xref:#application-properties.templating.spring.thymeleaf.reactive.full-mode-view-names[`+spring.thymeleaf.reactive.full-mode-view-names+`] |+++Comma-separated list of view names (patterns allowed) that should be executed in FULL mode even if a max chunk size is set.+++ | |[[application-properties.templating.spring.thymeleaf.reactive.max-chunk-size]]xref:#application-properties.templating.spring.thymeleaf.reactive.max-chunk-size[`+spring.thymeleaf.reactive.max-chunk-size+`] |+++Maximum size of data buffers used for writing to the response. Templates will execute in CHUNKED mode by default if this is set.+++ |`+0B+` |[[application-properties.templating.spring.thymeleaf.reactive.media-types]]xref:#application-properties.templating.spring.thymeleaf.reactive.media-types[`+spring.thymeleaf.reactive.media-types+`] |+++Media types supported by the view technology.+++ |`+[text/html, application/xhtml+xml, application/xml, text/xml, application/rss+xml, application/atom+xml, application/javascript, application/ecmascript, text/javascript, text/ecmascript, application/json, text/css, text/plain, text/event-stream]+` |[[application-properties.templating.spring.thymeleaf.render-hidden-markers-before-checkboxes]]xref:#application-properties.templating.spring.thymeleaf.render-hidden-markers-before-checkboxes[`+spring.thymeleaf.render-hidden-markers-before-checkboxes+`] |+++Whether hidden form inputs acting as markers for checkboxes should be rendered before the checkbox element itself.+++ |`+false+` |[[application-properties.templating.spring.thymeleaf.servlet.content-type]]xref:#application-properties.templating.spring.thymeleaf.servlet.content-type[`+spring.thymeleaf.servlet.content-type+`] |+++Content-Type value written to HTTP responses.+++ |`+text/html+` |[[application-properties.templating.spring.thymeleaf.servlet.produce-partial-output-while-processing]]xref:#application-properties.templating.spring.thymeleaf.servlet.produce-partial-output-while-processing[`+spring.thymeleaf.servlet.produce-partial-output-while-processing+`] |+++Whether Thymeleaf should start writing partial output as soon as possible or buffer until template processing is finished.+++ |`+true+` |[[application-properties.templating.spring.thymeleaf.suffix]]xref:#application-properties.templating.spring.thymeleaf.suffix[`+spring.thymeleaf.suffix+`] |+++Suffix that gets appended to view names when building a URL.+++ |`+.html+` |[[application-properties.templating.spring.thymeleaf.template-resolver-order]]xref:#application-properties.templating.spring.thymeleaf.template-resolver-order[`+spring.thymeleaf.template-resolver-order+`] |+++Order of the template resolver in the chain. By default, the template resolver is first in the chain. Order start at 1 and should only be set if you have defined additional "TemplateResolver" beans.+++ | |[[application-properties.templating.spring.thymeleaf.view-names]]xref:#application-properties.templating.spring.thymeleaf.view-names[`+spring.thymeleaf.view-names+`] |+++Comma-separated list of view names (patterns allowed) that can be resolved.+++ | |===