Accept viewNames and excludedViewNames for ThymeleafViewResolver

(via spring.thymeleaf.*).

Fixes gh-548
This commit is contained in:
Dave Syer 2014-03-22 14:25:51 +00:00
parent e472e7ccca
commit 4637c2a8f7
2 changed files with 16 additions and 0 deletions

View File

@ -178,6 +178,10 @@ public class ThymeleafAutoConfiguration {
resolver.setTemplateEngine(this.templateEngine);
resolver.setCharacterEncoding(this.environment.getProperty("encoding",
"UTF-8"));
resolver.setExcludedViewNames(this.environment.getProperty(
"excludedViewNames", String[].class));
resolver.setViewNames(this.environment.getProperty("viewNames",
String[].class));
// Needs to come before any fallback resolver (e.g. a
// InternalResourceViewResolver)
resolver.setOrder(Ordered.LOWEST_PRECEDENCE - 20);

View File

@ -38,6 +38,7 @@ import org.thymeleaf.spring4.view.ThymeleafViewResolver;
import org.thymeleaf.templateresolver.ITemplateResolver;
import org.thymeleaf.templateresolver.TemplateResolver;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@ -85,6 +86,17 @@ public class ThymeleafAutoConfigurationTests {
assertEquals("UTF-16", views.getCharacterEncoding());
}
@Test
public void overrideViewNames() throws Exception {
EnvironmentTestUtils.addEnvironment(this.context,
"spring.thymeleaf.viewNames:foo,bar");
this.context.register(ThymeleafAutoConfiguration.class,
PropertyPlaceholderAutoConfiguration.class);
this.context.refresh();
ThymeleafViewResolver views = this.context.getBean(ThymeleafViewResolver.class);
assertArrayEquals(new String[] { "foo", "bar" }, views.getViewNames());
}
@Test(expected = BeanCreationException.class)
public void templateLocationDoesNotExist() throws Exception {
EnvironmentTestUtils.addEnvironment(this.context,