Polishing

Issue: SPR-12079
This commit is contained in:
Juergen Hoeller 2014-08-13 15:04:58 +02:00
parent 626a5fe4eb
commit 92bd240474
3 changed files with 39 additions and 36 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -26,16 +26,19 @@ import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.util.WebUtils; import org.springframework.web.util.WebUtils;
/** /**
* Convenient superclass for application objects running in a WebApplicationContext. * Convenient superclass for application objects running in a {@link WebApplicationContext}.
* Provides {@code getWebApplicationContext()}, {@code getServletContext()}, * Provides {@code getWebApplicationContext()}, {@code getServletContext()}, and
* and {@code getTempDir()} methods. * {@code getTempDir()} accessors.
*
* <p>Note: It is generally recommended to use individual callback interfaces for the actual
* callbacks needed. This broad base class is primarily intended for use within the framework,
* in case of {@link ServletContext} access etc typically being needed.
* *
* @author Juergen Hoeller * @author Juergen Hoeller
* @since 28.08.2003 * @since 28.08.2003
* @see SpringBeanAutowiringSupport * @see SpringBeanAutowiringSupport
*/ */
public abstract class WebApplicationObjectSupport extends ApplicationObjectSupport public abstract class WebApplicationObjectSupport extends ApplicationObjectSupport implements ServletContextAware {
implements ServletContextAware {
private ServletContext servletContext; private ServletContext servletContext;

View File

@ -36,24 +36,22 @@ import org.springframework.web.context.support.GenericWebApplicationContext;
import org.springframework.web.servlet.View; import org.springframework.web.servlet.View;
/** /**
* {@link org.springframework.web.servlet.ViewResolver} implementation * A {@link org.springframework.web.servlet.ViewResolver} implementation that uses
* that uses bean definitions in a {@link ResourceBundle}, specified by * bean definitions in a {@link ResourceBundle}, specified by the bundle basename.
* the bundle basename.
* *
* <p>The bundle is typically defined in a properties file, located in * <p>The bundle is typically defined in a properties file, located in the classpath.
* the class path. The default bundle basename is "views". * The default bundle basename is "views".
* *
* <p>This {@code ViewResolver} supports localized view definitions, * <p>This {@code ViewResolver} supports localized view definitions, using the
* using the default support of {@link java.util.PropertyResourceBundle}. * default support of {@link java.util.PropertyResourceBundle}. For example, the
* For example, the basename "views" will be resolved as class path resources * basename "views" will be resolved as class path resources "views_de_AT.properties",
* "views_de_AT.properties", "views_de.properties", "views.properties" - * "views_de.properties", "views.properties" - for a given Locale "de_AT".
* for a given Locale "de_AT".
* *
* <p>Note: this {@code ViewResolver} implements the {@link Ordered} * <p>Note: This {@code ViewResolver} implements the {@link Ordered} interface
* interface to allow for flexible participation in {@code ViewResolver} * in order to allow for flexible participation in {@code ViewResolver} chaining.
* chaining. For example, some special views could be defined via this * For example, some special views could be defined via this {@code ViewResolver}
* {@code ViewResolver} (giving it 0 as "order" value), while all * (giving it 0 as "order" value), while all remaining views could be resolved by
* remaining views could be resolved by a {@link UrlBasedViewResolver}. * a {@link UrlBasedViewResolver}.
* *
* @author Rod Johnson * @author Rod Johnson
* @author Juergen Hoeller * @author Juergen Hoeller
@ -110,7 +108,7 @@ public class ResourceBundleViewResolver extends AbstractCachingViewResolver
* @see java.util.ResourceBundle#getBundle(String) * @see java.util.ResourceBundle#getBundle(String)
*/ */
public void setBasename(String basename) { public void setBasename(String basename) {
setBasenames(new String[] {basename}); setBasenames(basename);
} }
/** /**
@ -173,7 +171,7 @@ public class ResourceBundleViewResolver extends AbstractCachingViewResolver
* <p>Allows for pre-initialization of common Locales, eagerly checking * <p>Allows for pre-initialization of common Locales, eagerly checking
* the view configuration for those Locales. * the view configuration for those Locales.
*/ */
public void setLocalesToInitialize(Locale[] localesToInitialize) { public void setLocalesToInitialize(Locale... localesToInitialize) {
this.localesToInitialize = localesToInitialize; this.localesToInitialize = localesToInitialize;
} }
@ -198,7 +196,7 @@ public class ResourceBundleViewResolver extends AbstractCachingViewResolver
return factory.getBean(viewName, View.class); return factory.getBean(viewName, View.class);
} }
catch (NoSuchBeanDefinitionException ex) { catch (NoSuchBeanDefinitionException ex) {
// to allow for ViewResolver chaining // Allow for ViewResolver chaining...
return null; return null;
} }
} }

View File

@ -32,18 +32,20 @@ import org.springframework.web.context.support.GenericWebApplicationContext;
import org.springframework.web.servlet.View; import org.springframework.web.servlet.View;
/** /**
* Implementation of ViewResolver that uses bean definitions in an * A {@link org.springframework.web.servlet.ViewResolver} implementation that uses
* XML file, specified by resource location. The file will typically * bean definitions in a dedicated XML file for view definitions, specified by
* be located in the WEB-INF directory; default is "/WEB-INF/views.xml". * resource location. The file will typically be located in the WEB-INF directory;
* the default is "/WEB-INF/views.xml".
* *
* <p>This ViewResolver does not support internationalization. * <p>This {@code ViewResolver} does not support internationalization at the level
* Consider ResourceBundleViewResolver if you need to apply * of its definition resources. Consider {@link ResourceBundleViewResolver} if you
* different view resources per locale. * need to apply different view resources per locale.
* *
* <p>Note: This ViewResolver implements the Ordered interface to allow for * <p>Note: This {@code ViewResolver} implements the {@link Ordered} interface
* flexible participation in ViewResolver chaining. For example, some special * in order to allow for flexible participation in {@code ViewResolver} chaining.
* views could be defined via this ViewResolver (giving it 0 as "order" value), * For example, some special views could be defined via this {@code ViewResolver}
* while all remaining views could be resolved by a UrlBasedViewResolver. * (giving it 0 as "order" value), while all remaining views could be resolved by
* a {@link UrlBasedViewResolver}.
* *
* @author Juergen Hoeller * @author Juergen Hoeller
* @since 18.06.2003 * @since 18.06.2003
@ -71,7 +73,7 @@ public class XmlViewResolver extends AbstractCachingViewResolver
@Override @Override
public int getOrder() { public int getOrder() {
return order; return this.order;
} }
/** /**
@ -111,7 +113,7 @@ public class XmlViewResolver extends AbstractCachingViewResolver
return factory.getBean(viewName, View.class); return factory.getBean(viewName, View.class);
} }
catch (NoSuchBeanDefinitionException ex) { catch (NoSuchBeanDefinitionException ex) {
// to allow for ViewResolver chaining // Allow for ViewResolver chaining...
return null; return null;
} }
} }