[07/24] struts git commit: Moves default bean name to common place
Moves default bean name to common place Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/524343c3 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/524343c3 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/524343c3 Branch: refs/heads/master Commit: 524343c3cf79faad15e49fc26221de308853cbfc Parents: 2733f15 Author: Lukasz Lenart Authored: Wed Mar 8 17:45:32 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:45:32 2017 +0100 -- .../opensymphony/xwork2/config/impl/DefaultConfiguration.java | 4 +++- .../apache/struts2/config/AbstractBeanSelectionProvider.java | 7 +++ .../main/java/org/apache/struts2/dispatcher/Dispatcher.java | 3 ++- 3 files changed, 8 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/524343c3/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java index 31bf283..9830d92 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java @@ -51,6 +51,8 @@ import java.util.*; */ public class DefaultConfiguration implements Configuration { +public static final String DEFAULT_BEAN_NAME = "struts"; + protected static final Logger LOG = LogManager.getLogger(DefaultConfiguration.class); @@ -66,7 +68,7 @@ public class DefaultConfiguration implements Configuration { ObjectFactory objectFactory; public DefaultConfiguration() { -this("xwork"); +this(DEFAULT_BEAN_NAME); } public DefaultConfiguration(String defaultBeanName) { http://git-wip-us.apache.org/repos/asf/struts/blob/524343c3/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java -- diff --git a/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java b/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java index 34e340b..f0c691f 100644 --- a/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java @@ -4,6 +4,7 @@ import com.opensymphony.xwork2.ObjectFactory; import com.opensymphony.xwork2.config.BeanSelectionProvider; import com.opensymphony.xwork2.config.Configuration; import com.opensymphony.xwork2.config.ConfigurationException; +import com.opensymphony.xwork2.config.impl.DefaultConfiguration; import com.opensymphony.xwork2.inject.*; import com.opensymphony.xwork2.util.ClassLoaderUtil; import com.opensymphony.xwork2.util.location.LocatableProperties; @@ -19,8 +20,6 @@ public abstract class AbstractBeanSelectionProvider implements BeanSelectionProv private static final Logger LOG = LogManager.getLogger(AbstractBeanSelectionProvider.class); -public static final String DEFAULT_BEAN_NAME = "struts"; - public void destroy() { // NO-OP } @@ -43,7 +42,7 @@ public abstract class AbstractBeanSelectionProvider implements BeanSelectionProv protected void alias(Class type, String key, ContainerBuilder builder, Properties props, Scope scope) { if (!builder.contains(type)) { -String foundName = props.getProperty(key, DEFAULT_BEAN_NAME); +String foundName = props.getProperty(key, DefaultConfiguration.DEFAULT_BEAN_NAME); if (builder.contains(type, foundName)) { LOG.trace("Choosing bean ({}) for ({})", foundName, type.getName()); builder.alias(type, foundName, Container.DEFAULT_NAME); @@ -55,7 +54,7 @@ public abstract class AbstractBeanSelectionProvider implements BeanSelectionProv } catch (ClassNotFoundException ex) { // Perhaps a spring bean id, so we'll delegate to the object factory at runtime LOG.trace("Choosing bean ({}) for ({}) to be loaded from the ObjectFactory", foundName, type.getName()); -if (DEFAULT_BEAN_NAME.equals(foundName)) { +if (DefaultConfiguration.DEFAULT_BEAN_NAME.equals(foundName)) { // Probably an optional bean, will ignore } else { if (ObjectFactory.class != type) { http://git-wip-us.apache.org/repos/asf/struts/blob/524343c3/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java -- diff
[03/24] struts git commit: Adds LocalizedTextUtil as a bean
Adds LocalizedTextUtil as a bean Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/fa1a5f9e Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/fa1a5f9e Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/fa1a5f9e Branch: refs/heads/master Commit: fa1a5f9e6927ab7521c30366631e128371d41277 Parents: ae09c6a Author: Lukasz Lenart Authored: Wed Mar 8 17:42:13 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:42:13 2017 +0100 -- .../opensymphony/xwork2/config/impl/DefaultConfiguration.java| 4 .../xwork2/config/providers/XWorkConfigurationProvider.java | 4 2 files changed, 8 insertions(+) -- http://git-wip-us.apache.org/repos/asf/struts/blob/fa1a5f9e/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java index 08977b2..31bf283 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java @@ -246,6 +246,8 @@ public class DefaultConfiguration implements Configuration { builder.factory(ReflectionProvider.class, OgnlReflectionProvider.class, Scope.SINGLETON); builder.factory(ValueStackFactory.class, OgnlValueStackFactory.class, Scope.SINGLETON); +builder.factory(LocalizedTextUtil.class, LocalizedTextUtil.class, Scope.SINGLETON); + builder.factory(XWorkConverter.class, Scope.SINGLETON); builder.factory(ConversionPropertiesProcessor.class, DefaultConversionPropertiesProcessor.class, Scope.SINGLETON); builder.factory(ConversionFileProcessor.class, DefaultConversionFileProcessor.class, Scope.SINGLETON); @@ -270,10 +272,12 @@ public class DefaultConfiguration implements Configuration { builder.factory(ValueSubstitutor.class, EnvsValueSubstitutor.class, Scope.SINGLETON); builder.constant(XWorkConstants.DEV_MODE, "false"); +builder.constant(StrutsConstants.STRUTS_DEVMODE, "false"); builder.constant(XWorkConstants.LOG_MISSING_PROPERTIES, "false"); builder.constant(XWorkConstants.ENABLE_OGNL_EVAL_EXPRESSION, "false"); builder.constant(XWorkConstants.ENABLE_OGNL_EXPRESSION_CACHE, "true"); builder.constant(XWorkConstants.RELOAD_XML_CONFIGURATION, "false"); +builder.constant(StrutsConstants.STRUTS_I18N_RELOAD, "false"); return builder.create(true); } http://git-wip-us.apache.org/repos/asf/struts/blob/fa1a5f9e/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java index fc335d8..de0b963 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java @@ -70,6 +70,7 @@ import com.opensymphony.xwork2.ognl.accessor.XWorkListPropertyAccessor; import com.opensymphony.xwork2.ognl.accessor.XWorkMapPropertyAccessor; import com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor; import com.opensymphony.xwork2.util.CompoundRoot; +import com.opensymphony.xwork2.util.LocalizedTextUtil; import com.opensymphony.xwork2.util.OgnlTextParser; import com.opensymphony.xwork2.util.PatternMatcher; import com.opensymphony.xwork2.util.TextParser; @@ -177,6 +178,7 @@ public class XWorkConfigurationProvider implements ConfigurationProvider { .factory(NullHandler.class, Object.class.getName(), InstantiatingNullHandler.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, AnnotationActionValidatorManager.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, "no-annotations", DefaultActionValidatorManager.class, Scope.SINGLETON) +.factory(LocalizedTextUtil.class, LocalizedTextUtil.class, Scope.SINGLETON) .factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON) .factory(TextProvider.class, TextProviderSupport.class, Scope.SINGLETON) .factory(LocaleProvider.class, DefaultLocaleProvider.class, Scope.SINGLETON) @@ -194,6 +196,8 @@ public class XWorkConfigurationProvider implements ConfigurationProvider { ; props.setProperty(StrutsCo
[04/24] struts git commit: Marks static methods as deprecated
Marks static methods as deprecated Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/239327ea Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/239327ea Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/239327ea Branch: refs/heads/master Commit: 239327ea363e020af0a0de2669bc2e991bfe6bfb Parents: fa1a5f9 Author: Lukasz Lenart Authored: Wed Mar 8 17:42:42 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:42:42 2017 +0100 -- .../opensymphony/xwork2/util/LocalizedTextUtil.java | 15 --- 1 file changed, 12 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/239327ea/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java index d69300f..1334cad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java @@ -113,7 +113,10 @@ public class LocalizedTextUtil { /** * Clears the internal list of resource bundles. + * + * @deprecated used only in tests */ +@Deprecated public static void clearDefaultResourceBundles() { ClassLoader ccl = getCurrentThreadContextClassLoader(); List bundles = new ArrayList<>(); @@ -121,17 +124,20 @@ public class LocalizedTextUtil { bundles.add(0, XWORK_MESSAGES_BUNDLE); } +public LocalizedTextUtil() { +} + /** * Should resorce bundles be reloaded. * * @param reloadBundles reload bundles? */ -@Inject(StrutsConstants.STRUTS_I18N_RELOAD) +@Inject(value = StrutsConstants.STRUTS_I18N_RELOAD, required = false) public void setReloadBundles(String reloadBundles) { this.reloadBundles = Boolean.parseBoolean(reloadBundles); } -@Inject(StrutsConstants.STRUTS_DEVMODE) +@Inject(value = StrutsConstants.STRUTS_DEVMODE, required = false) public void setDevMode(String devMode) { this.devMode = Boolean.parseBoolean(devMode); } @@ -937,8 +943,11 @@ public class LocalizedTextUtil { /** * Clears all the internal lists. + * + * @deprecated used only in tests */ -public static void reset() { +@Deprecated +public void reset() { clearDefaultResourceBundles(); bundlesMap.clear(); messageFormats.clear();
[06/24] struts git commit: Updates test
Updates test Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/2733f158 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/2733f158 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/2733f158 Branch: refs/heads/master Commit: 2733f158d892efb2febdd99fc1772ed6564ea7be Parents: 4ef6418 Author: Lukasz Lenart Authored: Wed Mar 8 17:43:28 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:43:28 2017 +0100 -- .../xwork2/util/XWorkTestCaseHelper.java| 2 +- .../xwork2/util/LocalizedTextUtilTest.java | 54 +++- .../DefaultBeanSelectionProviderTest.java | 10 ++-- .../org/apache/struts2/config/SettingsTest.java | 6 ++- .../struts2/dispatcher/DispatcherTest.java | 8 +-- 5 files changed, 45 insertions(+), 35 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/2733f158/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java b/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java index d81b84e..717a3ef 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java @@ -40,7 +40,7 @@ public class XWorkTestCaseHelper { ActionContext.setContext(new ActionContext(stack.getContext())); // clear out localization -LocalizedTextUtil.reset(); +container.getInstance(LocalizedTextUtil.class).reset(); //ObjectFactory.setObjectFactory(container.getInstance(ObjectFactory.class)); http://git-wip-us.apache.org/repos/asf/struts/blob/2733f158/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java -- diff --git a/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java index c14d529..e8dc982 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java @@ -39,10 +39,12 @@ import java.util.ResourceBundle; */ public class LocalizedTextUtilTest extends XWorkTestCase { +private LocalizedTextUtil localizedTextUtil; + public void testNpeWhenClassIsPrimitive() throws Exception { ValueStack stack = ActionContext.getContext().getValueStack(); stack.push(new MyObject()); - String result = LocalizedTextUtil.findText(MyObject.class, "someObj.someI18nKey", Locale.ENGLISH, "default message", null, stack); + String result = localizedTextUtil.findText(MyObject.class, "someObj.someI18nKey", Locale.ENGLISH, "default message", null, stack); System.out.println(result); } @@ -96,7 +98,7 @@ public class LocalizedTextUtilTest extends XWorkTestCase { } public void testNullKeys() { -LocalizedTextUtil.findText(this.getClass(), null, Locale.getDefault()); +localizedTextUtil.findText(this.getClass(), null, Locale.getDefault()); } public void testActionGetTextXXX() throws Exception { @@ -118,12 +120,12 @@ public class LocalizedTextUtilTest extends XWorkTestCase { } public void testAddDefaultResourceBundle() { -String text = LocalizedTextUtil.findDefaultText("foo.range", Locale.getDefault()); +String text = localizedTextUtil.findDefaultText("foo.range", Locale.getDefault()); assertNull("Found message when it should not be available.", text); LocalizedTextUtil.addDefaultResourceBundle("com/opensymphony/xwork2/SimpleAction"); -String message = LocalizedTextUtil.findDefaultText("foo.range", Locale.US); +String message = localizedTextUtil.findDefaultText("foo.range", Locale.US); assertEquals("Foo Range Message", message); } @@ -135,17 +137,17 @@ public class LocalizedTextUtilTest extends XWorkTestCase { } public void testDefaultMessage() throws Exception { -String message = LocalizedTextUtil.findDefaultText("xwork.error.action.execution", Locale.getDefault()); +String message = localizedTextUtil.findDefaultText("xwork.error.action.execution", Locale.getDefault()); assertEquals("Error during Action invocation", message); } public void testDefaultMessageOverride() throws Exception { -String message = LocalizedTextUtil.findDefaultText("xwork.error.action.execution", Locale.getDefault()); +String message = localizedTextUtil.findDefau
[01/24] struts git commit: Converts into a bean
Repository: struts Updated Branches: refs/heads/master 8852e3d11 -> 6ee73dce7 Converts into a bean Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/b3b8b909 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/b3b8b909 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/b3b8b909 Branch: refs/heads/master Commit: b3b8b909e39f403dd76ce349ca546c7dff627e1a Parents: 6b8272c Author: Lukasz Lenart Authored: Tue Mar 7 11:26:22 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 7 11:26:22 2017 +0100 -- .../xwork2/util/LocalizedTextUtil.java | 46 +++- 1 file changed, 25 insertions(+), 21 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/b3b8b909/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java index ad3a713..d69300f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java @@ -25,10 +25,12 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ModelDriven; import com.opensymphony.xwork2.conversion.impl.XWorkConverter; +import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.reflection.ReflectionProviderFactory; import org.apache.commons.lang3.ObjectUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.struts2.StrutsConstants; import java.beans.PropertyDescriptor; import java.lang.reflect.Field; @@ -93,8 +95,8 @@ public class LocalizedTextUtil { private static final ConcurrentMap> classLoaderMap = new ConcurrentHashMap<>(); -private static boolean reloadBundles = false; -private static boolean devMode; +private boolean reloadBundles = false; +private boolean devMode = false; private static final ConcurrentMap bundlesMap = new ConcurrentHashMap<>(); private static final ConcurrentMap messageFormats = new ConcurrentHashMap<>(); @@ -124,12 +126,14 @@ public class LocalizedTextUtil { * * @param reloadBundles reload bundles? */ -public static void setReloadBundles(boolean reloadBundles) { -LocalizedTextUtil.reloadBundles = reloadBundles; +@Inject(StrutsConstants.STRUTS_I18N_RELOAD) +public void setReloadBundles(String reloadBundles) { +this.reloadBundles = Boolean.parseBoolean(reloadBundles); } -public static void setDevMode(boolean devMode) { -LocalizedTextUtil.devMode = devMode; +@Inject(StrutsConstants.STRUTS_DEVMODE) +public void setDevMode(String devMode) { +this.devMode = Boolean.parseBoolean(devMode); } /** @@ -209,7 +213,7 @@ public class LocalizedTextUtil { * @param localethe locale the message should be for * @return a localized message based on the specified key, or null if no localized message can be found for it */ -public static String findDefaultText(String aTextName, Locale locale) { +public String findDefaultText(String aTextName, Locale locale) { List localList = classLoaderMap.get(Thread.currentThread().getContextClassLoader().hashCode()); for (String bundleName : localList) { @@ -242,7 +246,7 @@ public class LocalizedTextUtil { * @param paramsan array of objects to be substituted into the message text * @return A formatted message based on the specified key, or null if no localized message can be found for it */ -public static String findDefaultText(String aTextName, Locale locale, Object[] params) { +public String findDefaultText(String aTextName, Locale locale, Object[] params) { String defaultText = findDefaultText(aTextName, locale); if (defaultText != null) { MessageFormat mf = buildMessageFormat(defaultText, locale); @@ -261,7 +265,7 @@ public class LocalizedTextUtil { * @param locale the locale. * @return the bundle, null if not found. */ -public static ResourceBundle findResourceBundle(String aBundleName, Locale locale) { +public ResourceBundle findResourceBundle(String aBundleName, Locale locale) { ClassLoader classLoader = getCurrentThreadContextClassLoader(); String key = createMissesKey(String.valueOf(classLoader.hashCode()), aBundleName, locale); @@ -323,7 +327,7 @@ public class LocalizedTextUtil { * @param locale the locale. * @return the key to use for lookup/storing in the bundle misses c
[09/24] struts git commit: Drops support for Xwork xml configuration
Drops support for Xwork xml configuration Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/0b16543d Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/0b16543d Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/0b16543d Branch: refs/heads/master Commit: 0b16543d6f5d48c3b2739871b7af609bf7b658b5 Parents: 741f3fa Author: Lukasz Lenart Authored: Wed Mar 8 17:52:24 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:52:24 2017 +0100 -- .../java/org/apache/struts2/dispatcher/Dispatcher.java| 10 +- 1 file changed, 1 insertion(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/0b16543d/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java -- diff --git a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java index d0431f4..98ad701 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -375,21 +375,13 @@ public class Dispatcher { String[] files = configPaths.split("\\s*[,]\\s*"); for (String file : files) { if (file.endsWith(".xml")) { -if ("xwork.xml".equals(file)) { - configurationManager.addContainerProvider(createXmlConfigurationProvider(file, false)); -} else { - configurationManager.addContainerProvider(createStrutsXmlConfigurationProvider(file, false, servletContext)); -} + configurationManager.addContainerProvider(createStrutsXmlConfigurationProvider(file, false, servletContext)); } else { throw new IllegalArgumentException("Invalid configuration file name"); } } } -protected XmlConfigurationProvider createXmlConfigurationProvider(String filename, boolean errorIfMissing) { -return new XmlConfigurationProvider(filename, errorIfMissing); -} - protected XmlConfigurationProvider createStrutsXmlConfigurationProvider(String filename, boolean errorIfMissing, ServletContext ctx) { return new StrutsXmlConfigurationProvider(filename, errorIfMissing, ctx); }
[16/24] struts git commit: Adjusts tests
Adjusts tests Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/f784a16c Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/f784a16c Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/f784a16c Branch: refs/heads/master Commit: f784a16cb7f6515bf15f93173453326286e33ff0 Parents: ca0f629 Author: Lukasz Lenart Authored: Mon Mar 13 09:10:26 2017 +0100 Committer: Lukasz Lenart Committed: Mon Mar 13 09:10:26 2017 +0100 -- .../xwork2/CompositeTextProviderTest.java | 41 .../xwork2/DefaultTextProviderTest.java | 7 ++-- .../xwork2/TextProviderSupportTest.java | 7 +++- 3 files changed, 18 insertions(+), 37 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/f784a16c/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java -- diff --git a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java index 2dcfa8b..7290902 100644 --- a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java @@ -76,40 +76,15 @@ public class CompositeTextProviderTest extends XWorkTestCase { @Override protected void setUp() throws Exception { super.setUp(); -textProvider = new CompositeTextProvider(new TextProvider[] { -new TextProviderSupport(ResourceBundle.getBundle("com.opensymphony.xwork2.validator.CompositeTextProviderTestResourceBundle1"), -new LocaleProvider() { -public Locale getLocale() { -return Locale.ENGLISH; -} - -@Override -public boolean isValidLocaleString(String localeStr) { -return true; -} - -@Override -public boolean isValidLocale(Locale locale) { -return true; -} -}), -new TextProviderSupport(ResourceBundle.getBundle("com.opensymphony.xwork2.validator.CompositeTextProviderTestResourceBundle2"), -new LocaleProvider() { -public Locale getLocale() { -return Locale.ENGLISH; -} - -@Override -public boolean isValidLocaleString(String localeStr) { -return true; -} - -@Override -public boolean isValidLocale(Locale locale) { -return true; -} -}) +TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); +tpf.setTextProvider(null); + +ActionContext.getContext().setLocale(Locale.ENGLISH); + +textProvider = new CompositeTextProvider(new TextProvider[]{ + tpf.createInstance(ResourceBundle.getBundle("com.opensymphony.xwork2.validator.CompositeTextProviderTestResourceBundle1")), + tpf.createInstance(ResourceBundle.getBundle("com.opensymphony.xwork2.validator.CompositeTextProviderTestResourceBundle2")) }); } http://git-wip-us.apache.org/repos/asf/struts/blob/f784a16c/core/src/test/java/com/opensymphony/xwork2/DefaultTextProviderTest.java -- diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultTextProviderTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultTextProviderTest.java index 37d6dce..7b6b212 100644 --- a/core/src/test/java/com/opensymphony/xwork2/DefaultTextProviderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/DefaultTextProviderTest.java @@ -16,7 +16,6 @@ package com.opensymphony.xwork2; import com.opensymphony.xwork2.util.LocalizedTextUtil; -import junit.framework.TestCase; import java.util.*; @@ -25,7 +24,7 @@ import java.util.*; * * @author Claus Ibsen */ -public class DefaultTextProviderTest extends TestCase { +public class DefaultTextProviderTest extends XWorkTestCase { private DefaultTextProvider tp; @@ -127,6 +126,8 @@ public class DefaultTextProviderTest extends TestCase { @Override protected void setUp() throws Exception { +super.setUp(); + ActionContext ctx = new ActionContext(new HashMap()); ActionContext.setContext(
[12/24] struts git commit: Puts back the default bean name to allow alias beans
Puts back the default bean name to allow alias beans Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/6c19875c Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/6c19875c Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/6c19875c Branch: refs/heads/master Commit: 6c19875c786c03a33658f633d5c6a3425bbd5aaf Parents: 1ab616b Author: Lukasz Lenart Authored: Thu Mar 9 10:19:12 2017 +0100 Committer: Lukasz Lenart Committed: Thu Mar 9 10:19:12 2017 +0100 -- .../java/com/opensymphony/xwork2/XWork.java | 79 .../xwork2/config/ConfigurationManager.java | 4 - .../config/impl/DefaultConfiguration.java | 7 +- .../xwork2/util/XWorkTestCaseHelper.java| 4 +- .../org/apache/struts2/StrutsConstants.java | 2 + .../config/AbstractBeanSelectionProvider.java | 9 ++- .../config/DefaultBeanSelectionProvider.java| 3 +- .../apache/struts2/dispatcher/Dispatcher.java | 2 +- .../xwork2/config/ConfigurationManagerTest.java | 3 +- ...tionProviderGlobalResultInheritenceTest.java | 3 +- .../struts2/dispatcher/DispatcherTest.java | 14 ++-- .../mapper/CompositeActionMapperTest.java | 4 +- .../mapper/DefaultActionMapperTest.java | 5 +- .../mapper/Restful2ActionMapperTest.java| 3 +- .../struts2/rest/RestActionMapperTest.java | 3 +- .../sitegraph/StrutsConfigRetriever.java| 3 +- 16 files changed, 39 insertions(+), 109 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/6c19875c/core/src/main/java/com/opensymphony/xwork2/XWork.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/XWork.java b/core/src/main/java/com/opensymphony/xwork2/XWork.java deleted file mode 100644 index 1619a93..000 --- a/core/src/main/java/com/opensymphony/xwork2/XWork.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2002-2006,2009 The Apache Software Foundation. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.opensymphony.xwork2; - -import com.opensymphony.xwork2.config.Configuration; -import com.opensymphony.xwork2.config.ConfigurationManager; -import com.opensymphony.xwork2.util.logging.LoggerFactory; - -import java.util.Collections; -import java.util.Map; - -/** - * Simple facade to make using XWork standalone easier - */ -public class XWork { - -ConfigurationManager configurationManager; - -public XWork() { -this(new ConfigurationManager()); -} - -public XWork(ConfigurationManager mgr) { -this.configurationManager = mgr; -} - -public void setLoggerFactory(LoggerFactory factory) { -LoggerFactory.setLoggerFactory(factory); -} - -/** - * Executes an action - * - * @param namespace The namespace - * @param name The action name - * @param method The method name - * @throws XWorkException If anything goes wrong - */ -public void executeAction(String namespace, String name, String method) throws XWorkException { -Map extraContext = Collections.emptyMap(); -executeAction(namespace, name, method, extraContext); -} - -/** - * Executes an action with extra context information - * - * @param namespace The namespace - * @param name The action name - * @param method The method name - * @param extraContext A map of extra context information - * @throws XWorkException If anything goes wrong - */ -public void executeAction(String namespace, String name, String method, Map extraContext) throws XWorkException { -Configuration config = configurationManager.getConfiguration(); -try { -ActionProxy proxy = config.getContainer().getInstance(ActionProxyFactory.class).createActionProxy( -namespace, name, method, extraContext, true, false); - -proxy.execute(); -} catch (Exception e) { -throw new XWorkException(e); -} finally { -ActionContext.setContext(null); -} -} -} http://git-wip-us.apache.org/repos/asf/struts/blob/6c19875c/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java ---
[17/24] struts git commit: Fixes small typos
Fixes small typos Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/31ddb8b6 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/31ddb8b6 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/31ddb8b6 Branch: refs/heads/master Commit: 31ddb8b6020b2d67c0e5a7ad11d9d3a8b0fbdbf9 Parents: f784a16 Author: Lukasz Lenart Authored: Mon Mar 13 09:24:55 2017 +0100 Committer: Lukasz Lenart Committed: Mon Mar 13 09:24:55 2017 +0100 -- .../com/opensymphony/xwork2/util/LocalizedTextUtilTest.java| 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/31ddb8b6/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java -- diff --git a/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java index e8dc982..6631815 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/LocalizedTextUtilTest.java @@ -200,7 +200,7 @@ public class LocalizedTextUtilTest extends XWorkTestCase { } public void testLocalizedDateFormatIsUsed() throws ParseException { - localizedTextUtil.addDefaultResourceBundle("com/opensymphony/xwork2/util/localizedTextUtilTest"); + LocalizedTextUtil.addDefaultResourceBundle("com/opensymphony/xwork2/util/LocalizedTextUtilTest"); Date date = DateFormat.getDateInstance(DateFormat.SHORT, Locale.US).parse("01/01/2015"); Object[] params = new Object[]{ date }; String usDate = localizedTextUtil.findDefaultText("test.format.date", Locale.US, params); @@ -210,7 +210,7 @@ public class LocalizedTextUtilTest extends XWorkTestCase { } public void testXW377() { - localizedTextUtil.addDefaultResourceBundle("com/opensymphony/xwork2/util/localizedTextUtilTest"); + LocalizedTextUtil.addDefaultResourceBundle("com/opensymphony/xwork2/util/LocalizedTextUtilTest"); String text = localizedTextUtil.findText(Bar.class, "xw377", ActionContext.getContext().getLocale(), "xw377", null, ActionContext.getContext().getValueStack()); assertEquals("xw377", text); // should not log @@ -261,7 +261,7 @@ public class LocalizedTextUtilTest extends XWorkTestCase { @Override protected void tearDown() throws Exception { super.tearDown(); -localizedTextUtil.clearDefaultResourceBundles(); +LocalizedTextUtil.clearDefaultResourceBundles(); } }
[18/24] struts git commit: Extracts common interface for LocalizedTextProvider
Extracts common interface for LocalizedTextProvider Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/6e89179e Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/6e89179e Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/6e89179e Branch: refs/heads/master Commit: 6e89179eb2c5f0a7b71b7d7fdd7b0e8966f68f52 Parents: 31ddb8b Author: Lukasz Lenart Authored: Tue Mar 14 09:39:02 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 09:39:02 2017 +0100 -- .../opensymphony/xwork2/DefaultActionProxy.java | 13 ++-- .../xwork2/DefaultTextProvider.java | 14 ++-- .../xwork2/LocalizedTextProvider.java | 33 + .../xwork2/TextProviderFactory.java | 11 ++- .../xwork2/TextProviderSupport.java | 37 +- .../config/impl/DefaultConfiguration.java | 2 +- .../providers/XWorkConfigurationProvider.java | 3 +- .../xwork2/conversion/impl/XWorkConverter.java | 4 +- .../xwork2/interceptor/AliasInterceptor.java| 10 +-- .../StaticParametersInterceptor.java| 10 +-- .../xwork2/util/LocalizedTextUtil.java | 75 .../xwork2/util/XWorkTestCaseHelper.java| 2 +- .../config/DefaultBeanSelectionProvider.java| 23 +- .../struts2/factory/StrutsActionProxy.java | 2 +- .../org/apache/struts2/util/TokenHelper.java| 5 +- core/src/main/resources/struts-default.xml | 2 +- .../xwork2/DefaultTextProviderTest.java | 5 +- .../xwork2/TextProviderSupportTest.java | 2 +- .../xwork2/util/LocalizedTextUtilTest.java | 62 .../struts2/components/ComponentTest.java | 3 +- .../DefaultBeanSelectionProviderTest.java | 30 .../org/apache/struts2/config/SettingsTest.java | 7 +- .../struts2/dispatcher/DispatcherTest.java | 8 +-- .../portlet/dispatcher/Jsr168Dispatcher.java| 1 - 24 files changed, 199 insertions(+), 165 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/6e89179e/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java index 39a484d..1ab012c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java @@ -24,7 +24,6 @@ import com.opensymphony.xwork2.config.Configuration; import com.opensymphony.xwork2.config.ConfigurationException; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.LocalizedTextUtil; import com.opensymphony.xwork2.util.profiling.UtilTimerStack; import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; @@ -53,7 +52,7 @@ public class DefaultActionProxy implements ActionProxy, Serializable { protected ActionConfig config; protected ActionInvocation invocation; protected UnknownHandlerManager unknownHandlerManager; -protected LocalizedTextUtil localizedTextUtil; +protected LocalizedTextProvider localizedTextProvider; protected String actionName; protected String namespace; @@ -116,8 +115,8 @@ public class DefaultActionProxy implements ActionProxy, Serializable { } @Inject -public void setLocalizedTextUtil(LocalizedTextUtil localizedTextUtil) { -this.localizedTextUtil = localizedTextUtil; +public void setLocalizedTextUtil(LocalizedTextProvider localizedTextProvider) { +this.localizedTextProvider = localizedTextProvider; } public Object getAction() { @@ -212,7 +211,7 @@ public class DefaultActionProxy implements ActionProxy, Serializable { } protected String prepareNotAllowedErrorMessage() { -return localizedTextUtil.findDefaultText( +return localizedTextProvider.findDefaultText( "struts.exception.method-not-allowed", Locale.getDefault(), new String[]{method, actionName} @@ -221,12 +220,12 @@ public class DefaultActionProxy implements ActionProxy, Serializable { protected String getErrorMessage() { if ((namespace != null) && (namespace.trim().length() > 0)) { -return localizedTextUtil.findDefaultText( +return localizedTextProvider.findDefaultText( "xwork.exception.missing-package-action", Locale.getDefault(), new String[]{namespace, actionName}); } else { -return localizedTextUtil.findDefaultText( +return localizedTe
[13/24] struts git commit: Merge branch 'injectable-context' into localized-bean
Merge branch 'injectable-context' into localized-bean Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/d1fbf6a8 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/d1fbf6a8 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/d1fbf6a8 Branch: refs/heads/master Commit: d1fbf6a8972908fac3a41ec0e2756fe4eec1afb6 Parents: 6c19875 8852e3d Author: Lukasz Lenart Authored: Mon Mar 13 08:20:42 2017 +0100 Committer: Lukasz Lenart Committed: Mon Mar 13 08:20:42 2017 +0100 -- .../com/opensymphony/xwork2/ActionSupport.java | 7 +- .../xwork2/TextProviderFactory.java | 29 ++-- .../providers/XWorkConfigurationProvider.java | 4 + .../AnnotationActionValidatorManager.java | 8 +- .../DefaultActionValidatorManager.java | 13 +- .../validator/DelegatingValidatorContext.java | 33 + .../validator/validators/ValidatorSupport.java | 10 +- .../validators/VisitorFieldValidator.java | 25 +++- .../org/apache/struts2/StrutsConstants.java | 2 + .../org/apache/struts2/components/I18n.java | 5 +- .../config/DefaultBeanSelectionProvider.java| 2 + .../interceptor/FileUploadInterceptor.java | 8 +- core/src/main/resources/struts-default.xml | 1 + .../opensymphony/xwork2/ActionSupportTest.java | 6 +- .../validator/ActionValidatorManagerTest.java | 34 +++-- .../AnnotationActionValidatorManagerTest.java | 20 ++- .../ConversionErrorFieldValidatorTest.java | 5 +- .../validator/DoubleRangeValidatorTest.java | 12 +- .../xwork2/validator/DummyValidatorContext.java | 144 ++ .../xwork2/validator/EmailValidatorTest.java| 13 +- .../validator/ExpressionValidatorTest.java | 10 +- .../validator/GenericValidatorContext.java | 146 --- .../validator/RegexFieldValidatorTest.java | 20 ++- ...onversionErrorFieldValidatorSupportTest.java | 11 +- .../validator/SimpleActionValidationTest.java | 2 +- .../StringLengthFieldValidatorTest.java | 3 +- .../xwork2/validator/StringValidatorTest.java | 21 ++- .../xwork2/validator/URLValidatorTest.java | 15 +- .../validator/VisitorFieldValidatorTest.java| 7 +- .../AppendingValidatorContextTest.java | 25 +++- .../validators/DateRangeFieldValidatorTest.java | 12 +- .../validators/IntRangeFieldValidatorTest.java | 16 +- .../validators/LongRangeFieldValidatorTest.java | 16 +- .../validators/RequiredStringValidatorTest.java | 14 +- .../ShortRangeFieldValidatorTest.java | 16 +- .../apache/struts2/views/jsp/TextTagTest.java | 4 +- .../struts2/views/jsp/ui/TooltipTest.java | 9 +- .../com/opensymphony/xwork2/TestBean.properties | 2 +- .../interceptor/BeanValidationInterceptor.java | 10 +- .../interceptor/OValValidationInterceptor.java | 11 +- .../struts2/tiles/I18NAttributeEvaluator.java | 7 +- 41 files changed, 442 insertions(+), 316 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/d1fbf6a8/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java -- diff --cc core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java index de0b963,ff27731..2adab77 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java @@@ -178,9 -178,11 +179,12 @@@ public class XWorkConfigurationProvide .factory(NullHandler.class, Object.class.getName(), InstantiatingNullHandler.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, AnnotationActionValidatorManager.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, "no-annotations", DefaultActionValidatorManager.class, Scope.SINGLETON) + + .factory(TextProviderFactory.class, Scope.SINGLETON) +.factory(LocalizedTextUtil.class, LocalizedTextUtil.class, Scope.SINGLETON) .factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON) .factory(TextProvider.class, TextProviderSupport.class, Scope.SINGLETON) + .factory(LocaleProvider.class, DefaultLocaleProvider.class, Scope.SINGLETON) .factory(OgnlUtil.class, Scope.SINGLETON) .factory(CollectionConverter.class, Scope.SINGLETON) http://git-wip-us.apache.org/repos/asf/struts/blob/d1fbf6a8/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java -- diff --cc core/src/main/j
[11/24] struts git commit: Marks deprecated constructor
Marks deprecated constructor Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/1ab616b1 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/1ab616b1 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/1ab616b1 Branch: refs/heads/master Commit: 1ab616b10b2c43052bd8806e6e08fc0772de8b8a Parents: 442a52f Author: Lukasz Lenart Authored: Thu Mar 9 09:44:07 2017 +0100 Committer: Lukasz Lenart Committed: Thu Mar 9 09:44:07 2017 +0100 -- .../opensymphony/xwork2/validator/GenericValidatorContext.java | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/1ab616b1/core/src/test/java/com/opensymphony/xwork2/validator/GenericValidatorContext.java -- diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/GenericValidatorContext.java b/core/src/test/java/com/opensymphony/xwork2/validator/GenericValidatorContext.java index 6273259..0c7e067 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/GenericValidatorContext.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/GenericValidatorContext.java @@ -31,11 +31,14 @@ public class GenericValidatorContext extends DelegatingValidatorContext { private Map> fieldErrors; +/** + * @deprecated Is used only in tests and will be removed + */ +@Deprecated public GenericValidatorContext(Object object) { super(object); } - @Override public synchronized void setActionErrors(Collection errorMessages) { this.actionErrors = errorMessages;
[05/24] struts git commit: Injects instead of static reference
Injects instead of static reference Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/4ef64185 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/4ef64185 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/4ef64185 Branch: refs/heads/master Commit: 4ef641850539557ffbc9412ff1d6627a8e08fd32 Parents: 239327e Author: Lukasz Lenart Authored: Wed Mar 8 17:43:20 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:43:20 2017 +0100 -- .../opensymphony/xwork2/DefaultActionProxy.java | 13 +++--- .../xwork2/DefaultTextProvider.java | 16 +--- .../xwork2/TextProviderSupport.java | 27 .../xwork2/conversion/impl/XWorkConverter.java | 3 ++- .../xwork2/interceptor/AliasInterceptor.java| 14 +++--- .../interceptor/ParametersInterceptor.java | 19 +- .../StaticParametersInterceptor.java| 11 ++-- .../org/apache/struts2/components/Date.java | 22 .../org/apache/struts2/components/I18n.java | 2 +- .../apache/struts2/dispatcher/Dispatcher.java | 10 +--- .../multipart/JakartaMultiPartRequest.java | 6 + .../struts2/factory/StrutsActionProxy.java | 2 +- .../org/apache/struts2/util/TokenHelper.java| 3 ++- .../multipart/PellMultiPartRequest.java | 6 + 14 files changed, 90 insertions(+), 64 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/4ef64185/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java index 2d8bc38..39a484d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java @@ -53,6 +53,8 @@ public class DefaultActionProxy implements ActionProxy, Serializable { protected ActionConfig config; protected ActionInvocation invocation; protected UnknownHandlerManager unknownHandlerManager; +protected LocalizedTextUtil localizedTextUtil; + protected String actionName; protected String namespace; protected String method; @@ -113,6 +115,11 @@ public class DefaultActionProxy implements ActionProxy, Serializable { this.actionEventListener = listener; } +@Inject +public void setLocalizedTextUtil(LocalizedTextUtil localizedTextUtil) { +this.localizedTextUtil = localizedTextUtil; +} + public Object getAction() { return invocation.getAction(); } @@ -205,7 +212,7 @@ public class DefaultActionProxy implements ActionProxy, Serializable { } protected String prepareNotAllowedErrorMessage() { -return LocalizedTextUtil.findDefaultText( +return localizedTextUtil.findDefaultText( "struts.exception.method-not-allowed", Locale.getDefault(), new String[]{method, actionName} @@ -214,12 +221,12 @@ public class DefaultActionProxy implements ActionProxy, Serializable { protected String getErrorMessage() { if ((namespace != null) && (namespace.trim().length() > 0)) { -return LocalizedTextUtil.findDefaultText( +return localizedTextUtil.findDefaultText( "xwork.exception.missing-package-action", Locale.getDefault(), new String[]{namespace, actionName}); } else { -return LocalizedTextUtil.findDefaultText( +return localizedTextUtil.findDefaultText( "xwork.exception.missing-action", Locale.getDefault(), new String[]{actionName}); http://git-wip-us.apache.org/repos/asf/struts/blob/4ef64185/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index 1d72161..0e3f5b1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -15,6 +15,7 @@ */ package com.opensymphony.xwork2; +import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.LocalizedTextUtil; import com.opensymphony.xwork2.util.ValueStack; @@ -37,15 +38,22 @@ public class DefaultTextProvider implements TextProvider, Serializable, Unchaina private static final Object[] EMPTY_ARGS = new Object[0]; +protected LocalizedTextUtil
[14/24] struts git commit: Makes class serializable
Makes class serializable Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/f1a963b3 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/f1a963b3 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/f1a963b3 Branch: refs/heads/master Commit: f1a963b323d0dfe434742c7a049fe0966a659861 Parents: d1fbf6a Author: Lukasz Lenart Authored: Mon Mar 13 09:09:45 2017 +0100 Committer: Lukasz Lenart Committed: Mon Mar 13 09:09:45 2017 +0100 -- .../main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/f1a963b3/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java index 1334cad..7e870fd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java @@ -33,6 +33,7 @@ import org.apache.logging.log4j.Logger; import org.apache.struts2.StrutsConstants; import java.beans.PropertyDescriptor; +import java.io.Serializable; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -87,7 +88,7 @@ import java.util.concurrent.CopyOnWriteArrayList; * @author Rainer Hermanns * @author tm_jee */ -public class LocalizedTextUtil { +public class LocalizedTextUtil implements Serializable { private static final Logger LOG = LogManager.getLogger(LocalizedTextUtil.class);
[19/24] struts git commit: Adds missing header
Adds missing header Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/c3416e8e Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/c3416e8e Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/c3416e8e Branch: refs/heads/master Commit: c3416e8ea00c0dbf5023eadd6c066c04bdbd472c Parents: 6e89179 Author: Lukasz Lenart Authored: Tue Mar 14 09:49:54 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 09:49:54 2017 +0100 -- .../xwork2/LocalizedTextProvider.java| 19 +++ 1 file changed, 19 insertions(+) -- http://git-wip-us.apache.org/repos/asf/struts/blob/c3416e8e/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java index f6175ea..ecd037d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java @@ -1,3 +1,22 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + package com.opensymphony.xwork2; import com.opensymphony.xwork2.util.ValueStack;
[10/24] struts git commit: Marks deprecated constructor
Marks deprecated constructor Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/442a52fe Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/442a52fe Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/442a52fe Branch: refs/heads/master Commit: 442a52fe48745bc03b3d6b15e74a01cdf0c9f6a1 Parents: 0b16543 Author: Lukasz Lenart Authored: Thu Mar 9 09:43:38 2017 +0100 Committer: Lukasz Lenart Committed: Thu Mar 9 09:43:38 2017 +0100 -- .../xwork2/validator/DelegatingValidatorContext.java | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/struts/blob/442a52fe/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java index abaa761..e35d7a8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java @@ -56,7 +56,10 @@ public class DelegatingValidatorContext implements ValidatorContext { * (validation aware instance and a locale and text provider) are created based on the given action. * * @param object the object to use for validation (usually an Action). + * + * @deprecated will be removed, do not use! */ +@Deprecated public DelegatingValidatorContext(Object object) { this.localeProvider = makeLocaleProvider(object); this.validationAware = makeValidationAware(object); @@ -68,7 +71,10 @@ public class DelegatingValidatorContext implements ValidatorContext { * the validation context are created based on the class. * * @param clazz the class to initialize the context with. + * + * @deprecated will be removed, do not use! */ +@Deprecated public DelegatingValidatorContext(Class clazz) { localeProvider = new ActionContextLocaleProvider(); textProvider = new TextProviderFactory().createInstance(clazz, localeProvider);
[22/24] struts git commit: Drops unused function
Drops unused function Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/3a84a626 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/3a84a626 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/3a84a626 Branch: refs/heads/master Commit: 3a84a626f964056428fd4ca2b006610d25136e19 Parents: 008c28a Author: Lukasz Lenart Authored: Tue Mar 14 10:03:07 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 10:03:07 2017 +0100 -- .../main/java/com/opensymphony/xwork2/LocalizedTextProvider.java | 2 -- .../com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java | 1 - 2 files changed, 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/3a84a626/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java index ecd037d..85c5458 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java @@ -47,6 +47,4 @@ public interface LocalizedTextProvider extends Serializable { void addDefaultResourceBundle(String resourceBundleName); -@Deprecated -void reset(); } http://git-wip-us.apache.org/repos/asf/struts/blob/3a84a626/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java index 1e55fdd..c515219 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -972,7 +972,6 @@ public class DefaultLocalizedTextProvider implements LocalizedTextProvider { * * @deprecated used only in tests */ -@Override @Deprecated public void reset() { // no-op
[21/24] struts git commit: Renames LocalizedTextUtil into DefaultLocalizedTextProvider
Renames LocalizedTextUtil into DefaultLocalizedTextProvider Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/008c28ac Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/008c28ac Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/008c28ac Branch: refs/heads/master Commit: 008c28ac67cbd477abe4761de34610d6de7cfda0 Parents: c3416e8 Author: Lukasz Lenart Authored: Tue Mar 14 09:50:13 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 09:50:13 2017 +0100 -- .../xwork2/DefaultLocaleProvider.java |4 +- .../xwork2/DefaultTextProvider.java |4 +- .../config/impl/DefaultConfiguration.java |2 +- .../providers/XWorkConfigurationProvider.java |4 +- .../util/DefaultLocalizedTextProvider.java | 1040 ++ .../xwork2/util/LocalizedTextUtil.java | 1035 - .../org/apache/struts2/components/Date.java |1 - .../org/apache/struts2/components/I18n.java |4 +- .../config/DefaultBeanSelectionProvider.java|3 - .../apache/struts2/dispatcher/Dispatcher.java |7 +- .../multipart/JakartaMultiPartRequest.java |1 - .../multipart/MultiPartRequestWrapper.java |2 - .../struts2/factory/StrutsActionProxy.java |1 - .../struts2/interceptor/I18nInterceptor.java|4 +- .../struts2/util/StrutsTestCaseHelper.java |4 +- .../org/apache/struts2/util/TokenHelper.java|1 - core/src/main/resources/struts-default.xml |2 +- .../xwork2/TextProviderSupportTest.java |2 - .../util/DefaultLocalizedTextProviderTest.java | 267 + .../xwork2/util/LocalizedTextUtilTest.java | 267 - .../struts2/components/ComponentTest.java |1 - .../DefaultBeanSelectionProviderTest.java |3 - .../PropertiesConfigurationProviderTest.java|6 +- .../org/apache/struts2/config/SettingsTest.java |1 - .../multipart/PellMultiPartRequest.java |2 - .../portlet/dispatcher/Jsr168Dispatcher.java|5 +- 26 files changed, 1329 insertions(+), 1344 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/008c28ac/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index 1d687bc..f28ef03 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2; -import com.opensymphony.xwork2.util.LocalizedTextUtil; +import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -26,7 +26,7 @@ public class DefaultLocaleProvider implements LocaleProvider { @Override public boolean isValidLocaleString(String localeStr) { -return isValidLocale(LocalizedTextUtil.localeFromString(localeStr, getLocale())); +return isValidLocale(DefaultLocalizedTextProvider.localeFromString(localeStr, getLocale())); } @Override http://git-wip-us.apache.org/repos/asf/struts/blob/008c28ac/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index b82c42a..2c885a1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.LocalizedTextUtil; +import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.ValueStack; import java.io.Serializable; @@ -32,7 +32,7 @@ import java.util.ResourceBundle; * * @author Jason Carreira jcarre...@gmail.com * @author Rainer Hermanns - * @see LocalizedTextUtil#addDefaultResourceBundle(String) + * @see DefaultLocalizedTextProvider#addDefaultResourceBundle(String) */ public class DefaultTextProvider implements TextProvider, Serializable, Unchainable { http://git-wip-us.apache.org/repos/asf/struts/blob/008c28ac/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java b/cor
[24/24] struts git commit: Uses proper setter name
Uses proper setter name Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/6ee73dce Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/6ee73dce Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/6ee73dce Branch: refs/heads/master Commit: 6ee73dce79df5bf2a13e24ce33380c8ec415d236 Parents: fefb91f Author: Lukasz Lenart Authored: Tue Mar 14 10:14:03 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 10:14:03 2017 +0100 -- core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java | 2 +- .../src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java | 2 +- .../src/main/java/com/opensymphony/xwork2/TextProviderFactory.java | 2 +- .../src/main/java/com/opensymphony/xwork2/TextProviderSupport.java | 2 +- .../java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java | 2 +- .../xwork2/interceptor/StaticParametersInterceptor.java| 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/6ee73dce/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java index 1ab012c..87838bc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java @@ -115,7 +115,7 @@ public class DefaultActionProxy implements ActionProxy, Serializable { } @Inject -public void setLocalizedTextUtil(LocalizedTextProvider localizedTextProvider) { +public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider) { this.localizedTextProvider = localizedTextProvider; } http://git-wip-us.apache.org/repos/asf/struts/blob/6ee73dce/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index 2c885a1..51ed449 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -44,7 +44,7 @@ public class DefaultTextProvider implements TextProvider, Serializable, Unchaina } @Inject -public void setLocalizedTextUtil(LocalizedTextProvider localizedTextProvider) { +public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider) { this.localizedTextProvider = localizedTextProvider; } http://git-wip-us.apache.org/repos/asf/struts/blob/6ee73dce/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java index 91b110c..349d876 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java @@ -42,7 +42,7 @@ public class TextProviderFactory { } @Inject -public void setLocalizedTextUtil(LocalizedTextProvider localizedTextProvider) { +public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider) { this.localizedTextProvider = localizedTextProvider; } http://git-wip-us.apache.org/repos/asf/struts/blob/6ee73dce/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java index b576751..cf177d3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java @@ -88,7 +88,7 @@ public class TextProviderSupport implements ResourceBundleTextProvider { } @Inject -public void setLocalizedTextUtil(LocalizedTextProvider localizedTextProvider) { +public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider) { this.localizedTextProvider = localizedTextProvider; } http://git-wip-us.apache.org/repos/asf/struts/blob/6ee73dce/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java b/core/src/mai
[20/24] struts git commit: Renames LocalizedTextUtil into DefaultLocalizedTextProvider
http://git-wip-us.apache.org/repos/asf/struts/blob/008c28ac/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java deleted file mode 100644 index 8fb9e00..000 --- a/core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java +++ /dev/null @@ -1,1035 +0,0 @@ -/* - * $Id$ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package com.opensymphony.xwork2.util; - -import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.ActionInvocation; -import com.opensymphony.xwork2.LocalizedTextProvider; -import com.opensymphony.xwork2.ModelDriven; -import com.opensymphony.xwork2.conversion.impl.XWorkConverter; -import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.reflection.ReflectionProviderFactory; -import org.apache.commons.lang3.ObjectUtils; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.apache.struts2.StrutsConstants; - -import java.beans.PropertyDescriptor; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.text.MessageFormat; -import java.util.*; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; -import java.util.concurrent.CopyOnWriteArrayList; - - -/** - * Provides support for localization in XWork. - * - * - * Resource bundles are searched in the following order: - * - * - * ActionClass.properties - * Interface.properties (every interface and sub-interface) - * BaseClass.properties (all the way to Object.properties) - * ModelDriven's model (if implements ModelDriven), for the model object repeat from 1 - * package.properties (of the directory where class is located and every parent directory all the way to the root directory) - * search up the i18n message key hierarchy itself - * global resource properties - * - * - * - * - * - * To clarify #5, while traversing the package hierarchy, Struts 2 will look for a file package.properties: - * com/ - * acme/ - * package.properties - * actions/ - * package.properties - * FooAction.java - * FooAction.properties - * - * If FooAction.properties does not exist, com/acme/action/package.properties will be searched for, if - * not found com/acme/package.properties, if not found com/package.properties, etc. - * - * - * - * - * - * A global resource bundle could be specified programmatically, as well as the locale. - * - * - * - * @author Jason Carreira - * @author Mark Woon - * @author Rainer Hermanns - * @author tm_jee - */ -public class LocalizedTextUtil implements LocalizedTextProvider { - -private static final Logger LOG = LogManager.getLogger(LocalizedTextUtil.class); - -private static final String TOMCAT_RESOURCE_ENTRIES_FIELD = "resourceEntries"; - -private final ConcurrentMap> classLoaderMap = new ConcurrentHashMap<>(); - -private boolean reloadBundles = false; -private boolean devMode = false; - -private final ConcurrentMap bundlesMap = new ConcurrentHashMap<>(); -private final ConcurrentMap messageFormats = new ConcurrentHashMap<>(); -private final ConcurrentMap delegatedClassLoaderMap = new ConcurrentHashMap<>(); -private final Set missingBundles = Collections.synchronizedSet(new HashSet()); - -private final String RELOADED = "com.opensymphony.xwork2.util.LocalizedTextUtil.reloaded"; -private final String XWORK_MESSAGES_BUNDLE = "com/opensymphony/xwork2/xwork-messages"; - -/** - * Clears the internal list of resource bundles. - * - * @deprecated used only in tests - */ -@Deprecated -public static void clearDefaultResourceBundles() { -// no-op -} - -public LocalizedTextUtil() { -addDefaultResourceBundle("org/apache/struts2/struts-messages"); -} - -/** - * Should resorce bundles be reloaded. - * - * @param reloadBundles reload bundles? - */ -@Inject(val
[08/24] struts git commit: Marks param as a deprecated
Marks param as a deprecated Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/741f3fa1 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/741f3fa1 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/741f3fa1 Branch: refs/heads/master Commit: 741f3fa107eee331209e52477c1a007bfc5db755 Parents: 524343c Author: Lukasz Lenart Authored: Wed Mar 8 17:52:01 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:52:01 2017 +0100 -- .../apache/struts2/config/StrutsXmlConfigurationProvider.java| 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/741f3fa1/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java -- diff --git a/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java b/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java index e39e475..75b8f64 100644 --- a/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java +++ b/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java @@ -62,10 +62,10 @@ public class StrutsXmlConfigurationProvider extends XmlConfigurationProvider { * Constructs the configuration provider * * @param filename The filename to look for - * @param errorIfMissing If we should throw an exception if the file can't be found + * @param errorIfMissing If we should throw an exception if the file can't be found, @deprecated and should be dropped * @param ctx Our ServletContext */ -public StrutsXmlConfigurationProvider(String filename, boolean errorIfMissing, ServletContext ctx) { +public StrutsXmlConfigurationProvider(String filename, @Deprecated boolean errorIfMissing, ServletContext ctx) { super(filename, errorIfMissing); this.servletContext = ctx; this.filename = filename;
[02/24] struts git commit: Defines LocalizedTextUtil as a bean
Defines LocalizedTextUtil as a bean Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/ae09c6a0 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/ae09c6a0 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/ae09c6a0 Branch: refs/heads/master Commit: ae09c6a0878ea3beac58567b58cfbdea261f4945 Parents: b3b8b90 Author: Lukasz Lenart Authored: Wed Mar 8 17:41:42 2017 +0100 Committer: Lukasz Lenart Committed: Wed Mar 8 17:41:42 2017 +0100 -- core/src/main/resources/struts-default.xml | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/struts/blob/ae09c6a0/core/src/main/resources/struts-default.xml -- diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 26c89ea..d8e80f1 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,6 +130,7 @@ +
[15/24] struts git commit: Extends constructors to inject LocalizedTextUtil
Extends constructors to inject LocalizedTextUtil Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/ca0f6292 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/ca0f6292 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/ca0f6292 Branch: refs/heads/master Commit: ca0f62925ab6338823f454799f521208ed0dd6e7 Parents: f1a963b Author: Lukasz Lenart Authored: Mon Mar 13 09:10:19 2017 +0100 Committer: Lukasz Lenart Committed: Mon Mar 13 09:10:19 2017 +0100 -- .../com/opensymphony/xwork2/TextProviderFactory.java | 11 +-- .../com/opensymphony/xwork2/TextProviderSupport.java | 6 -- 2 files changed, 13 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/struts/blob/ca0f6292/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java index b00f451..43c6792 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java @@ -16,6 +16,7 @@ package com.opensymphony.xwork2; import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.util.LocalizedTextUtil; import java.util.ResourceBundle; @@ -29,6 +30,7 @@ public class TextProviderFactory { private TextProvider textProvider; private LocaleProvider localeProvider; +private LocalizedTextUtil localizedTextUtil; @Inject public void setTextProvider(TextProvider textProvider) { @@ -40,6 +42,11 @@ public class TextProviderFactory { this.localeProvider = localeProvider; } +@Inject +public void setLocalizedTextUtil(LocalizedTextUtil localizedTextUtil) { +this.localizedTextUtil = localizedTextUtil; +} + public TextProvider createInstance(Class clazz) { TextProvider instance = getTextProvider(clazz); if (instance instanceof ResourceBundleTextProvider) { @@ -60,7 +67,7 @@ public class TextProviderFactory { protected TextProvider getTextProvider(Class clazz) { if (this.textProvider == null) { -return new TextProviderSupport(clazz, localeProvider); +return new TextProviderSupport(clazz, localeProvider, localizedTextUtil); } else { return textProvider; } @@ -68,7 +75,7 @@ public class TextProviderFactory { private TextProvider getTextProvider(ResourceBundle bundle) { if (this.textProvider == null) { -textProvider = new TextProviderSupport(bundle, localeProvider); +return new TextProviderSupport(bundle, localeProvider, localizedTextUtil); } return textProvider; } http://git-wip-us.apache.org/repos/asf/struts/blob/ca0f6292/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java -- diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java index ab37e92..98dd3d2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java @@ -47,9 +47,10 @@ public class TextProviderSupport implements ResourceBundleTextProvider { * @param clazza clazz to use for reading the resource bundle. * @param provider a locale provider. */ -public TextProviderSupport(Class clazz, LocaleProvider provider) { +public TextProviderSupport(Class clazz, LocaleProvider provider, LocalizedTextUtil localizedTextUtil) { this.clazz = clazz; this.localeProvider = provider; +this.localizedTextUtil = localizedTextUtil; } /** @@ -58,9 +59,10 @@ public class TextProviderSupport implements ResourceBundleTextProvider { * @param bundle the resource bundle. * @param provider a locale provider. */ -public TextProviderSupport(ResourceBundle bundle, LocaleProvider provider) { +public TextProviderSupport(ResourceBundle bundle, LocaleProvider provider, LocalizedTextUtil localizedTextUtil) { this.bundle = bundle; this.localeProvider = provider; +this.localizedTextUtil = localizedTextUtil; } /**
[23/24] struts git commit: Adds info about new extension point
Adds info about new extension point Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/fefb91fe Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/fefb91fe Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/fefb91fe Branch: refs/heads/master Commit: fefb91fe118bc4518196c4086a63960558454ed5 Parents: 3a84a62 Author: Lukasz Lenart Authored: Tue Mar 14 10:11:23 2017 +0100 Committer: Lukasz Lenart Committed: Tue Mar 14 10:11:23 2017 +0100 -- .../apache/struts2/config/DefaultBeanSelectionProvider.java| 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/struts/blob/fefb91fe/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java -- diff --git a/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java b/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java index 6e5bf8b..a89ae9a 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java @@ -333,6 +333,12 @@ import org.apache.struts2.views.velocity.VelocityManager; * singleton * Matches content type of uploaded files (since 2.3.22) * + * + * com.opensymphony.xwork2.LocalizedTextProvider + * struts.localizedTextProvider + * singleton + * Provides access to resource bundles used to localise messages (since 2.5.11) + * * * *