diff --git a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/AbstractUrlBasedView.java b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/AbstractUrlBasedView.java index 7ed61933ebf4f11aa4d56fe9ff5f8a86f81ee4b4..c6be1fc9fb23b86b4301d026d46142e3c41d4844 100644 --- a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/AbstractUrlBasedView.java +++ b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/AbstractUrlBasedView.java @@ -16,6 +16,8 @@ package org.springframework.web.servlet.view; +import java.util.Locale; + import org.springframework.beans.factory.InitializingBean; /** @@ -78,11 +80,12 @@ public abstract class AbstractUrlBasedView extends AbstractView implements Initi /** * Check whether the underlying resource that the configured URL points to * actually exists. + * @param locale the desired Locale that we're looking for * @return true if the resource exists (or is assumed to exist); * false if we know that it does not exist * @throws Exception if the resource exists but is invalid (e.g. could not be parsed) */ - public boolean checkResource() throws Exception { + public boolean checkResource(Locale locale) throws Exception { return true; } diff --git a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/UrlBasedViewResolver.java b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/UrlBasedViewResolver.java index c7674a69301f6d8345f18b9edd0e4ce3f59686db..f3933fbf5042e40423c397facd5a28b045d80239 100644 --- a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/UrlBasedViewResolver.java +++ b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/UrlBasedViewResolver.java @@ -418,7 +418,7 @@ public class UrlBasedViewResolver extends AbstractCachingViewResolver implements protected View loadView(String viewName, Locale locale) throws Exception { AbstractUrlBasedView view = buildView(viewName); View result = (View) getApplicationContext().getAutowireCapableBeanFactory().initializeBean(view, viewName); - return (view.checkResource() ? result : null); + return (view.checkResource(locale) ? result : null); } /** diff --git a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/freemarker/FreeMarkerView.java b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/freemarker/FreeMarkerView.java index 9e88de553d5a361f24380686a060283958b4fb14..8f492adfda42e285e135f29716e3548512b2ccc1 100644 --- a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/freemarker/FreeMarkerView.java +++ b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/freemarker/FreeMarkerView.java @@ -197,10 +197,10 @@ public class FreeMarkerView extends AbstractTemplateView { * multiple templates to be rendered into a single view. */ @Override - public boolean checkResource() throws Exception { + public boolean checkResource(Locale locale) throws Exception { try { // Check that we can get the template, even if we might subsequently get it again. - getTemplate(getUrl(), getConfiguration().getLocale()); + getTemplate(getUrl(), locale); return true; } catch (FileNotFoundException ex) { diff --git a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityLayoutView.java b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityLayoutView.java index dcb59a8ff3a4416360068b85d3f786aaeabad96d..3e8ac3d4faee9554fb67c33d524c70dd3703fbde 100644 --- a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityLayoutView.java +++ b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityLayoutView.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2006 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.springframework.web.servlet.view.velocity; import java.io.StringWriter; +import java.util.Locale; import javax.servlet.http.HttpServletResponse; import org.apache.velocity.Template; @@ -118,8 +119,8 @@ public class VelocityLayoutView extends VelocityToolboxView { * can be changed which may invalidate any early checking done here. */ @Override - public boolean checkResource() throws Exception { - if (!super.checkResource()) { + public boolean checkResource(Locale locale) throws Exception { + if (!super.checkResource(locale)) { return false; } diff --git a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityView.java b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityView.java index 5607ac876b9140979adf5fcfe94075af39b241bc..6699f514bb4f9701dae9bad9cfac963c1d07a044 100644 --- a/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityView.java +++ b/org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/view/velocity/VelocityView.java @@ -253,7 +253,7 @@ public class VelocityView extends AbstractTemplateView { * multiple templates to be rendered into a single view. */ @Override - public boolean checkResource() throws Exception { + public boolean checkResource(Locale locale) throws Exception { try { // Check that we can get the template, even if we might subsequently get it again. this.template = getTemplate(getUrl());