From 4f46f151844bcef39cd631a6fb1cd781fd34224a Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 16 Mar 2017 14:39:06 +0100 Subject: [PATCH 0001/2288] Adds missing class header with license --- .../xwork2/DefaultLocaleProvider.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index 19c8f5dc2c..7fbc2bc382 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -1,3 +1,18 @@ +/* + * 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.util.DefaultLocalizedTextProvider; From 9376bb0ca16595cac0a1d03fb7b4fa55ab66a8f3 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 16 Mar 2017 14:43:07 +0100 Subject: [PATCH 0002/2288] Renames TextProviderFactory into StrutsTextProviderFactory --- ...roviderFactory.java => StrutsTextProviderFactory.java} | 2 +- .../config/providers/XWorkConfigurationProvider.java | 6 ++---- .../validator/AnnotationActionValidatorManager.java | 4 ++-- .../xwork2/validator/DefaultActionValidatorManager.java | 6 +++--- .../xwork2/validator/DelegatingValidatorContext.java | 6 +++--- .../xwork2/validator/validators/ValidatorSupport.java | 6 +++--- .../src/main/java/org/apache/struts2/components/I18n.java | 4 ++-- .../struts2/config/DefaultBeanSelectionProvider.java | 4 ++-- .../apache/struts2/interceptor/FileUploadInterceptor.java | 2 +- core/src/main/resources/struts-default.xml | 2 +- .../opensymphony/xwork2/CompositeTextProviderTest.java | 2 +- .../validator/AnnotationActionValidatorManagerTest.java | 6 +++--- .../validator/ConversionErrorFieldValidatorTest.java | 4 ++-- .../xwork2/validator/DoubleRangeValidatorTest.java | 4 ++-- .../xwork2/validator/DummyValidatorContext.java | 4 ++-- .../opensymphony/xwork2/validator/EmailValidatorTest.java | 6 +++--- .../xwork2/validator/ExpressionValidatorTest.java | 4 ++-- .../xwork2/validator/RegexFieldValidatorTest.java | 6 +++--- ...epopulateConversionErrorFieldValidatorSupportTest.java | 4 ++-- .../xwork2/validator/SimpleActionValidationTest.java | 2 +- .../xwork2/validator/StringLengthFieldValidatorTest.java | 4 ++-- .../xwork2/validator/StringValidatorTest.java | 6 +++--- .../opensymphony/xwork2/validator/URLValidatorTest.java | 6 +++--- .../validators/AppendingValidatorContextTest.java | 4 ++-- .../validator/validators/DateRangeFieldValidatorTest.java | 6 +++--- .../validator/validators/IntRangeFieldValidatorTest.java | 6 +++--- .../validator/validators/LongRangeFieldValidatorTest.java | 6 +++--- .../validator/validators/RequiredStringValidatorTest.java | 6 +++--- .../validators/ShortRangeFieldValidatorTest.java | 6 +++--- .../validation/interceptor/BeanValidationInterceptor.java | 6 +++--- .../oval/interceptor/OValValidationInterceptor.java | 6 +++--- .../org/apache/struts2/tiles/I18NAttributeEvaluator.java | 8 ++------ 32 files changed, 74 insertions(+), 80 deletions(-) rename core/src/main/java/com/opensymphony/xwork2/{TextProviderFactory.java => StrutsTextProviderFactory.java} (98%) diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java similarity index 98% rename from core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java rename to core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index 4d55d6c0ae..c5123af86e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -25,7 +25,7 @@ * @author Oleg Gorobets * @author Rene Gielen */ -public class TextProviderFactory { +public class StrutsTextProviderFactory { private TextProvider textProvider; private LocaleProviderFactory localeProviderFactory; 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 5c912e1fce..d29cf0ef1b 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 @@ -4,7 +4,7 @@ import com.opensymphony.xwork2.DefaultActionProxyFactory; import com.opensymphony.xwork2.DefaultLocaleProviderFactory; import com.opensymphony.xwork2.LocaleProviderFactory; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.factory.DefaultUnknownHandlerFactory; import com.opensymphony.xwork2.factory.UnknownHandlerFactory; import com.opensymphony.xwork2.ognl.accessor.HttpParametersPropertyAccessor; @@ -12,13 +12,11 @@ import com.opensymphony.xwork2.security.AcceptedPatternsChecker; import com.opensymphony.xwork2.security.DefaultAcceptedPatternsChecker; import com.opensymphony.xwork2.security.DefaultExcludedPatternsChecker; -import com.opensymphony.xwork2.DefaultLocaleProvider; import com.opensymphony.xwork2.DefaultTextProvider; import com.opensymphony.xwork2.DefaultUnknownHandlerManager; import com.opensymphony.xwork2.security.ExcludedPatternsChecker; import com.opensymphony.xwork2.FileManager; import com.opensymphony.xwork2.FileManagerFactory; -import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.ObjectFactory; import com.opensymphony.xwork2.TextProvider; import com.opensymphony.xwork2.TextProviderSupport; @@ -183,7 +181,7 @@ public void register(ContainerBuilder builder, LocatableProperties props) .factory(ActionValidatorManager.class, AnnotationActionValidatorManager.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, "no-annotations", DefaultActionValidatorManager.class, Scope.SINGLETON) - .factory(TextProviderFactory.class, Scope.SINGLETON) + .factory(StrutsTextProviderFactory.class, Scope.SINGLETON) .factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON) .factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON) .factory(TextProvider.class, TextProviderSupport.class, Scope.SINGLETON) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java index cd6fa4e857..2e0fc3022e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java @@ -52,7 +52,7 @@ public class AnnotationActionValidatorManager implements ActionValidatorManager private ValidatorFileParser validatorFileParser; private FileManager fileManager; private boolean reloadingConfigs; - private TextProviderFactory textProviderFactory; + private StrutsTextProviderFactory textProviderFactory; @Inject public void setValidatorFactory(ValidatorFactory fac) { @@ -75,7 +75,7 @@ public void setReloadingConfigs(String reloadingConfigs) { } @Inject - public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java index 48d552a010..85237c9c0b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java @@ -18,7 +18,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.FileManager; import com.opensymphony.xwork2.FileManagerFactory; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkConstants; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.ClassLoaderUtil; @@ -63,7 +63,7 @@ public class DefaultActionValidatorManager implements ActionValidatorManager { private ValidatorFileParser validatorFileParser; private FileManager fileManager; private boolean reloadingConfigs; - private TextProviderFactory textProviderFactory; + private StrutsTextProviderFactory textProviderFactory; @Inject public void setValidatorFileParser(ValidatorFileParser parser) { @@ -86,7 +86,7 @@ public void setReloadingConfigs(String reloadingConfigs) { } @Inject - public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } 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 b8921e9162..3c75e2b547 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java @@ -57,7 +57,7 @@ public DelegatingValidatorContext(ValidationAware validationAware, TextProvider * * @param object the object to use for validation (usually an Action). */ - public DelegatingValidatorContext(Object object, TextProviderFactory textProviderFactory) { + public DelegatingValidatorContext(Object object, StrutsTextProviderFactory textProviderFactory) { this.localeProvider = makeLocaleProvider(object); this.validationAware = makeValidationAware(object); this.textProvider = makeTextProvider(object, textProviderFactory); @@ -74,7 +74,7 @@ public DelegatingValidatorContext(Object object, TextProviderFactory textProvide @Deprecated public DelegatingValidatorContext(Class clazz) { localeProvider = new ActionContextLocaleProvider(); - textProvider = new TextProviderFactory().createInstance(clazz); + textProvider = new StrutsTextProviderFactory().createInstance(clazz); validationAware = new LoggingValidationAware(clazz); } @@ -196,7 +196,7 @@ public boolean hasFieldErrors() { return validationAware.hasFieldErrors(); } - public TextProvider makeTextProvider(Object object, TextProviderFactory textProviderFactory) { + public TextProvider makeTextProvider(Object object, StrutsTextProviderFactory textProviderFactory) { // the object argument passed through here will most probably be an ActionSupport descendant which does // implements TextProvider. if (object != null && object instanceof DelegatingValidatorContext) { diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java index 3cfdb4bad0..f99db43866 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java @@ -15,7 +15,7 @@ */ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; @@ -47,10 +47,10 @@ public abstract class ValidatorSupport implements Validator, ShortCircuitableVal private String[] messageParameters; protected ValueStack stack; - protected TextProviderFactory textProviderFactory; + protected StrutsTextProviderFactory textProviderFactory; @Inject - public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/core/src/main/java/org/apache/struts2/components/I18n.java b/core/src/main/java/org/apache/struts2/components/I18n.java index 89e38bb886..6d173efd01 100644 --- a/core/src/main/java/org/apache/struts2/components/I18n.java +++ b/core/src/main/java/org/apache/struts2/components/I18n.java @@ -31,7 +31,7 @@ import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; @@ -126,7 +126,7 @@ public boolean start(Writer writer) { } if (bundle != null) { - TextProviderFactory tpf = container.inject(TextProviderFactory.class); + StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); textProvider = tpf.createInstance(bundle); getStack().push(textProvider); pushed = true; 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 f77f8aedc9..2f1db950cb 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java @@ -24,7 +24,7 @@ import com.opensymphony.xwork2.ActionProxyFactory; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.LocalizedTextProvider; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.factory.UnknownHandlerFactory; import com.opensymphony.xwork2.security.AcceptedPatternsChecker; import com.opensymphony.xwork2.security.ExcludedPatternsChecker; @@ -398,7 +398,7 @@ public void register(ContainerBuilder builder, LocatableProperties props) { alias(TypeConverterHolder.class, StrutsConstants.STRUTS_CONVERTER_HOLDER, builder, props); alias(TextProvider.class, StrutsConstants.STRUTS_XWORKTEXTPROVIDER, builder, props, Scope.PROTOTYPE); - alias(TextProviderFactory.class, StrutsConstants.STRUTS_TEXT_PROVIDER_FACTORY, builder, props, Scope.PROTOTYPE); + alias(StrutsTextProviderFactory.class, StrutsConstants.STRUTS_TEXT_PROVIDER_FACTORY, builder, props, Scope.PROTOTYPE); alias(LocaleProviderFactory.class, StrutsConstants.STRUTS_LOCALE_PROVIDER_FACTORY, builder, props); alias(LocalizedTextProvider.class, StrutsConstants.STRUTS_LOCALIZED_TEXT_PROVIDER, builder, props); diff --git a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java index b00f2e3a24..138b03314e 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java @@ -446,7 +446,7 @@ protected String getTextMessage(Object action, String messageKey, String[] args) } private TextProvider getTextProvider(Object action) { - TextProviderFactory tpf = container.inject(TextProviderFactory.class); + StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); return tpf.createInstance(action.getClass()); } diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 3a4f6ee9a7..b0c07697dd 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,7 +130,7 @@ - + diff --git a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java index 729090298d..ab5c1707aa 100644 --- a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java @@ -77,7 +77,7 @@ public void testGetResourceBundle() throws Exception { protected void setUp() throws Exception { super.setUp(); - TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); + StrutsTextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); tpf.setTextProvider(null); ActionContext.getContext().setLocale(Locale.ENGLISH); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java index 89c21e391e..c2b3ba2c51 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java @@ -24,7 +24,7 @@ import com.opensymphony.xwork2.FileManagerFactory; import com.opensymphony.xwork2.SimpleAction; import com.opensymphony.xwork2.SimpleAnnotationAction; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.test.AnnotationDataAware2; @@ -59,7 +59,7 @@ public class AnnotationActionValidatorManagerTest extends XWorkTestCase { protected final String alias = "annotationValidationAlias"; AnnotationActionValidatorManager annotationActionValidatorManager; - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; @Override protected void setUp() throws Exception { super.setUp(); @@ -81,7 +81,7 @@ public class AnnotationActionValidatorManagerTest extends XWorkTestCase { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.getInstance(TextProviderFactory.class); + tpf = container.getInstance(StrutsTextProviderFactory.class); } @Override protected void tearDown() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java index 8182d779ae..9cdeac00db 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.interceptor.ValidationAware; import com.opensymphony.xwork2.ValidationAwareSupport; import com.opensymphony.xwork2.XWorkTestCase; @@ -53,7 +53,7 @@ public void setUp() throws Exception { validator = new ConversionErrorFieldValidator(); validationAware = new ValidationAwareSupport(); - DelegatingValidatorContext validatorContext = new DelegatingValidatorContext(validationAware, container.inject(TextProviderFactory.class)); + DelegatingValidatorContext validatorContext = new DelegatingValidatorContext(validationAware, container.inject(StrutsTextProviderFactory.class)); stack.push(validatorContext); validator.setValidatorContext(validatorContext); validator.setFieldName("foo"); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java index 3f75a1455d..bd3d9dabe9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java @@ -21,7 +21,7 @@ */ public class DoubleRangeValidatorTest extends XWorkTestCase { private DoubleRangeFieldValidator val; - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testRangeValidationWithError() throws Exception { //Explicitly set an out-of-range double for DoubleRangeValidatorTest @@ -237,7 +237,7 @@ protected void setUp() throws Exception { val = new DoubleRangeFieldValidator(); val.setValueStack(ActionContext.getContext().getValueStack()); ActionContext.getContext().setParameters(HttpParameters.create().build()); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } @Override diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java b/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java index e0f5f33e4a..d9e138cde0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java @@ -15,7 +15,7 @@ */ package com.opensymphony.xwork2.validator; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import java.util.*; @@ -33,7 +33,7 @@ public class DummyValidatorContext extends DelegatingValidatorContext { private Map> fieldErrors; - public DummyValidatorContext(Object object, TextProviderFactory tpf) { + public DummyValidatorContext(Object object, StrutsTextProviderFactory tpf) { super(object, tpf); } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java index ae8c036f39..5a66920d9f 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.EmailValidator; @@ -30,7 +30,7 @@ */ public class EmailValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testEmailValidity() throws Exception { assertTrue(verifyEmailValidity("TmJee@Yahoo.com")); @@ -162,6 +162,6 @@ public boolean getTrimEmail() { public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java index 30613a40f4..7ce38c5e1e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java @@ -38,7 +38,7 @@ */ public class ExpressionValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testExpressionValidationOfStringLength() throws ValidationException { TestBean bean = new TestBean(); @@ -139,7 +139,7 @@ protected void setUp() throws Exception { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java index 5c7e94b059..6dd8e3faee 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.RegexFieldValidator; @@ -37,11 +37,11 @@ */ public class RegexFieldValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } public void testMatch() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java index c4aa1783c8..ad8418b6c5 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.mock.MockActionInvocation; import com.opensymphony.xwork2.util.ValueStack; @@ -92,7 +92,7 @@ protected void setUp() throws Exception { conversionErrors.put("someFieldName", conversionErrorValue); conversionErrors.put("xxxsomeFieldName", conversionErrorValue); - TextProviderFactory tpf = container.inject(TextProviderFactory.class); + StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); action = container.inject(ActionSupport.class); validator1 = diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java index 991a75eadf..e737dde92c 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java @@ -153,7 +153,7 @@ public void validate(Object object) throws ValidationException { SimpleAction action = new SimpleAction(); container.inject(action); - ValidatorContext validatorContext = new DelegatingValidatorContext(action, container.inject(TextProviderFactory.class)); + ValidatorContext validatorContext = new DelegatingValidatorContext(action, container.inject(StrutsTextProviderFactory.class)); validator.setValidatorContext(validatorContext); validator.validate(this); assertTrue(validatorContext.hasActionErrors()); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java index 884d4951b0..b8f34721ca 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator; @@ -163,7 +163,7 @@ protected void setUp() throws Exception { validator = new StringLengthFieldValidator(); validator.setFieldName("myField"); validator.setMessageKey("error"); - validator.setValidatorContext(new DelegatingValidatorContext(action, container.inject(TextProviderFactory.class))); + validator.setValidatorContext(new DelegatingValidatorContext(action, container.inject(StrutsTextProviderFactory.class))); validator.setMaxLength(5); validator.setMinLength(2); validator.setValueStack(valueStack); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java index c737d972b9..0ca581c962 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java @@ -19,7 +19,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.ValidationAwareSupport; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.entities.ActionConfig; @@ -37,7 +37,7 @@ */ public class StringValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testRequiredStringWithNullValue() throws Exception { Equidae equidae = new Equidae(); @@ -217,6 +217,6 @@ protected void setUp() throws Exception { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java index ff9ab5041a..d377bc9654 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.URLValidator; @@ -37,7 +37,7 @@ public class URLValidatorTest extends XWorkTestCase { ValueStack stack; ActionContext actionContext; - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testAcceptNullValueForMutualExclusionOfValidators() throws Exception { @@ -205,7 +205,7 @@ protected void setUp() throws Exception { super.setUp(); stack = ActionContext.getContext().getValueStack(); actionContext = ActionContext.getContext(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } @Override diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java index 0446e972e5..5727e45186 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java @@ -6,7 +6,7 @@ import com.opensymphony.xwork2.CompositeTextProvider; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; import com.opensymphony.xwork2.validator.ValidatorContext; @@ -28,7 +28,7 @@ protected void setUp() throws Exception { super.setUp(); action = container.inject(VisitorValidatorTestAction.class); - TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); + StrutsTextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); ValidatorContext vc1 = new DelegatingValidatorContext(action, tpf); VisitorFieldValidator.AppendingValidatorContext vc2 = new AppendingValidatorContext(vc1, createTextProvider(action, vc1), FIRST_NAME, ""); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java index 6129fc0ae8..789c6a468e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java @@ -1,7 +1,7 @@ package com.opensymphony.xwork2.validator.validators; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -14,7 +14,7 @@ public class DateRangeFieldValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void testPassValidation() throws Exception { // given @@ -91,7 +91,7 @@ private DateRangeFieldValidator prepareValidator(ValidationAction action, Valida public void setUp() throws Exception { super.setUp(); ActionContext.getContext().setLocale(new Locale("DE")); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java index 77037328b5..26dd422f98 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class IntRangeFieldValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java index bc14b57aaa..bc26cb4a62 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class LongRangeFieldValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java index 1495733f90..614c406aa0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java @@ -2,7 +2,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.DummyValidatorContext; @@ -10,11 +10,11 @@ public class RequiredStringValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } public void testRequiredStringPass() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java index bb2766405c..e6d3fb235f 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class ShortRangeFieldValidatorTest extends XWorkTestCase { - private TextProviderFactory tpf; + private StrutsTextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(TextProviderFactory.class); + tpf = container.inject(StrutsTextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index 3123a4b509..27660fb9d2 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -23,7 +23,7 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.ModelDriven; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; import com.opensymphony.xwork2.util.AnnotationUtils; @@ -58,7 +58,7 @@ public class BeanValidationInterceptor extends MethodFilterInterceptor { private static final Logger LOG = LogManager.getLogger(BeanValidationInterceptor.class); protected BeanValidationManager beanValidationManager; - protected TextProviderFactory textProviderFactory; + protected StrutsTextProviderFactory textProviderFactory; protected boolean convertToUtf8 = false; protected String convertFromEncoding = "ISO-8859-1"; @@ -68,7 +68,7 @@ public void setBeanValidationManager(BeanValidationManager beanValidationManager } @Inject - public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java index 473c9a7a17..2373b16b3b 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java @@ -23,7 +23,7 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.ModelDriven; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.Validateable; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; @@ -59,7 +59,7 @@ public class OValValidationInterceptor extends MethodFilterInterceptor { protected boolean programmatic = true; protected OValValidationManager validationManager; protected boolean validateJPAAnnotations; - protected TextProviderFactory textProviderFactory; + protected StrutsTextProviderFactory textProviderFactory; @Inject public void setValidationManager(OValValidationManager validationManager) { @@ -67,7 +67,7 @@ public void setValidationManager(OValValidationManager validationManager) { } @Inject - public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java index 647a289e1f..d1a3442658 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java @@ -20,17 +20,13 @@ package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.config.ConfigurationException; -import com.opensymphony.xwork2.ognl.OgnlUtil; -import ognl.OgnlException; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.struts2.ServletActionContext; import org.apache.tiles.evaluator.AbstractAttributeEvaluator; -import org.apache.tiles.evaluator.EvaluationException; import org.apache.tiles.request.Request; import org.apache.tiles.request.servlet.ServletUtil; @@ -52,7 +48,7 @@ public Object evaluate(String expression, Request request) { throw new ConfigurationException("There is no ActionContext for current request!"); } - TextProviderFactory tpf = ctx.getContainer().inject(TextProviderFactory.class); + StrutsTextProviderFactory tpf = ctx.getContainer().inject(StrutsTextProviderFactory.class); TextProvider textProvider = tpf.createInstance(ctx.getActionInvocation().getAction().getClass()); if (textProvider != null) { From 54974223fa1f6a66d8c1d61b7b18c94ef5c50386 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 16 Mar 2017 14:55:35 +0100 Subject: [PATCH 0003/2288] Extracts TextProviderFactory interface --- .../xwork2/StrutsTextProviderFactory.java | 4 ++- .../xwork2/TextProviderFactory.java | 26 +++++++++++++++++++ .../AnnotationActionValidatorManager.java | 4 +-- .../DefaultActionValidatorManager.java | 6 ++--- .../validator/DelegatingValidatorContext.java | 4 +-- .../validators/ValidatorSupport.java | 16 ++++++------ .../org/apache/struts2/components/I18n.java | 8 +++--- .../interceptor/FileUploadInterceptor.java | 2 +- core/src/main/resources/struts-default.xml | 3 +-- .../AnnotationActionValidatorManagerTest.java | 3 ++- .../ConversionErrorFieldValidatorTest.java | 4 +-- .../validator/DoubleRangeValidatorTest.java | 4 +-- .../validator/DummyValidatorContext.java | 4 +-- .../xwork2/validator/EmailValidatorTest.java | 6 ++--- .../validator/ExpressionValidatorTest.java | 4 +-- .../validator/RegexFieldValidatorTest.java | 6 ++--- ...versionErrorFieldValidatorSupportTest.java | 4 +-- .../validator/SimpleActionValidationTest.java | 2 +- .../StringLengthFieldValidatorTest.java | 4 +-- .../xwork2/validator/StringValidatorTest.java | 6 ++--- .../xwork2/validator/URLValidatorTest.java | 6 ++--- .../AppendingValidatorContextTest.java | 3 ++- .../DateRangeFieldValidatorTest.java | 6 ++--- .../IntRangeFieldValidatorTest.java | 6 ++--- .../LongRangeFieldValidatorTest.java | 6 ++--- .../RequiredStringValidatorTest.java | 6 ++--- .../ShortRangeFieldValidatorTest.java | 6 ++--- .../BeanValidationInterceptor.java | 6 ++--- .../OValValidationInterceptor.java | 6 ++--- .../struts2/tiles/I18NAttributeEvaluator.java | 4 +-- 30 files changed, 102 insertions(+), 73 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index c5123af86e..7c703b7218 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -25,7 +25,7 @@ * @author Oleg Gorobets * @author Rene Gielen */ -public class StrutsTextProviderFactory { +public class StrutsTextProviderFactory implements TextProviderFactory { private TextProvider textProvider; private LocaleProviderFactory localeProviderFactory; @@ -46,6 +46,7 @@ public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider this.localizedTextProvider = localizedTextProvider; } + @Override public TextProvider createInstance(Class clazz) { TextProvider instance = getTextProvider(clazz); if (instance instanceof ResourceBundleTextProvider) { @@ -55,6 +56,7 @@ public TextProvider createInstance(Class clazz) { return instance; } + @Override public TextProvider createInstance(ResourceBundle bundle) { TextProvider instance = getTextProvider(bundle); if (instance instanceof ResourceBundleTextProvider) { diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java new file mode 100644 index 0000000000..e9b06238a9 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java @@ -0,0 +1,26 @@ +/* + * Copyright 2002-2007,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 java.util.ResourceBundle; + +public interface TextProviderFactory { + + TextProvider createInstance(Class clazz); + + TextProvider createInstance(ResourceBundle bundle); + +} diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java index 2e0fc3022e..cd6fa4e857 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java @@ -52,7 +52,7 @@ public class AnnotationActionValidatorManager implements ActionValidatorManager private ValidatorFileParser validatorFileParser; private FileManager fileManager; private boolean reloadingConfigs; - private StrutsTextProviderFactory textProviderFactory; + private TextProviderFactory textProviderFactory; @Inject public void setValidatorFactory(ValidatorFactory fac) { @@ -75,7 +75,7 @@ public void setReloadingConfigs(String reloadingConfigs) { } @Inject - public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java index 85237c9c0b..48d552a010 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java @@ -18,7 +18,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.FileManager; import com.opensymphony.xwork2.FileManagerFactory; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkConstants; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.ClassLoaderUtil; @@ -63,7 +63,7 @@ public class DefaultActionValidatorManager implements ActionValidatorManager { private ValidatorFileParser validatorFileParser; private FileManager fileManager; private boolean reloadingConfigs; - private StrutsTextProviderFactory textProviderFactory; + private TextProviderFactory textProviderFactory; @Inject public void setValidatorFileParser(ValidatorFileParser parser) { @@ -86,7 +86,7 @@ public void setReloadingConfigs(String reloadingConfigs) { } @Inject - public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } 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 3c75e2b547..0e3fe97dd4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java @@ -57,7 +57,7 @@ public DelegatingValidatorContext(ValidationAware validationAware, TextProvider * * @param object the object to use for validation (usually an Action). */ - public DelegatingValidatorContext(Object object, StrutsTextProviderFactory textProviderFactory) { + public DelegatingValidatorContext(Object object, TextProviderFactory textProviderFactory) { this.localeProvider = makeLocaleProvider(object); this.validationAware = makeValidationAware(object); this.textProvider = makeTextProvider(object, textProviderFactory); @@ -196,7 +196,7 @@ public boolean hasFieldErrors() { return validationAware.hasFieldErrors(); } - public TextProvider makeTextProvider(Object object, StrutsTextProviderFactory textProviderFactory) { + public TextProvider makeTextProvider(Object object, TextProviderFactory textProviderFactory) { // the object argument passed through here will most probably be an ActionSupport descendant which does // implements TextProvider. if (object != null && object instanceof DelegatingValidatorContext) { diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java index f99db43866..2173a2f9b1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java @@ -15,7 +15,7 @@ */ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; @@ -37,20 +37,20 @@ */ public abstract class ValidatorSupport implements Validator, ShortCircuitableValidator { - protected final Logger log = LogManager.getLogger(this.getClass()); + private static final Logger LOG = LogManager.getLogger(ValidatorSupport.class); - protected String defaultMessage = ""; - protected String messageKey; private ValidatorContext validatorContext; private boolean shortCircuit; private String type; private String[] messageParameters; - protected ValueStack stack; - protected StrutsTextProviderFactory textProviderFactory; + protected String defaultMessage = ""; + protected String messageKey; + protected ValueStack stack; + protected TextProviderFactory textProviderFactory; @Inject - public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } @@ -97,7 +97,7 @@ public String getMessage(Object object) { } catch (Exception e) { // if there's an exception in parsing, we'll just treat the expression itself as the // parameter - log.warn("exception while parsing message parameter [{}]", messageParameter, e); + LOG.warn("exception while parsing message parameter [{}]", messageParameter, e); parsedMessageParameters.add(messageParameter); } } diff --git a/core/src/main/java/org/apache/struts2/components/I18n.java b/core/src/main/java/org/apache/struts2/components/I18n.java index 6d173efd01..faacea450f 100644 --- a/core/src/main/java/org/apache/struts2/components/I18n.java +++ b/core/src/main/java/org/apache/struts2/components/I18n.java @@ -25,16 +25,16 @@ import java.util.ResourceBundle; import com.opensymphony.xwork2.LocaleProviderFactory; +import com.opensymphony.xwork2.LocalizedTextProvider; +import com.opensymphony.xwork2.TextProviderFactory; import org.apache.struts2.views.annotations.StrutsTag; import org.apache.struts2.views.annotations.StrutsTagAttribute; import org.apache.struts2.StrutsException; import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.ValueStack; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -122,11 +122,11 @@ public boolean start(Writer writer) { ResourceBundle bundle = defaultTextProvider.getTexts(name); if (bundle == null) { - bundle = container.getInstance(DefaultLocalizedTextProvider.class).findResourceBundle(name, localeProvider.getLocale()); + bundle = container.getInstance(LocalizedTextProvider.class).findResourceBundle(name, localeProvider.getLocale()); } if (bundle != null) { - StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); textProvider = tpf.createInstance(bundle); getStack().push(textProvider); pushed = true; diff --git a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java index 138b03314e..a392813b08 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java @@ -446,7 +446,7 @@ protected String getTextMessage(Object action, String messageKey, String[] args) } private TextProvider getTextProvider(Object action) { - StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); return tpf.createInstance(action.getClass()); } diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index b0c07697dd..72d6a699ec 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,9 +130,8 @@ - - + diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java index c2b3ba2c51..8a9a4cdfb4 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java @@ -25,6 +25,7 @@ import com.opensymphony.xwork2.SimpleAction; import com.opensymphony.xwork2.SimpleAnnotationAction; import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.test.AnnotationDataAware2; @@ -59,7 +60,7 @@ public class AnnotationActionValidatorManagerTest extends XWorkTestCase { protected final String alias = "annotationValidationAlias"; AnnotationActionValidatorManager annotationActionValidatorManager; - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; @Override protected void setUp() throws Exception { super.setUp(); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java index 9cdeac00db..411dbf8c6b 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/ConversionErrorFieldValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.interceptor.ValidationAware; import com.opensymphony.xwork2.ValidationAwareSupport; import com.opensymphony.xwork2.XWorkTestCase; @@ -53,7 +53,7 @@ public void setUp() throws Exception { validator = new ConversionErrorFieldValidator(); validationAware = new ValidationAwareSupport(); - DelegatingValidatorContext validatorContext = new DelegatingValidatorContext(validationAware, container.inject(StrutsTextProviderFactory.class)); + DelegatingValidatorContext validatorContext = new DelegatingValidatorContext(validationAware, container.getInstance(TextProviderFactory.class)); stack.push(validatorContext); validator.setValidatorContext(validatorContext); validator.setFieldName("foo"); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java index bd3d9dabe9..e60d24768f 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java @@ -21,7 +21,7 @@ */ public class DoubleRangeValidatorTest extends XWorkTestCase { private DoubleRangeFieldValidator val; - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testRangeValidationWithError() throws Exception { //Explicitly set an out-of-range double for DoubleRangeValidatorTest @@ -237,7 +237,7 @@ protected void setUp() throws Exception { val = new DoubleRangeFieldValidator(); val.setValueStack(ActionContext.getContext().getValueStack()); ActionContext.getContext().setParameters(HttpParameters.create().build()); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } @Override diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java b/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java index d9e138cde0..e0f5f33e4a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DummyValidatorContext.java @@ -15,7 +15,7 @@ */ package com.opensymphony.xwork2.validator; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import java.util.*; @@ -33,7 +33,7 @@ public class DummyValidatorContext extends DelegatingValidatorContext { private Map> fieldErrors; - public DummyValidatorContext(Object object, StrutsTextProviderFactory tpf) { + public DummyValidatorContext(Object object, TextProviderFactory tpf) { super(object, tpf); } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java index 5a66920d9f..dffad12ce3 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/EmailValidatorTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.EmailValidator; @@ -30,7 +30,7 @@ */ public class EmailValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testEmailValidity() throws Exception { assertTrue(verifyEmailValidity("TmJee@Yahoo.com")); @@ -162,6 +162,6 @@ public boolean getTrimEmail() { public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java index 7ce38c5e1e..92c5a5acb0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/ExpressionValidatorTest.java @@ -38,7 +38,7 @@ */ public class ExpressionValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testExpressionValidationOfStringLength() throws ValidationException { TestBean bean = new TestBean(); @@ -139,7 +139,7 @@ protected void setUp() throws Exception { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java index 6dd8e3faee..4fa50fd79a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.RegexFieldValidator; @@ -37,11 +37,11 @@ */ public class RegexFieldValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } public void testMatch() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java index ad8418b6c5..c4aa1783c8 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.mock.MockActionInvocation; import com.opensymphony.xwork2.util.ValueStack; @@ -92,7 +92,7 @@ protected void setUp() throws Exception { conversionErrors.put("someFieldName", conversionErrorValue); conversionErrors.put("xxxsomeFieldName", conversionErrorValue); - StrutsTextProviderFactory tpf = container.inject(StrutsTextProviderFactory.class); + TextProviderFactory tpf = container.inject(TextProviderFactory.class); action = container.inject(ActionSupport.class); validator1 = diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java index e737dde92c..06695eafc7 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/SimpleActionValidationTest.java @@ -153,7 +153,7 @@ public void validate(Object object) throws ValidationException { SimpleAction action = new SimpleAction(); container.inject(action); - ValidatorContext validatorContext = new DelegatingValidatorContext(action, container.inject(StrutsTextProviderFactory.class)); + ValidatorContext validatorContext = new DelegatingValidatorContext(action, container.getInstance(TextProviderFactory.class)); validator.setValidatorContext(validatorContext); validator.validate(this); assertTrue(validatorContext.hasActionErrors()); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java index b8f34721ca..ee6daf7a23 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java @@ -17,7 +17,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator; @@ -163,7 +163,7 @@ protected void setUp() throws Exception { validator = new StringLengthFieldValidator(); validator.setFieldName("myField"); validator.setMessageKey("error"); - validator.setValidatorContext(new DelegatingValidatorContext(action, container.inject(StrutsTextProviderFactory.class))); + validator.setValidatorContext(new DelegatingValidatorContext(action, container.getInstance(TextProviderFactory.class))); validator.setMaxLength(5); validator.setMinLength(2); validator.setValueStack(valueStack); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java index 0ca581c962..45a0211132 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/StringValidatorTest.java @@ -19,7 +19,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.ValidationAwareSupport; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.entities.ActionConfig; @@ -37,7 +37,7 @@ */ public class StringValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testRequiredStringWithNullValue() throws Exception { Equidae equidae = new Equidae(); @@ -217,6 +217,6 @@ protected void setUp() throws Exception { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java index d377bc9654..b961d78f21 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java @@ -16,7 +16,7 @@ package com.opensymphony.xwork2.validator; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.URLValidator; @@ -37,7 +37,7 @@ public class URLValidatorTest extends XWorkTestCase { ValueStack stack; ActionContext actionContext; - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testAcceptNullValueForMutualExclusionOfValidators() throws Exception { @@ -205,7 +205,7 @@ protected void setUp() throws Exception { super.setUp(); stack = ActionContext.getContext().getValueStack(); actionContext = ActionContext.getContext(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } @Override diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java index 5727e45186..52b331a28a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java @@ -7,6 +7,7 @@ import com.opensymphony.xwork2.CompositeTextProvider; import com.opensymphony.xwork2.TextProvider; import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; import com.opensymphony.xwork2.validator.ValidatorContext; @@ -28,7 +29,7 @@ protected void setUp() throws Exception { super.setUp(); action = container.inject(VisitorValidatorTestAction.class); - StrutsTextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); ValidatorContext vc1 = new DelegatingValidatorContext(action, tpf); VisitorFieldValidator.AppendingValidatorContext vc2 = new AppendingValidatorContext(vc1, createTextProvider(action, vc1), FIRST_NAME, ""); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java index 789c6a468e..597a19bb21 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidatorTest.java @@ -1,7 +1,7 @@ package com.opensymphony.xwork2.validator.validators; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -14,7 +14,7 @@ public class DateRangeFieldValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void testPassValidation() throws Exception { // given @@ -91,7 +91,7 @@ private DateRangeFieldValidator prepareValidator(ValidationAction action, Valida public void setUp() throws Exception { super.setUp(); ActionContext.getContext().setLocale(new Locale("DE")); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java index 26dd422f98..229e8fc5fe 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class IntRangeFieldValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java index bc26cb4a62..fc99e8b0f7 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class LongRangeFieldValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java index 614c406aa0..8d4d919f45 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java @@ -2,7 +2,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.DummyValidatorContext; @@ -10,11 +10,11 @@ public class RequiredStringValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } public void testRequiredStringPass() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java index e6d3fb235f..869f439088 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidatorTest.java @@ -1,6 +1,6 @@ package com.opensymphony.xwork2.validator.validators; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -9,11 +9,11 @@ public class ShortRangeFieldValidatorTest extends XWorkTestCase { - private StrutsTextProviderFactory tpf; + private TextProviderFactory tpf; public void setUp() throws Exception { super.setUp(); - tpf = container.inject(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } public void testPassValidation() throws Exception { diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index 27660fb9d2..3123a4b509 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -23,7 +23,7 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.ModelDriven; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; import com.opensymphony.xwork2.util.AnnotationUtils; @@ -58,7 +58,7 @@ public class BeanValidationInterceptor extends MethodFilterInterceptor { private static final Logger LOG = LogManager.getLogger(BeanValidationInterceptor.class); protected BeanValidationManager beanValidationManager; - protected StrutsTextProviderFactory textProviderFactory; + protected TextProviderFactory textProviderFactory; protected boolean convertToUtf8 = false; protected String convertFromEncoding = "ISO-8859-1"; @@ -68,7 +68,7 @@ public void setBeanValidationManager(BeanValidationManager beanValidationManager } @Inject - public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java index 2373b16b3b..473c9a7a17 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java @@ -23,7 +23,7 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.ModelDriven; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.Validateable; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; @@ -59,7 +59,7 @@ public class OValValidationInterceptor extends MethodFilterInterceptor { protected boolean programmatic = true; protected OValValidationManager validationManager; protected boolean validateJPAAnnotations; - protected StrutsTextProviderFactory textProviderFactory; + protected TextProviderFactory textProviderFactory; @Inject public void setValidationManager(OValValidationManager validationManager) { @@ -67,7 +67,7 @@ public void setValidationManager(OValValidationManager validationManager) { } @Inject - public void setTextProviderFactory(StrutsTextProviderFactory textProviderFactory) { + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { this.textProviderFactory = textProviderFactory; } diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java index d1a3442658..1ef7357c70 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java @@ -21,7 +21,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.config.ConfigurationException; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -48,7 +48,7 @@ public Object evaluate(String expression, Request request) { throw new ConfigurationException("There is no ActionContext for current request!"); } - StrutsTextProviderFactory tpf = ctx.getContainer().inject(StrutsTextProviderFactory.class); + TextProviderFactory tpf = ctx.getContainer().getInstance(TextProviderFactory.class); TextProvider textProvider = tpf.createInstance(ctx.getActionInvocation().getAction().getClass()); if (textProvider != null) { From 3b73544a8ff5e9d96885147bf25c7c2598ac6b21 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 07:49:33 +0100 Subject: [PATCH 0004/2288] Uses existing instance instead of creating a new one --- core/src/main/java/com/opensymphony/xwork2/ActionSupport.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java index 0434469dd9..cb1ac47337 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java @@ -275,7 +275,7 @@ public void pause(String result) { */ protected TextProvider getTextProvider() { if (textProvider == null) { - TextProviderFactory tpf = container.inject(TextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); textProvider = tpf.createInstance(getClass()); } return textProvider; From 207ac1774439f72cdfab32c45a3c59ba5a972899 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 07:51:12 +0100 Subject: [PATCH 0005/2288] Defines proper interfaces and default implementation in configuration --- .../xwork2/config/impl/DefaultConfiguration.java | 9 +++++---- .../struts2/config/DefaultBeanSelectionProvider.java | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) 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 c7c5a92775..8882a2f4b9 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 @@ -245,8 +245,6 @@ protected Container createBootstrapContainer(List providers) builder.factory(ReflectionProvider.class, OgnlReflectionProvider.class, Scope.SINGLETON); builder.factory(ValueStackFactory.class, OgnlValueStackFactory.class, Scope.SINGLETON); - builder.factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.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); @@ -261,11 +259,14 @@ protected Container createBootstrapContainer(List providers) builder.factory(TypeConverter.class, XWorkConstants.NUMBER_CONVERTER, NumberConverter.class, Scope.SINGLETON); builder.factory(TypeConverter.class, XWorkConstants.STRING_CONVERTER, StringConverter.class, Scope.SINGLETON); - builder.factory(TextParser.class, OgnlTextParser.class, Scope.SINGLETON); builder.factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON); - builder.factory(TextProvider.class, TextProviderSupport.class, Scope.SINGLETON); + + builder.factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON); + builder.factory(TextProviderFactory.class, StrutsTextProviderFactory.class, Scope.SINGLETON); builder.factory(LocaleProviderFactory.class, DefaultLocaleProviderFactory.class, Scope.SINGLETON); + builder.factory(TextParser.class, OgnlTextParser.class, Scope.SINGLETON); + builder.factory(ObjectTypeDeterminer.class, DefaultObjectTypeDeterminer.class, Scope.SINGLETON); builder.factory(PropertyAccessor.class, CompoundRoot.class.getName(), CompoundRootAccessor.class, Scope.SINGLETON); builder.factory(OgnlUtil.class, Scope.SINGLETON); 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 2f1db950cb..f77f8aedc9 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java @@ -24,7 +24,7 @@ import com.opensymphony.xwork2.ActionProxyFactory; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.LocalizedTextProvider; -import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.factory.UnknownHandlerFactory; import com.opensymphony.xwork2.security.AcceptedPatternsChecker; import com.opensymphony.xwork2.security.ExcludedPatternsChecker; @@ -398,7 +398,7 @@ public void register(ContainerBuilder builder, LocatableProperties props) { alias(TypeConverterHolder.class, StrutsConstants.STRUTS_CONVERTER_HOLDER, builder, props); alias(TextProvider.class, StrutsConstants.STRUTS_XWORKTEXTPROVIDER, builder, props, Scope.PROTOTYPE); - alias(StrutsTextProviderFactory.class, StrutsConstants.STRUTS_TEXT_PROVIDER_FACTORY, builder, props, Scope.PROTOTYPE); + alias(TextProviderFactory.class, StrutsConstants.STRUTS_TEXT_PROVIDER_FACTORY, builder, props, Scope.PROTOTYPE); alias(LocaleProviderFactory.class, StrutsConstants.STRUTS_LOCALE_PROVIDER_FACTORY, builder, props); alias(LocalizedTextProvider.class, StrutsConstants.STRUTS_LOCALIZED_TEXT_PROVIDER, builder, props); From 16d1d60ed826c639d2298b77b27c184d9684f21c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 07:51:57 +0100 Subject: [PATCH 0006/2288] Uses dedicated logger instead the one from parent class --- .../validators/ConditionalVisitorFieldValidator.java | 6 +++++- .../xwork2/validator/validators/ExpressionValidator.java | 8 ++++++-- .../validator/validators/FieldExpressionValidator.java | 8 ++++++-- .../validator/validators/VisitorFieldValidator.java | 6 +++++- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java index 7e92f3fc32..395269897f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java @@ -1,6 +1,8 @@ package com.opensymphony.xwork2.validator.validators; import com.opensymphony.xwork2.validator.ValidationException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** * @@ -29,6 +31,8 @@ */ public class ConditionalVisitorFieldValidator extends VisitorFieldValidator { + private static final Logger LOG = LogManager.getLogger(ConditionalVisitorFieldValidator.class); + private String expression; public void setExpression(String expression) { @@ -75,7 +79,7 @@ public boolean validateExpression(Object object) throws ValidationException { if ((obj != null) && (obj instanceof Boolean)) { answer = (Boolean) obj; } else { - log.warn("Got result of {} when trying to get Boolean.", obj); + LOG.warn("Got result of {} when trying to get Boolean.", obj); } return answer; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java index 6e59af200e..f3e3da0e07 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java @@ -16,6 +16,8 @@ package com.opensymphony.xwork2.validator.validators; import com.opensymphony.xwork2.validator.ValidationException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** * @@ -44,6 +46,8 @@ */ public class ExpressionValidator extends ValidatorSupport { + private static final Logger LOG = LogManager.getLogger(ExpressionValidator.class); + private String expression; public void setExpression(String expression) { @@ -69,11 +73,11 @@ public void validate(Object object) throws ValidationException { if ((obj != null) && (obj instanceof Boolean)) { answer = (Boolean) obj; } else { - log.warn("Got result of [{}] when trying to get Boolean.", obj); + LOG.warn("Got result of [{}] when trying to get Boolean.", obj); } if (!answer) { - log.debug("Validation failed on expression [{}] with validated object [{}]", expression, object); + LOG.debug("Validation failed on expression [{}] with validated object [{}]", expression, object); addActionError(object); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java index 12dd7c5754..e1f5618a21 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java @@ -16,6 +16,8 @@ package com.opensymphony.xwork2.validator.validators; import com.opensymphony.xwork2.validator.ValidationException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** @@ -55,6 +57,8 @@ */ public class FieldExpressionValidator extends FieldValidatorSupport { + private static final Logger LOG = LogManager.getLogger(FieldExpressionValidator.class); + private String expression; public void setExpression(String expression) { @@ -82,10 +86,10 @@ public void validate(Object object) throws ValidationException { if ((obj != null) && (obj instanceof Boolean)) { answer = (Boolean) obj; } else { - log.warn("Got result of {} when trying to get Boolean.", obj); + LOG.warn("Got result of {} when trying to get Boolean.", obj); } - if (!answer.booleanValue()) { + if (!answer) { addFieldError(fieldName, object); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java index 8fd62a63ae..ce87316636 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java @@ -24,6 +24,8 @@ import com.opensymphony.xwork2.validator.DelegatingValidatorContext; import com.opensymphony.xwork2.validator.ValidationException; import com.opensymphony.xwork2.validator.ValidatorContext; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.util.Collection; import java.util.LinkedList; @@ -85,6 +87,8 @@ */ public class VisitorFieldValidator extends FieldValidatorSupport { + private static final Logger LOG = LogManager.getLogger(VisitorFieldValidator.class); + private String context; private boolean appendPrefix = true; private ActionValidatorManager actionValidatorManager; @@ -125,7 +129,7 @@ public void validate(Object object) throws ValidationException { String fieldName = getFieldName(); Object value = this.getFieldValue(fieldName, object); if (value == null) { - log.warn("The visited object is null, VisitorValidator will not be able to handle validation properly. Please make sure the visited object is not null for VisitorValidator to function properly"); + LOG.warn("The visited object is null, VisitorValidator will not be able to handle validation properly. Please make sure the visited object is not null for VisitorValidator to function properly"); return; } ValueStack stack = ActionContext.getContext().getValueStack(); From 944b1a2303536023973456d6685f9ab86a775cb0 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 07:59:50 +0100 Subject: [PATCH 0007/2288] Injects proper dependencies into tag --- .../org/apache/struts2/components/I18n.java | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/components/I18n.java b/core/src/main/java/org/apache/struts2/components/I18n.java index faacea450f..497fff8549 100644 --- a/core/src/main/java/org/apache/struts2/components/I18n.java +++ b/core/src/main/java/org/apache/struts2/components/I18n.java @@ -90,28 +90,35 @@ public class I18n extends Component { protected boolean pushed; protected String name; - protected Container container; + + private LocalizedTextProvider localizedTextProvider; private TextProvider textProvider; private TextProvider defaultTextProvider; - private LocaleProvider localeProvider; + private LocaleProviderFactory localeProviderFactory; + private TextProviderFactory textProviderFactory; public I18n(ValueStack stack) { super(stack); } - + @Inject - public void setContainer(Container container) { - this.container = container; + public void setLocalizedTextProvider(LocalizedTextProvider localizedTextProvider) { + this.localizedTextProvider = localizedTextProvider; } - @Inject + @Inject("system") public void setTextProvider(TextProvider textProvider) { this.defaultTextProvider = textProvider; } + @Inject + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + this.textProviderFactory = textProviderFactory; + } + @Inject public void setLocaleProviderFactory(LocaleProviderFactory localeProviderFactory) { - this.localeProvider = localeProviderFactory.createLocaleProvider(); + this.localeProviderFactory = localeProviderFactory; } public boolean start(Writer writer) { @@ -122,12 +129,12 @@ public boolean start(Writer writer) { ResourceBundle bundle = defaultTextProvider.getTexts(name); if (bundle == null) { - bundle = container.getInstance(LocalizedTextProvider.class).findResourceBundle(name, localeProvider.getLocale()); + LocaleProvider localeProvider = localeProviderFactory.createLocaleProvider(); + bundle = localizedTextProvider.findResourceBundle(name, localeProvider.getLocale()); } if (bundle != null) { - TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); - textProvider = tpf.createInstance(bundle); + textProvider = textProviderFactory.createInstance(bundle); getStack().push(textProvider); pushed = true; } From ee6c927db6663741c3d0179e16687704359ea40c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 08:02:24 +0100 Subject: [PATCH 0008/2288] Drops unavailable dependency --- .../xwork2/StrutsTextProviderFactory.java | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index 7c703b7218..9743b656c5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -27,15 +27,9 @@ */ public class StrutsTextProviderFactory implements TextProviderFactory { - private TextProvider textProvider; private LocaleProviderFactory localeProviderFactory; private LocalizedTextProvider localizedTextProvider; - @Inject - public void setTextProvider(TextProvider textProvider) { - this.textProvider = textProvider; - } - @Inject public void setLocaleProviderFactory(LocaleProviderFactory localeProviderFactory) { this.localeProviderFactory = localeProviderFactory; @@ -67,18 +61,11 @@ public TextProvider createInstance(ResourceBundle bundle) { } protected TextProvider getTextProvider(Class clazz) { - if (this.textProvider == null) { - return new TextProviderSupport(clazz, localeProviderFactory.createLocaleProvider(), localizedTextProvider); - } else { - return textProvider; - } + return new TextProviderSupport(clazz, localeProviderFactory.createLocaleProvider(), localizedTextProvider); } private TextProvider getTextProvider(ResourceBundle bundle) { - if (this.textProvider == null) { - return new TextProviderSupport(bundle, localeProviderFactory.createLocaleProvider(), localizedTextProvider); - } - return textProvider; + return new TextProviderSupport(bundle, localeProviderFactory.createLocaleProvider(), localizedTextProvider); } } From c039685cf946f5e9864ae175a14f3ccdc0edbe59 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 08:02:52 +0100 Subject: [PATCH 0009/2288] Moves bean into same area are other releated to it beans --- core/src/main/resources/struts-default.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 72d6a699ec..d666541365 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,6 +130,7 @@ + @@ -141,7 +142,6 @@ - From 132829cc244d60692e3547c5c40b72e29eea1a9e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 08:03:28 +0100 Subject: [PATCH 0010/2288] Defines bean in test configuration --- .../config/providers/XWorkConfigurationProvider.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) 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 d29cf0ef1b..1bc698696e 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 @@ -5,6 +5,7 @@ import com.opensymphony.xwork2.DefaultLocaleProviderFactory; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.StrutsTextProviderFactory; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.factory.DefaultUnknownHandlerFactory; import com.opensymphony.xwork2.factory.UnknownHandlerFactory; import com.opensymphony.xwork2.ognl.accessor.HttpParametersPropertyAccessor; @@ -19,7 +20,6 @@ import com.opensymphony.xwork2.FileManagerFactory; import com.opensymphony.xwork2.ObjectFactory; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.TextProviderSupport; import com.opensymphony.xwork2.UnknownHandlerManager; import com.opensymphony.xwork2.XWorkConstants; import com.opensymphony.xwork2.config.Configuration; @@ -181,12 +181,11 @@ public void register(ContainerBuilder builder, LocatableProperties props) .factory(ActionValidatorManager.class, AnnotationActionValidatorManager.class, Scope.SINGLETON) .factory(ActionValidatorManager.class, "no-annotations", DefaultActionValidatorManager.class, Scope.SINGLETON) - .factory(StrutsTextProviderFactory.class, Scope.SINGLETON) - .factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON) .factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON) - .factory(TextProvider.class, TextProviderSupport.class, Scope.SINGLETON) - + .factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON) + .factory(TextProviderFactory.class, StrutsTextProviderFactory.class, Scope.SINGLETON) .factory(LocaleProviderFactory.class, DefaultLocaleProviderFactory.class, Scope.SINGLETON) + .factory(OgnlUtil.class, Scope.SINGLETON) .factory(CollectionConverter.class, Scope.SINGLETON) .factory(ArrayConverter.class, Scope.SINGLETON) From e8a598c7bc83752f488ad4ccccd0d11a64df3f03 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 08:03:48 +0100 Subject: [PATCH 0011/2288] Updates test to use the new injectable factory --- .../com/opensymphony/xwork2/CompositeTextProviderTest.java | 3 +-- .../xwork2/validator/AnnotationActionValidatorManagerTest.java | 3 +-- .../RepopulateConversionErrorFieldValidatorSupportTest.java | 2 +- .../validator/validators/AppendingValidatorContextTest.java | 3 +-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java index ab5c1707aa..3b5f30c445 100644 --- a/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/CompositeTextProviderTest.java @@ -77,8 +77,7 @@ public void testGetResourceBundle() throws Exception { protected void setUp() throws Exception { super.setUp(); - StrutsTextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); - tpf.setTextProvider(null); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); ActionContext.getContext().setLocale(Locale.ENGLISH); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java index 8a9a4cdfb4..89c21e391e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManagerTest.java @@ -24,7 +24,6 @@ import com.opensymphony.xwork2.FileManagerFactory; import com.opensymphony.xwork2.SimpleAction; import com.opensymphony.xwork2.SimpleAnnotationAction; -import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.entities.ActionConfig; @@ -82,7 +81,7 @@ public class AnnotationActionValidatorManagerTest extends XWorkTestCase { ActionContext.getContext().setActionInvocation(invocation); - tpf = container.getInstance(StrutsTextProviderFactory.class); + tpf = container.getInstance(TextProviderFactory.class); } @Override protected void tearDown() throws Exception { diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java index c4aa1783c8..51d8236ba0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RepopulateConversionErrorFieldValidatorSupportTest.java @@ -92,7 +92,7 @@ protected void setUp() throws Exception { conversionErrors.put("someFieldName", conversionErrorValue); conversionErrors.put("xxxsomeFieldName", conversionErrorValue); - TextProviderFactory tpf = container.inject(TextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); action = container.inject(ActionSupport.class); validator1 = diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java index 52b331a28a..0446e972e5 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/AppendingValidatorContextTest.java @@ -6,7 +6,6 @@ import com.opensymphony.xwork2.CompositeTextProvider; import com.opensymphony.xwork2.TextProvider; -import com.opensymphony.xwork2.StrutsTextProviderFactory; import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; @@ -29,7 +28,7 @@ protected void setUp() throws Exception { super.setUp(); action = container.inject(VisitorValidatorTestAction.class); - TextProviderFactory tpf = container.getInstance(StrutsTextProviderFactory.class); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); ValidatorContext vc1 = new DelegatingValidatorContext(action, tpf); VisitorFieldValidator.AppendingValidatorContext vc2 = new AppendingValidatorContext(vc1, createTextProvider(action, vc1), FIRST_NAME, ""); From 88a39333ceb4890b40fa2ca8dbcc6681b899248c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 08:12:52 +0100 Subject: [PATCH 0012/2288] Drops authors tags --- .../com/opensymphony/xwork2/StrutsTextProviderFactory.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index 9743b656c5..b242e394c9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -21,9 +21,6 @@ /** * This factory enables users to provide and correctly initialize a custom TextProvider. - * - * @author Oleg Gorobets - * @author Rene Gielen */ public class StrutsTextProviderFactory implements TextProviderFactory { From 0378161365554f124b9a67f0a4ceca225bad7e89 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 09:09:23 +0100 Subject: [PATCH 0013/2288] Increases visibility to allow reuse fields when subclassing --- .../com/opensymphony/xwork2/StrutsTextProviderFactory.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index b242e394c9..ff752b972c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -24,8 +24,8 @@ */ public class StrutsTextProviderFactory implements TextProviderFactory { - private LocaleProviderFactory localeProviderFactory; - private LocalizedTextProvider localizedTextProvider; + protected LocaleProviderFactory localeProviderFactory; + protected LocalizedTextProvider localizedTextProvider; @Inject public void setLocaleProviderFactory(LocaleProviderFactory localeProviderFactory) { From e9d7cd09db646fecb6cfd99d6523ec7d87b5b2bc Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 09:19:23 +0100 Subject: [PATCH 0014/2288] Increases visibility to allow reuse fields when subclassing --- .../opensymphony/xwork2/TextProviderSupport.java | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java index 528a91000f..d63291acda 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java @@ -29,16 +29,10 @@ */ public class TextProviderSupport implements ResourceBundleTextProvider { - private Class clazz; - private LocaleProvider localeProvider; - private ResourceBundle bundle; - private LocalizedTextProvider localizedTextProvider; - - /** - * Default constructor - */ - public TextProviderSupport() { - } + protected Class clazz; + protected LocaleProvider localeProvider; + protected ResourceBundle bundle; + protected LocalizedTextProvider localizedTextProvider; /** * Constructor. From 915e162e8edd23f62089119768b0a02646e9c782 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Mar 2017 09:25:03 +0100 Subject: [PATCH 0015/2288] Uses protected scope instead of private to allow override when subclassing --- .../java/com/opensymphony/xwork2/StrutsTextProviderFactory.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index ff752b972c..d398e698f2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -61,7 +61,7 @@ protected TextProvider getTextProvider(Class clazz) { return new TextProviderSupport(clazz, localeProviderFactory.createLocaleProvider(), localizedTextProvider); } - private TextProvider getTextProvider(ResourceBundle bundle) { + protected TextProvider getTextProvider(ResourceBundle bundle) { return new TextProviderSupport(bundle, localeProviderFactory.createLocaleProvider(), localizedTextProvider); } From e1bb1a70c089b80b3924391da9d0268b5bcc29f3 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 19 Mar 2017 20:02:45 +0430 Subject: [PATCH 0016/2288] WW-4744: AnnotationUtils supports non-public methods --- .../DefaultWorkflowInterceptor.java | 6 +- .../AnnotationWorkflowInterceptor.java | 22 +- .../xwork2/util/AnnotationUtils.java | 147 +++++++--- .../xwork2/util/ReflectionUtils.java | 274 ++++++++++++++++++ .../AnnotationValidationInterceptor.java | 18 +- .../AnnotationWorkflowInterceptorTest.java | 4 +- .../annotations/BaseAnnotatedAction.java | 34 ++- .../annotations/InterfaceAnnotatedAction.java | 12 + .../xwork2/util/AnnotationUtilsTest.java | 13 +- .../xwork2/util/annotation/DummyClass.java | 4 + .../util/annotation/DummyInterface.java | 2 +- .../AnnotationValidationInterceptorTest.java | 33 ++- .../BeanValidationInterceptor.java | 4 +- .../BeanValidationInterceptorTest.java | 14 + .../actions/ModelDrivenAction.java | 6 +- .../actions/ModelDrivenActionInterface.java | 8 + .../test/resources/bean-validation-test.xml | 5 + 17 files changed, 524 insertions(+), 82 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java create mode 100644 core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/InterfaceAnnotatedAction.java create mode 100644 plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java index a9f2565c9c..38fa810b6a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java @@ -18,6 +18,7 @@ import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.annotations.InputConfig; +import com.opensymphony.xwork2.util.ReflectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -210,8 +211,9 @@ protected String processInputConfig(final Object action, final String method, fi InputConfig annotation = AnnotationUtils.findAnnotation(action.getClass().getMethod(method, EMPTY_CLASS_ARRAY), InputConfig.class); if (annotation != null) { if (StringUtils.isNotEmpty(annotation.methodName())) { - Method m = action.getClass().getMethod(annotation.methodName()); - resultName = (String) m.invoke(action); + Method m = ReflectionUtils.findMethod(action.getClass(), annotation.methodName()); + ReflectionUtils.makeAccessible(m); + resultName = (String) ReflectionUtils.invokeMethod(m, action); } else { resultName = annotation.resultName(); } diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java index dbe4315ae0..122d24582f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java @@ -20,6 +20,7 @@ import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.opensymphony.xwork2.interceptor.PreResultListener; import com.opensymphony.xwork2.util.AnnotationUtils; +import com.opensymphony.xwork2.util.ReflectionUtils; import java.lang.reflect.Method; import java.util.ArrayList; @@ -117,12 +118,13 @@ public String intercept(ActionInvocation invocation) throws Exception { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(method1.getAnnotation(Before.class).priority(), - method2.getAnnotation(Before.class).priority()); + return comparePriorities(AnnotationUtils.findAnnotation(method1, Before.class).priority(), + AnnotationUtils.findAnnotation(method2, Before.class).priority()); } }); for (Method m : methods) { - final String resultCode = (String) m.invoke(action, (Object[]) null); + ReflectionUtils.makeAccessible(m); + final String resultCode = (String) ReflectionUtils.invokeMethod(m, action); if (resultCode != null) { // shortcircuit execution return resultCode; @@ -139,12 +141,13 @@ public int compare(Method method1, Method method2) { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(method1.getAnnotation(After.class).priority(), - method2.getAnnotation(After.class).priority()); + return comparePriorities(AnnotationUtils.findAnnotation(method1, After.class).priority(), + AnnotationUtils.findAnnotation(method2, After.class).priority()); } }); for (Method m : methods) { - m.invoke(action, (Object[]) null); + ReflectionUtils.makeAccessible(m); + ReflectionUtils.invokeMethod(m, action); } } @@ -174,13 +177,14 @@ public void beforeResult(ActionInvocation invocation, String resultCode) { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(method1.getAnnotation(BeforeResult.class).priority(), - method2.getAnnotation(BeforeResult.class).priority()); + return comparePriorities(AnnotationUtils.findAnnotation(method1, BeforeResult.class).priority(), + AnnotationUtils.findAnnotation(method2, BeforeResult.class).priority()); } }); for (Method m : methods) { try { - m.invoke(action, (Object[]) null); + ReflectionUtils.makeAccessible(m); + ReflectionUtils.invokeMethod(m, action); } catch (Exception e) { throw new XWorkException(e); } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index 36166ddb22..87442c4d01 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -1,6 +1,7 @@ /* * Copyright 2002-2006,2009 The Apache Software Foundation. - * + * Copyright 2002-2014 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. * You may obtain a copy of the License at @@ -25,6 +26,8 @@ import java.util.Collection; import java.util.HashSet; import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -37,6 +40,12 @@ * @author Rainer Hermanns * @author Zsolt Szasz, zsolt at lorecraft dot com * @author Dan Oxlade, dan d0t oxlade at gmail d0t c0m + * @author Rob Harrop + * @author Juergen Hoeller + * @author Sam Brannen + * @author Mark Fisher + * @author Chris Beams + * @author Phillip Webb * @version $Id$ */ public class AnnotationUtils { @@ -44,6 +53,12 @@ public class AnnotationUtils { private static final Pattern SETTER_PATTERN = Pattern.compile("set([A-Z][A-Za-z0-9]*)$"); private static final Pattern GETTER_PATTERN = Pattern.compile("(get|is|has)([A-Z][A-Za-z0-9]*)$"); + private static final Map findAnnotationCache = + new ConcurrentHashMap(256); + + private static final Map, Boolean> annotatedInterfaceCache = + new ConcurrentHashMap, Boolean>(256); + /** * Adds all fields with the specified Annotation of class clazz and its superclasses to allFields * @@ -117,23 +132,24 @@ public static void addAllInterfaces(Class clazz, List allInterfaces) { * @return A {@link Collection}<{@link AnnotatedElement}> containing all of the * method {@link AnnotatedElement}s matching the specified {@link Annotation}s */ - public static Collection getAnnotatedMethods(Class clazz, Class... annotation) { - Collection toReturn = new HashSet<>(); + public static Collection getAnnotatedMethods(Class clazz, final Class... annotation) { + final Collection toReturn = new HashSet<>(); - for (Method m : clazz.getMethods()) { - boolean found = false; - for (Class c : annotation) { - if (null != findAnnotation(m, c)) { - found = true; - break; + ReflectionUtils.doWithMethods(clazz, new ReflectionUtils.MethodCallback() { + @Override + public void doWith(Method method) throws IllegalArgumentException { + if (ArrayUtils.isEmpty(annotation) && ArrayUtils.isNotEmpty(method.getAnnotations())) { + toReturn.add(method); + return; + } + for (Class c : annotation) { + if (null != findAnnotation(method, c)) { + toReturn.add(method); + break; + } } } - if (found) { - toReturn.add(m); - } else if (ArrayUtils.isEmpty(annotation) && ArrayUtils.isNotEmpty(m.getAnnotations())) { - toReturn.add(m); - } - } + }); return toReturn; } @@ -150,25 +166,32 @@ public static Collection getAnnotatedMethods(Class clazz, Class A findAnnotation(Method method, Class annotationType) { - A result = getAnnotation(method, annotationType); - Class clazz = method.getDeclaringClass(); + AnnotationCacheKey cacheKey = new AnnotationCacheKey(method, annotationType); + A result = (A) findAnnotationCache.get(cacheKey); if (result == null) { - result = searchOnInterfaces(method, annotationType, clazz.getInterfaces()); - } - while (result == null) { - clazz = clazz.getSuperclass(); - if (clazz == null || clazz.equals(Object.class)) { - break; - } - try { - Method equivalentMethod = clazz.getDeclaredMethod(method.getName(), method.getParameterTypes()); - result = getAnnotation(equivalentMethod, annotationType); - } catch (NoSuchMethodException ex) { - // No equivalent method found - } + result = getAnnotation(method, annotationType); + Class clazz = method.getDeclaringClass(); if (result == null) { result = searchOnInterfaces(method, annotationType, clazz.getInterfaces()); } + while (result == null) { + clazz = clazz.getSuperclass(); + if (clazz == null || clazz.equals(Object.class)) { + break; + } + try { + Method equivalentMethod = clazz.getDeclaredMethod(method.getName(), method.getParameterTypes()); + result = getAnnotation(equivalentMethod, annotationType); + } catch (NoSuchMethodException ex) { + // No equivalent method found + } + if (result == null) { + result = searchOnInterfaces(method, annotationType, clazz.getInterfaces()); + } + } + if (result != null) { + findAnnotationCache.put(cacheKey, result); + } } return result; } @@ -219,6 +242,10 @@ private static A searchOnInterfaces(Method method, Class< } private static boolean isInterfaceWithAnnotatedMethods(Class iface) { + Boolean flag = annotatedInterfaceCache.get(iface); + if (flag != null) { + return flag; + } boolean found = false; for (Method ifcMethod : iface.getMethods()) { try { @@ -230,6 +257,7 @@ private static boolean isInterfaceWithAnnotatedMethods(Class iface) { // Assuming nested Class values not resolvable within annotation attributes... } } + annotatedInterfaceCache.put(iface, found); return found; } @@ -267,20 +295,61 @@ public static String resolvePropertyName(Method method) { * @return The annotation or null. */ public static T findAnnotation(Class clazz, Class annotationClass) { - T ann = clazz.getAnnotation(annotationClass); - while (ann == null && clazz != null) { + AnnotationCacheKey cacheKey = new AnnotationCacheKey(clazz, annotationClass); + T ann = (T) findAnnotationCache.get(cacheKey); + if (ann == null) { ann = clazz.getAnnotation(annotationClass); - if (ann == null) { - ann = clazz.getPackage().getAnnotation(annotationClass); - } - if (ann == null) { - clazz = clazz.getSuperclass(); - if (clazz != null) { - ann = clazz.getAnnotation(annotationClass); + while (ann == null && clazz != null) { + ann = clazz.getAnnotation(annotationClass); + if (ann == null) { + ann = clazz.getPackage().getAnnotation(annotationClass); + } + if (ann == null) { + clazz = clazz.getSuperclass(); + if (clazz != null) { + ann = clazz.getAnnotation(annotationClass); + } } } + if (ann != null) { + findAnnotationCache.put(cacheKey, ann); + } } return ann; } + + + /** + * Cache key for the AnnotatedElement cache. + */ + private static class AnnotationCacheKey { + + private final AnnotatedElement element; + + private final Class annotationType; + + public AnnotationCacheKey(AnnotatedElement element, Class annotationType) { + this.element = element; + this.annotationType = annotationType; + } + + @Override + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (!(other instanceof AnnotationCacheKey)) { + return false; + } + AnnotationCacheKey otherKey = (AnnotationCacheKey) other; + return (this.element.equals(otherKey.element) && + this.annotationType.equals(otherKey.annotationType)); + } + + @Override + public int hashCode() { + return (this.element.hashCode() * 29 + this.annotationType.hashCode()); + } + } } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java new file mode 100644 index 0000000000..08bd933cf9 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java @@ -0,0 +1,274 @@ +/* + * Copyright 2002-2015 The Apache Software Foundation. + * Copyright 2002-2015 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. + * 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 java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.lang.reflect.UndeclaredThrowableException; +import java.util.Arrays; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +/** + * Simple utility class for working with the reflection API and handling + * reflection exceptions. + * + *

Only intended for internal use. + * + * @author Juergen Hoeller + * @author Rob Harrop + * @author Rod Johnson + * @author Costin Leau + * @author Sam Brannen + * @author Chris Beams + */ +public abstract class ReflectionUtils { + + /** + * Cache for {@link Class#getDeclaredMethods()}, allowing for fast iteration. + */ + private static final Map, Method[]> declaredMethodsCache = + new ConcurrentHashMap, Method[]>(256); + + /** + * Perform the given callback operation on all matching methods of the given + * class and superclasses. + *

The same named method occurring on subclass and superclass will appear + * twice, unless excluded by a {@link MethodFilter}. + * @param clazz the class to introspect + * @param mc the callback to invoke for each method + * @see #doWithMethods(Class, MethodCallback, MethodFilter) + */ + public static void doWithMethods(Class clazz, MethodCallback mc) { + doWithMethods(clazz, mc, null); + } + + /** + * Perform the given callback operation on all matching methods of the given + * class and superclasses (or given interface and super-interfaces). + *

The same named method occurring on subclass and superclass will appear + * twice, unless excluded by the specified {@link MethodFilter}. + * @param clazz the class to introspect + * @param mc the callback to invoke for each method + * @param mf the filter that determines the methods to apply the callback to + */ + public static void doWithMethods(Class clazz, MethodCallback mc, MethodFilter mf) { + // Keep backing up the inheritance hierarchy. + Method[] methods = getDeclaredMethods(clazz); + for (Method method : methods) { + if (mf != null && !mf.matches(method)) { + continue; + } + try { + mc.doWith(method); + } + catch (IllegalAccessException ex) { + throw new IllegalStateException("Not allowed to access method '" + method.getName() + "': " + ex); + } + } + if (clazz.getSuperclass() != null) { + doWithMethods(clazz.getSuperclass(), mc, mf); + } + else if (clazz.isInterface()) { + for (Class superIfc : clazz.getInterfaces()) { + doWithMethods(superIfc, mc, mf); + } + } + } + + /** + * Make the given method accessible, explicitly setting it accessible if + * necessary. The {@code setAccessible(true)} method is only called + * when actually necessary, to avoid unnecessary conflicts with a JVM + * SecurityManager (if active). + * @param method the method to make accessible + * @see java.lang.reflect.Method#setAccessible + */ + public static void makeAccessible(Method method) { + if ((!Modifier.isPublic(method.getModifiers()) || + !Modifier.isPublic(method.getDeclaringClass().getModifiers())) && !method.isAccessible()) { + method.setAccessible(true); + } + } + + /** + * Attempt to find a {@link Method} on the supplied class with the supplied name + * and no parameters. Searches all superclasses up to {@code Object}. + *

Returns {@code null} if no {@link Method} can be found. + * @param clazz the class to introspect + * @param name the name of the method + * @return the Method object, or {@code null} if none found + */ + public static Method findMethod(Class clazz, String name) { + return findMethod(clazz, name, new Class[0]); + } + + /** + * Attempt to find a {@link Method} on the supplied class with the supplied name + * and parameter types. Searches all superclasses up to {@code Object}. + *

Returns {@code null} if no {@link Method} can be found. + * @param clazz the class to introspect + * @param name the name of the method + * @param paramTypes the parameter types of the method + * (may be {@code null} to indicate any signature) + * @return the Method object, or {@code null} if none found + */ + public static Method findMethod(Class clazz, String name, Class... paramTypes) { + Class searchType = clazz; + while (searchType != null) { + Method[] methods = (searchType.isInterface() ? searchType.getMethods() : getDeclaredMethods(searchType)); + for (Method method : methods) { + if (name.equals(method.getName()) && + (paramTypes == null || Arrays.equals(paramTypes, method.getParameterTypes()))) { + return method; + } + } + searchType = searchType.getSuperclass(); + } + return null; + } + + /** + * Invoke the specified {@link Method} against the supplied target object with no arguments. + * The target object can be {@code null} when invoking a static {@link Method}. + *

Thrown exceptions are handled via a call to {@link #handleReflectionException}. + * @param method the method to invoke + * @param target the target object to invoke the method on + * @return the invocation result, if any + * @see #invokeMethod(java.lang.reflect.Method, Object, Object[]) + */ + public static Object invokeMethod(Method method, Object target) { + return invokeMethod(method, target, new Object[0]); + } + + /** + * Invoke the specified {@link Method} against the supplied target object with the + * supplied arguments. The target object can be {@code null} when invoking a + * static {@link Method}. + *

Thrown exceptions are handled via a call to {@link #handleReflectionException}. + * @param method the method to invoke + * @param target the target object to invoke the method on + * @param args the invocation arguments (may be {@code null}) + * @return the invocation result, if any + */ + public static Object invokeMethod(Method method, Object target, Object... args) { + try { + return method.invoke(target, args); + } + catch (Exception ex) { + handleReflectionException(ex); + } + throw new IllegalStateException("Should never get here"); + } + + /** + * Handle the given reflection exception. Should only be called if no + * checked exception is expected to be thrown by the target method. + *

Throws the underlying RuntimeException or Error in case of an + * InvocationTargetException with such a root cause. Throws an + * IllegalStateException with an appropriate message else. + * @param ex the reflection exception to handle + */ + public static void handleReflectionException(Exception ex) { + if (ex instanceof NoSuchMethodException) { + throw new IllegalStateException("Method not found: " + ex.getMessage()); + } + if (ex instanceof IllegalAccessException) { + throw new IllegalStateException("Could not access method: " + ex.getMessage()); + } + if (ex instanceof InvocationTargetException) { + handleInvocationTargetException((InvocationTargetException) ex); + } + if (ex instanceof RuntimeException) { + throw (RuntimeException) ex; + } + throw new UndeclaredThrowableException(ex); + } + + /** + * Handle the given invocation target exception. Should only be called if no + * checked exception is expected to be thrown by the target method. + *

Throws the underlying RuntimeException or Error in case of such a root + * cause. Throws an IllegalStateException else. + * @param ex the invocation target exception to handle + */ + public static void handleInvocationTargetException(InvocationTargetException ex) { + rethrowRuntimeException(ex.getTargetException()); + } + + /** + * Rethrow the given {@link Throwable exception}, which is presumably the + * target exception of an {@link InvocationTargetException}. Should + * only be called if no checked exception is expected to be thrown by the + * target method. + *

Rethrows the underlying exception cast to an {@link RuntimeException} or + * {@link Error} if appropriate; otherwise, throws an + * {@link IllegalStateException}. + * @param ex the exception to rethrow + * @throws RuntimeException the rethrown exception + */ + public static void rethrowRuntimeException(Throwable ex) { + if (ex instanceof RuntimeException) { + throw (RuntimeException) ex; + } + if (ex instanceof Error) { + throw (Error) ex; + } + throw new UndeclaredThrowableException(ex); + } + + /** + * This variant retrieves {@link Class#getDeclaredMethods()} from a local cache + * in order to avoid the JVM's SecurityManager check and defensive array copying. + */ + private static Method[] getDeclaredMethods(Class clazz) { + Method[] result = declaredMethodsCache.get(clazz); + if (result == null) { + result = clazz.getDeclaredMethods(); + declaredMethodsCache.put(clazz, result); + } + return result; + } + + + /** + * Action to take on each method. + */ + public interface MethodCallback { + + /** + * Perform an operation using the given method. + * @param method the method to operate on + */ + void doWith(Method method) throws IllegalArgumentException, IllegalAccessException; + } + + + /** + * Callback optionally used to filter methods to be operated on by a method callback. + */ + public interface MethodFilter { + + /** + * Determine whether the given method matches. + * @param method the method to check + */ + boolean matches(Method method); + } +} diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java index 572572eb01..26e1545ba5 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java @@ -49,25 +49,9 @@ protected String doIntercept(ActionInvocation invocation) throws Exception { if (action != null) { Method method = getActionMethod(action.getClass(), invocation.getProxy().getMethod()); - Collection annotatedMethods = AnnotationUtils.getAnnotatedMethods(action.getClass(), SkipValidation.class); - if (annotatedMethods.contains(method)) { + if (null != AnnotationUtils.findAnnotation(method, SkipValidation.class)) { return invocation.invoke(); } - - LOG.debug("Check if method overrides an annotated method"); - Class clazz = action.getClass().getSuperclass(); - while (clazz != null) { - annotatedMethods = AnnotationUtils.getAnnotatedMethods(clazz, SkipValidation.class); - if (annotatedMethods != null) { - for (Method annotatedMethod : annotatedMethods) { - if (annotatedMethod.getName().equals(method.getName()) - && Arrays.equals(annotatedMethod.getParameterTypes(), method.getParameterTypes()) - && Arrays.equals(annotatedMethod.getExceptionTypes(), method.getExceptionTypes())) - return invocation.invoke(); - } - } - clazz = clazz.getSuperclass(); - } } return super.doIntercept(invocation); diff --git a/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java index 7b39267f64..a500571dad 100644 --- a/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptorTest.java @@ -51,14 +51,14 @@ public void testInterceptsBeforeAndAfter() throws Exception { ActionProxy proxy = actionProxyFactory.createActionProxy("", ANNOTATED_ACTION, null, null); assertEquals(Action.SUCCESS, proxy.execute()); AnnotatedAction action = (AnnotatedAction)proxy.getInvocation().getAction(); - assertEquals("baseBefore-before-execute-beforeResult-after", action.log); + assertEquals("interfaceBefore-baseBefore-basePrivateBefore-before-execute-beforeResult-basePrivateBeforeResult-interfaceBeforeResult-after-basePrivateAfter-interfaceAfter", action.log); } public void testInterceptsShortcircuitedAction() throws Exception { ActionProxy proxy = actionProxyFactory.createActionProxy("", SHORTCIRCUITED_ACTION, null, null); assertEquals("shortcircuit", proxy.execute()); ShortcircuitedAction action = (ShortcircuitedAction)proxy.getInvocation().getAction(); - assertEquals("baseBefore-before", action.log); + assertEquals("interfaceBefore-baseBefore-basePrivateBefore-before-basePrivateBeforeResult-interfaceBeforeResult", action.log); } private class MockConfigurationProvider implements ConfigurationProvider { diff --git a/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/BaseAnnotatedAction.java b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/BaseAnnotatedAction.java index ed088f16ee..7fd294a754 100644 --- a/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/BaseAnnotatedAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/BaseAnnotatedAction.java @@ -19,7 +19,7 @@ * @author Zsolt Szasz, zsolt at lorecraft dot com * @author Rainer Hermanns */ -public class BaseAnnotatedAction { +public class BaseAnnotatedAction implements InterfaceAnnotatedAction { protected String log = ""; @@ -29,4 +29,36 @@ public String baseBefore() { return null; } + @Override + public String interfaceBefore() { + log = log + "interfaceBefore-"; + return null; + } + + @Override + public void interfaceBeforeResult() { + log = log + "-interfaceBeforeResult"; + } + + @Override + public void interfaceAfter() { + log = log + "-interfaceAfter"; + } + + @Before(priority=6) + private String basePrivateBefore() { + log = log + "basePrivateBefore-"; + return null; + } + + @BeforeResult(priority=4) + private void basePrivateBeforeResult() { + log = log + "-basePrivateBeforeResult"; + } + + @After(priority=4) + private void basePrivateAfter() { + log = log + "-basePrivateAfter"; + } + } diff --git a/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/InterfaceAnnotatedAction.java b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/InterfaceAnnotatedAction.java new file mode 100644 index 0000000000..2761b233cb --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/interceptor/annotations/InterfaceAnnotatedAction.java @@ -0,0 +1,12 @@ +package com.opensymphony.xwork2.interceptor.annotations; + +public interface InterfaceAnnotatedAction { + @Before + String interfaceBefore(); + + @BeforeResult(priority=3) + void interfaceBeforeResult(); + + @After(priority=3) + void interfaceAfter(); +} diff --git a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java index 8ad4f35855..74121165ad 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java @@ -43,14 +43,15 @@ public void testFindAnnotation() throws Exception { public void testGetAnnotatedMethodsIncludingSuperclassAndInterface() throws Exception { Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, Deprecated.class, MyAnnotation.class, MyAnnotation2.class, MyAnnotationI.class); - assertEquals(3, ans.size()); + assertEquals(5, ans.size()); } @SuppressWarnings("unchecked") - public void testGetAnnotedMethodsWithoutAnnotationArgs() throws Exception { + public void testGetAnnotatedMethodsWithoutAnnotationArgs() throws Exception { Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class); - assertTrue(ans.size() == 1); - assertEquals(ans.iterator().next(), DummyClass.class.getMethod("methodWithAnnotation")); + assertTrue(ans.size() == 2); + assertTrue(ans.contains(DummyClass.class.getMethod("methodWithAnnotation"))); + assertTrue(ans.contains(DummyClass.class.getDeclaredMethod("privateMethodWithAnnotation"))); } @SuppressWarnings("unchecked") @@ -65,10 +66,10 @@ public void testGetAnnotatedMethodsWithAnnotationArgs() throws Exception { assertEquals(1, ans.size()); ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class, MyAnnotation.class, MyAnnotation2.class); - assertEquals(1, ans.size()); + assertEquals(2, ans.size()); ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, MyAnnotation.class, MyAnnotation2.class); - assertEquals(2, ans.size()); + assertEquals(4, ans.size()); } public void testFindAnnotationOnClass() { diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java index da2f80e41a..f6a4be11ab 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java @@ -13,4 +13,8 @@ public void methodWithAnnotation() { @Override public void interfaceMethodWithAnnotation() { } + + @MyAnnotation2 + private void privateMethodWithAnnotation() { + } } diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java index 6faa3e46e1..7713d3fe1b 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java @@ -3,5 +3,5 @@ public interface DummyInterface { @MyAnnotationI - public void interfaceMethodWithAnnotation(); + void interfaceMethodWithAnnotation(); } \ No newline at end of file diff --git a/core/src/test/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptorTest.java index 85bec790f0..0abe57dbec 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptorTest.java @@ -78,6 +78,18 @@ public void testShouldSkipBase2() throws Exception { mockActionProxy.verify(); } + public void testShouldSkipProtected() throws Exception { + mockActionProxy.expectAndReturn("getMethod", "skipMeProtected"); + interceptor.doIntercept((ActionInvocation)mockActionInvocation.proxy()); + mockActionProxy.verify(); + } + + public void testShouldSkipByInterface() throws Exception { + mockActionProxy.expectAndReturn("getMethod", "skipMeByInterface"); + interceptor.doIntercept((ActionInvocation)mockActionInvocation.proxy()); + mockActionProxy.verify(); + } + public void testShouldSkip2() throws Exception { mockActionProxy.expectAndReturn("getMethod", "skipMe2"); interceptor.doIntercept((ActionInvocation)mockActionInvocation.proxy()); @@ -112,9 +124,14 @@ public String skipMe2() { public String skipMeBase() { return "skipme"; } + + @Override + public String skipMeProtected() { + return super.skipMeProtected(); + } } - public static class TestActionBase { + public static class TestActionBase implements TestActionInterface { @SkipValidation public String skipMeBase() { @@ -133,6 +150,20 @@ public String dontSkipMeBase() { public String skipMe2() { return "skipme2"; } + + @SkipValidation + protected String skipMeProtected() { + return "skipMeProtected"; + } + + @Override + public String skipMeByInterface() { + return "skipMeByInterface"; + } } + public static interface TestActionInterface { + @SkipValidation + String skipMeByInterface(); + } } diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index 3123a4b509..6059070da9 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -99,9 +99,7 @@ protected String doIntercept(ActionInvocation invocation) throws Exception { LOG.debug("Validating [{}/{}] with method [{}]", invocation.getProxy().getNamespace(), invocation.getProxy().getActionName(), methodName); } - Collection annotatedMethods = AnnotationUtils.getAnnotatedMethods(action.getClass(), SkipValidation.class); - - if (!annotatedMethods.contains(getActionMethod(action.getClass(), methodName))) { + if (null == AnnotationUtils.findAnnotation(getActionMethod(action.getClass(), methodName), SkipValidation.class)) { // performing bean validation on action performBeanValidation(action, validator); } diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java index 5db0b36160..2d04ba28b1 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java @@ -106,6 +106,20 @@ public void testModelDrivenActionSuccess() throws Exception { assertEquals(0, fieldErrors.size()); } + public void testModelDrivenActionSkipValidationByInterface() throws Exception { + ActionProxy baseActionProxy = actionProxyFactory.createActionProxy("bean-validation", "modelDrivenActionSkipValidationByInterface", null, null); + ModelDrivenAction action = (ModelDrivenAction) baseActionProxy.getAction(); + action.getModel().setName(null); + action.getModel().setEmail(null); + action.getModel().getAddress().setStreet(null); + baseActionProxy.execute(); + + Map> fieldErrors = ((ValidationAware) baseActionProxy.getAction()).getFieldErrors(); + + assertNotNull(fieldErrors); + assertEquals(0, fieldErrors.size()); + } + public void testFieldAction() throws Exception { ActionProxy baseActionProxy = actionProxyFactory.createActionProxy("bean-validation", "fieldAction", null, null); FieldAction action = (FieldAction) baseActionProxy.getAction(); diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java index a51c6b5f12..2de4764a6b 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java @@ -26,7 +26,7 @@ import javax.validation.Valid; -public class ModelDrivenAction extends ActionSupport implements ModelDriven { +public class ModelDrivenAction extends ActionSupport implements ModelDriven, ModelDrivenActionInterface { @Valid private Person model = new Person(); @@ -35,4 +35,8 @@ public Person getModel() { return model; } + @Override + public String skipMeByInterface() { + return SUCCESS; + } } diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java new file mode 100644 index 0000000000..9eba4bffe0 --- /dev/null +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java @@ -0,0 +1,8 @@ +package org.apache.struts.beanvalidation.actions; + +import org.apache.struts2.interceptor.validation.SkipValidation; + +public interface ModelDrivenActionInterface { + @SkipValidation + String skipMeByInterface(); +} diff --git a/plugins/bean-validation/src/test/resources/bean-validation-test.xml b/plugins/bean-validation/src/test/resources/bean-validation-test.xml index cb44a74410..fe649ab885 100644 --- a/plugins/bean-validation/src/test/resources/bean-validation-test.xml +++ b/plugins/bean-validation/src/test/resources/bean-validation-test.xml @@ -26,6 +26,11 @@ + + + + From 82f61666f8f8337f4aa23e5ed38d66aa12f87b4c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 07:14:32 +0100 Subject: [PATCH 0017/2288] WW-4767 Makes some methods protected instead private to allow override them when subclassing --- .../multipart/AbstractMultiPartRequest.java | 17 ++++++++ .../multipart/JakartaMultiPartRequest.java | 32 ++++----------- .../JakartaStreamMultiPartRequest.java | 39 ++++++------------- 3 files changed, 37 insertions(+), 51 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java index cc205232c3..10ed6cd797 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java @@ -107,4 +107,21 @@ public List getErrors() { return errors; } + /** + * @param originalFileName file name + * @return the canonical name based on the supplied filename + */ + protected String getCanonicalName(final String originalFileName) { + String fileName = originalFileName; + + int forwardSlash = fileName.lastIndexOf("/"); + int backwardSlash = fileName.lastIndexOf("\\"); + if (forwardSlash != -1 && forwardSlash > backwardSlash) { + fileName = fileName.substring(forwardSlash + 1, fileName.length()); + } else { + fileName = fileName.substring(backwardSlash + 1, fileName.length()); + } + return fileName; + } + } diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java index e6fab1e76e..68bbd2b8ca 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java @@ -87,12 +87,14 @@ public void parse(HttpServletRequest request, String saveDir) throws IOException } protected void processUpload(HttpServletRequest request, String saveDir) throws FileUploadException, UnsupportedEncodingException { - for (FileItem item : parseRequest(request, saveDir)) { - LOG.debug("Found file item: [{}]", item.getFieldName()); - if (item.isFormField()) { - processNormalFormField(item, request.getCharacterEncoding()); - } else { - processFileField(item); + if (ServletFileUpload.isMultipartContent(request)) { + for (FileItem item : parseRequest(request, saveDir)) { + LOG.debug("Found file item: [{}]", item.getFieldName()); + if (item.isFormField()) { + processNormalFormField(item, request.getCharacterEncoding()); + } else { + processFileField(item); + } } } } @@ -280,24 +282,6 @@ public String[] getParameterValues(String name) { return null; } - /** - * Returns the canonical name of the given file. - * - * @param filename the given file - * @return the canonical name of the given file - */ - private String getCanonicalName(String filename) { - int forwardSlash = filename.lastIndexOf("/"); - int backwardSlash = filename.lastIndexOf("\\"); - if (forwardSlash != -1 && forwardSlash > backwardSlash) { - filename = filename.substring(forwardSlash + 1, filename.length()); - } else if (backwardSlash != -1 && backwardSlash >= forwardSlash) { - filename = filename.substring(backwardSlash + 1, filename.length()); - } - - return filename; - } - /** * Creates a RequestContext needed by Jakarta Commons Upload. * diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java index 11b5a0d958..4703338d16 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java @@ -30,12 +30,12 @@ public class JakartaStreamMultiPartRequest extends AbstractMultiPartRequest { /** * Map between file fields and file data. */ - private Map> fileInfos = new HashMap<>(); + protected Map> fileInfos = new HashMap<>(); /** * Map between non-file fields and values. */ - private Map> parameters = new HashMap<>(); + protected Map> parameters = new HashMap<>(); /* (non-Javadoc) * @see org.apache.struts2.dispatcher.multipart.MultiPartRequest#cleanUp() @@ -180,7 +180,7 @@ public void parse(HttpServletRequest request, String saveDir) throws IOException * @param saveDir location of the save dir * @throws Exception */ - private void processUpload(HttpServletRequest request, String saveDir) throws Exception { + protected void processUpload(HttpServletRequest request, String saveDir) throws Exception { // Sanity check that the request is a multi-part/form-data request. if (ServletFileUpload.isMultipartContent(request)) { @@ -233,7 +233,7 @@ private void processUpload(HttpServletRequest request, String saveDir) throws Ex * @param request the servlet request * @return true if request size is permitted */ - private boolean isRequestSizePermitted(HttpServletRequest request) { + protected boolean isRequestSizePermitted(HttpServletRequest request) { // if maxSize is specified as -1, there is no sanity check and it's // safe to return true for any request, delegating the failure // checks later in the upload process. @@ -248,7 +248,7 @@ private boolean isRequestSizePermitted(HttpServletRequest request) { * @param request the servlet request * @return the request content length. */ - private long getRequestSize(HttpServletRequest request) { + protected long getRequestSize(HttpServletRequest request) { long requestSize = 0; if (request != null) { requestSize = request.getContentLength(); @@ -263,7 +263,7 @@ private long getRequestSize(HttpServletRequest request) { * @param fileName file name * @param request the servlet request */ - private void addFileSkippedError(String fileName, HttpServletRequest request) { + protected void addFileSkippedError(String fileName, HttpServletRequest request) { String exceptionMessage = "Skipped file " + fileName + "; request size limit exceeded."; FileSizeLimitExceededException exception = new FileUploadBase.FileSizeLimitExceededException(exceptionMessage, getRequestSize(request), maxSize); LocalizedMessage message = buildErrorMessage(exception, new Object[]{fileName, getRequestSize(request), maxSize}); @@ -277,7 +277,7 @@ private void addFileSkippedError(String fileName, HttpServletRequest request) { * * @param itemStream file item stream */ - private void processFileItemStreamAsFormField(FileItemStream itemStream) { + protected void processFileItemStreamAsFormField(FileItemStream itemStream) { String fieldName = itemStream.getFieldName(); try { List values; @@ -300,7 +300,7 @@ private void processFileItemStreamAsFormField(FileItemStream itemStream) { * @param itemStream file item stream * @param location location */ - private void processFileItemStreamAsFileField(FileItemStream itemStream, String location) { + protected void processFileItemStreamAsFileField(FileItemStream itemStream, String location) { // Skip file uploads that don't have a file name - meaning that no file was selected. if (itemStream.getName() == null || itemStream.getName().trim().length() < 1) { LOG.debug("No file has been uploaded for the field: {}", itemStream.getFieldName()); @@ -334,7 +334,7 @@ private void processFileItemStreamAsFileField(FileItemStream itemStream, String * @return temporary file based on the given filename and location * @throws IOException in case of IO errors */ - private File createTemporaryFile(String fileName, String location) throws IOException { + protected File createTemporaryFile(String fileName, String location) throws IOException { String name = fileName .substring(fileName.lastIndexOf('/') + 1) .substring(fileName.lastIndexOf('\\') + 1); @@ -364,7 +364,7 @@ private File createTemporaryFile(String fileName, String location) throws IOExce * @return true if stream was successfully * @throws IOException in case of IO errors */ - private boolean streamFileToDisk(FileItemStream itemStream, File file) throws IOException { + protected boolean streamFileToDisk(FileItemStream itemStream, File file) throws IOException { boolean result = false; try (InputStream input = itemStream.openStream(); OutputStream output = new BufferedOutputStream(new FileOutputStream(file), bufferSize)) { @@ -386,7 +386,7 @@ private boolean streamFileToDisk(FileItemStream itemStream, File file) throws IO * @param itemStream file item stream * @param file the file */ - private void createFileInfoFromItemStream(FileItemStream itemStream, File file) { + protected void createFileInfoFromItemStream(FileItemStream itemStream, File file) { // gather attributes from file upload stream. String fileName = itemStream.getName(); String fieldName = itemStream.getFieldName(); @@ -402,28 +402,13 @@ private void createFileInfoFromItemStream(FileItemStream itemStream, File file) } } - /** - * @param fileName file name - * @return the canonical name based on the supplied filename - */ - private String getCanonicalName(String fileName) { - int forwardSlash = fileName.lastIndexOf("/"); - int backwardSlash = fileName.lastIndexOf("\\"); - if (forwardSlash != -1 && forwardSlash > backwardSlash) { - fileName = fileName.substring(forwardSlash + 1, fileName.length()); - } else { - fileName = fileName.substring(backwardSlash + 1, fileName.length()); - } - return fileName; - } - /** * Internal data structure used to store a reference to information needed * to later pass post processing data to the FileUploadInterceptor. * * @since 7.0.0 */ - private static class FileInfo implements Serializable { + public static class FileInfo implements Serializable { private static final long serialVersionUID = 1083158552766906037L; From 4e9fa8423931417da8bc60ce220f46935b54c5de Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 08:07:21 +0100 Subject: [PATCH 0018/2288] WW-4768 Adds proper validation if request is a multipart request --- .../org/apache/struts2/StrutsConstants.java | 2 + .../apache/struts2/dispatcher/Dispatcher.java | 38 ++++++++++++++++++- .../struts2/dispatcher/DispatcherTest.java | 3 +- .../FileUploadInterceptorTest.java | 4 ++ 4 files changed, 44 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index a868eddcf6..b41f7e6777 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -139,6 +139,8 @@ public final class StrutsConstants { */ public static final String STRUTS_MULTIPART_PARSER = "struts.multipart.parser"; + public static final String STRUTS_MULTIPART_VALIDATION_REGEX = "struts.multipart.validationRegex"; + /** How Spring should autowire. Valid values are 'name', 'type', 'auto', and 'constructor' */ public static final String STRUTS_OBJECTFACTORY_SPRING_AUTOWIRE = "struts.objectFactory.spring.autoWire"; 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 b7714be72c..280e27b81b 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -66,6 +66,7 @@ import java.io.IOException; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; +import java.util.regex.Pattern; /** * A utility class the actual dispatcher delegates most of its tasks to. Each instance @@ -81,6 +82,13 @@ public class Dispatcher { */ private static final Logger LOG = LogManager.getLogger(Dispatcher.class); + /** + * {@link HttpServletRequest#getMethod()} + */ + public static final String REQUEST_POST_METHOD = "POST"; + + public static final String MULTIPART_FORM_DATA_REGEX = "^multipart\\/form-data(; boundary=[a-zA-Z0-9]{1,70})?"; + /** * Provide a thread local instance. */ @@ -121,6 +129,11 @@ public class Dispatcher { */ private String multipartHandlerName; + /** + * A regular expression used to validate if request is a multipart/form-data request + */ + private Pattern multipartValidationPattern = Pattern.compile(MULTIPART_FORM_DATA_REGEX); + /** * Provide list of default configuration files. */ @@ -264,6 +277,11 @@ public void setMultipartHandler(String val) { multipartHandlerName = val; } + @Inject(value = StrutsConstants.STRUTS_MULTIPART_VALIDATION_REGEX, required = false) + public void setMultipartValidationRegex(String multipartValidationRegex) { + this.multipartValidationPattern = Pattern.compile(multipartValidationRegex); + } + @Inject public void setValueStackFactory(ValueStackFactory valueStackFactory) { this.valueStackFactory = valueStackFactory; @@ -781,8 +799,7 @@ public HttpServletRequest wrapRequest(HttpServletRequest request) throws IOExcep return request; } - String content_type = request.getContentType(); - if (content_type != null && content_type.contains("multipart/form-data")) { + if (isMultipartRequest(request)) { MultiPartRequest multiPartRequest = getMultiPartRequest(); LocaleProviderFactory localeProviderFactory = getContainer().getInstance(LocaleProviderFactory.class); @@ -800,6 +817,23 @@ public HttpServletRequest wrapRequest(HttpServletRequest request) throws IOExcep return request; } + /** + * Checks if request is a multipart request (a file upload request) + * + * @param request current servlet request + * @return true if it is a multipart request + * + * @since 2.5.11 + */ + protected boolean isMultipartRequest(HttpServletRequest request) { + String httpMethod = request.getMethod(); + String contentType = request.getContentType(); + + return REQUEST_POST_METHOD.equalsIgnoreCase(httpMethod) && + contentType != null && + multipartValidationPattern.matcher(contentType.toLowerCase(Locale.ENGLISH)).matches(); + } + /** * On each request it must return a new instance as implementation could be not thread safe * and thus ensure of resource clean up diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index d8f10ccbe0..ffa43e1dd1 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -138,7 +138,8 @@ public void testPrepareMultipartRequest() throws Exception { MockHttpServletRequest req = new MockHttpServletRequest(); MockHttpServletResponse res = new MockHttpServletResponse(); - req.setContentType("multipart/form-data"); + req.setMethod("post"); + req.setContentType("multipart/form-data; boundary=asdcvb345asd"); Dispatcher du = initDispatcher(Collections.emptyMap()); du.prepare(req, res); HttpServletRequest wrapped = du.wrapRequest(req); diff --git a/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java index 8e68cefa6a..a3e3143b48 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java @@ -229,6 +229,7 @@ public void testInvalidContentTypeMultipartRequest() throws Exception { req.setCharacterEncoding("text/html"); req.setContentType("text/xml"); // not a multipart contentype + req.setMethod("post"); req.addHeader("Content-type", "multipart/form-data"); MyFileupAction action = container.inject(MyFileupAction.class); @@ -249,6 +250,7 @@ public void testNoContentMultipartRequest() throws Exception { MockHttpServletRequest req = new MockHttpServletRequest(); req.setCharacterEncoding("text/html"); + req.setMethod("post"); req.addHeader("Content-type", "multipart/form-data"); req.setContent(null); // there is no content @@ -269,6 +271,7 @@ public void testNoContentMultipartRequest() throws Exception { public void testSuccessUploadOfATextFileMultipartRequest() throws Exception { MockHttpServletRequest req = new MockHttpServletRequest(); req.setCharacterEncoding("text/html"); + req.setMethod("post"); req.addHeader("Content-type", "multipart/form-data; boundary=---1234"); // inspired by the unit tests for jakarta commons fileupload @@ -374,6 +377,7 @@ public void testMultipleAccept() throws Exception { public void testMultipartRequestLocalizedError() throws Exception { MockHttpServletRequest req = new MockHttpServletRequest(); req.setCharacterEncoding("text/html"); + req.setMethod("post"); req.addHeader("Content-type", "multipart/form-data; boundary=---1234"); // inspired by the unit tests for jakarta commons fileupload From d053df4924578dcd060f74878d70d60268e85cd7 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 10:13:59 +0100 Subject: [PATCH 0019/2288] WW-4768 Adds support for dashes in boundary definition --- .../src/main/java/org/apache/struts2/dispatcher/Dispatcher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 280e27b81b..ea92eaf17e 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -87,7 +87,7 @@ public class Dispatcher { */ public static final String REQUEST_POST_METHOD = "POST"; - public static final String MULTIPART_FORM_DATA_REGEX = "^multipart\\/form-data(; boundary=[a-zA-Z0-9]{1,70})?"; + public static final String MULTIPART_FORM_DATA_REGEX = "^multipart\\/form-data(; boundary=[\\-a-zA-Z0-9]{1,70})?"; /** * Provide a thread local instance. From 748da3f8ce6b9f3953bc418745c35a534e5b98ca Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 14:50:05 +0100 Subject: [PATCH 0020/2288] WW-4769 Makes excluded classes & packages definitions immutable --- .../com/opensymphony/xwork2/ognl/OgnlUtil.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index 86e9c5354c..74da77160f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -90,27 +90,35 @@ public void setEnableEvalExpression(String evalExpression) { @Inject(value = XWorkConstants.OGNL_EXCLUDED_CLASSES, required = false) public void setExcludedClasses(String commaDelimitedClasses) { - Set classes = TextParseUtil.commaDelimitedStringToSet(commaDelimitedClasses); - for (String className : classes) { + Set classNames = TextParseUtil.commaDelimitedStringToSet(commaDelimitedClasses); + Set> classes = new HashSet<>(); + + for (String className : classNames) { try { - excludedClasses.add(Class.forName(className)); + classes.add(Class.forName(className)); } catch (ClassNotFoundException e) { throw new ConfigurationException("Cannot load excluded class: " + className, e); } } + + excludedClasses = Collections.unmodifiableSet(classes); } @Inject(value = XWorkConstants.OGNL_EXCLUDED_PACKAGE_NAME_PATTERNS, required = false) public void setExcludedPackageNamePatterns(String commaDelimitedPackagePatterns) { Set packagePatterns = TextParseUtil.commaDelimitedStringToSet(commaDelimitedPackagePatterns); + Set packageNamePatterns = new HashSet<>(); + for (String pattern : packagePatterns) { - excludedPackageNamePatterns.add(Pattern.compile(pattern)); + packageNamePatterns.add(Pattern.compile(pattern)); } + + excludedPackageNamePatterns = Collections.unmodifiableSet(packageNamePatterns); } @Inject(value = XWorkConstants.OGNL_EXCLUDED_PACKAGE_NAMES, required = false) public void setExcludedPackageNames(String commaDelimitedPackageNames) { - excludedPackageNames = TextParseUtil.commaDelimitedStringToSet(commaDelimitedPackageNames); + excludedPackageNames = Collections.unmodifiableSet(TextParseUtil.commaDelimitedStringToSet(commaDelimitedPackageNames)); } public Set> getExcludedClasses() { From 98467c2753a81b45fe174492e3b779860c47a4b0 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 15:27:55 +0100 Subject: [PATCH 0021/2288] Adds missing headers with license --- .../ConversionPropertiesProcessor.java | 15 ++++++++++++ .../DefaultConversionPropertiesProcessor.java | 24 ++++++++++++++----- 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java index 8d0bab841b..6f5bd38223 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java @@ -1,3 +1,18 @@ +/* + * 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.conversion; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java index 762496f7b0..f658967a10 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java @@ -1,3 +1,18 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.XWorkException; @@ -16,9 +31,6 @@ import java.util.Map; import java.util.Properties; -/** - * TODO lukaszlenart: add a comment - */ public class DefaultConversionPropertiesProcessor implements ConversionPropertiesProcessor { private static final Logger LOG = LogManager.getLogger(DefaultConversionPropertiesProcessor.class); @@ -59,11 +71,11 @@ public void loadConversionProperties(String propsName, boolean require) { String key = (String) entry.getKey(); try { - TypeConverter _typeConverter = converterCreator.createTypeConverter((String) entry.getValue()); + TypeConverter typeConverter = converterCreator.createTypeConverter((String) entry.getValue()); if (LOG.isDebugEnabled()) { - LOG.debug("\t{}:{} [treated as TypeConverter {}]", key, entry.getValue(), _typeConverter); + LOG.debug("\t{}:{} [treated as TypeConverter {}]", key, entry.getValue(), typeConverter); } - converterHolder.addDefaultMapping(key, _typeConverter); + converterHolder.addDefaultMapping(key, typeConverter); } catch (Exception e) { LOG.error("Conversion registration error", e); } From 3d3bee02182e061c4aeb9f8d1ac1ccc5fc2c52bf Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 23 Mar 2017 15:28:58 +0100 Subject: [PATCH 0022/2288] Process default conversion as required --- .../opensymphony/xwork2/conversion/impl/XWorkConverter.java | 3 +-- ...version.properties => struts-default-conversion.properties} | 0 2 files changed, 1 insertion(+), 2 deletions(-) rename core/src/main/resources/{xwork-default-conversion.properties => struts-default-conversion.properties} (100%) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index bdf74c220d..4257411e80 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -173,8 +173,7 @@ public void setReloadingConfigs(String reloadingConfigs) { @Inject public void setConversionPropertiesProcessor(ConversionPropertiesProcessor propertiesProcessor) { - // note: this file is deprecated - propertiesProcessor.process("xwork-default-conversion.properties"); + propertiesProcessor.processRequired("struts-default-conversion.properties"); propertiesProcessor.process("xwork-conversion.properties"); } diff --git a/core/src/main/resources/xwork-default-conversion.properties b/core/src/main/resources/struts-default-conversion.properties similarity index 100% rename from core/src/main/resources/xwork-default-conversion.properties rename to core/src/main/resources/struts-default-conversion.properties From 7627b835556b0ecbd945a3ae1f27693eec41969f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 24 Mar 2017 10:34:39 +0100 Subject: [PATCH 0023/2288] Moves documentation to wiki --- .../util/DefaultLocalizedTextProvider.java | 46 +------------------ 1 file changed, 2 insertions(+), 44 deletions(-) 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 c51521902f..b7d531445f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -44,50 +44,9 @@ import java.util.concurrent.ConcurrentMap; import java.util.concurrent.CopyOnWriteArrayList; - /** - * Provides support for localization in XWork. - * - * - *

Resource bundles are searched in the following order:

- * - *
    - *
  1. ActionClass.properties
  2. - *
  3. Interface.properties (every interface and sub-interface)
  4. - *
  5. BaseClass.properties (all the way to Object.properties)
  6. - *
  7. ModelDriven's model (if implements ModelDriven), for the model object repeat from 1
  8. - *
  9. package.properties (of the directory where class is located and every parent directory all the way to the root directory)
  10. - *
  11. search up the i18n message key hierarchy itself
  12. - *
  13. global resource properties
  14. - *
- * - * - * - * - *

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 + * Provides support for localization in the framework, it can be used to read only default bundles, + * or it can search the class hierarchy to find proper bundles. */ public class DefaultLocalizedTextProvider implements LocalizedTextProvider { @@ -110,7 +69,6 @@ public class DefaultLocalizedTextProvider implements LocalizedTextProvider { private final String RELOADED = "com.opensymphony.xwork2.util.LocalizedTextUtil.reloaded"; - /** * Clears the internal list of resource bundles. * From 2d5f0aaa667dca310007f224efbbb622bad5a472 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 26 Mar 2017 18:07:58 +0430 Subject: [PATCH 0024/2288] WW-4744: Remove copied Spring's code (also from PR#117) --- .../DefaultWorkflowInterceptor.java | 6 +- .../AnnotationWorkflowInterceptor.java | 11 +- .../xwork2/util/AnnotationUtils.java | 254 ++++++---------- .../xwork2/util/ReflectionUtils.java | 274 ------------------ .../AnnotationValidationInterceptor.java | 5 - .../xwork2/util/AnnotationUtilsTest.java | 18 +- .../BeanValidationInterceptor.java | 1 - 7 files changed, 93 insertions(+), 476 deletions(-) delete mode 100644 core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java index 38fa810b6a..f9bcbd8f9e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java @@ -18,8 +18,8 @@ import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.annotations.InputConfig; -import com.opensymphony.xwork2.util.ReflectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import com.opensymphony.xwork2.util.AnnotationUtils; @@ -211,9 +211,7 @@ protected String processInputConfig(final Object action, final String method, fi InputConfig annotation = AnnotationUtils.findAnnotation(action.getClass().getMethod(method, EMPTY_CLASS_ARRAY), InputConfig.class); if (annotation != null) { if (StringUtils.isNotEmpty(annotation.methodName())) { - Method m = ReflectionUtils.findMethod(action.getClass(), annotation.methodName()); - ReflectionUtils.makeAccessible(m); - resultName = (String) ReflectionUtils.invokeMethod(m, action); + resultName = (String) MethodUtils.invokeMethod(action, true, annotation.methodName()); } else { resultName = annotation.resultName(); } diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java index 122d24582f..38e3503389 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java @@ -20,7 +20,7 @@ import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.opensymphony.xwork2.interceptor.PreResultListener; import com.opensymphony.xwork2.util.AnnotationUtils; -import com.opensymphony.xwork2.util.ReflectionUtils; +import org.apache.commons.lang3.reflect.MethodUtils; import java.lang.reflect.Method; import java.util.ArrayList; @@ -123,8 +123,7 @@ public int compare(Method method1, Method method2) { } }); for (Method m : methods) { - ReflectionUtils.makeAccessible(m); - final String resultCode = (String) ReflectionUtils.invokeMethod(m, action); + final String resultCode = (String) MethodUtils.invokeMethod(action, true, m.getName()); if (resultCode != null) { // shortcircuit execution return resultCode; @@ -146,8 +145,7 @@ public int compare(Method method1, Method method2) { } }); for (Method m : methods) { - ReflectionUtils.makeAccessible(m); - ReflectionUtils.invokeMethod(m, action); + MethodUtils.invokeMethod(action, true, m.getName()); } } @@ -183,8 +181,7 @@ public int compare(Method method1, Method method2) { }); for (Method m : methods) { try { - ReflectionUtils.makeAccessible(m); - ReflectionUtils.invokeMethod(m, action); + MethodUtils.invokeMethod(action, true, m.getName()); } catch (Exception e) { throw new XWorkException(e); } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index 87442c4d01..6e3836f188 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -1,6 +1,5 @@ /* * Copyright 2002-2006,2009 The Apache Software Foundation. - * Copyright 2002-2014 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,17 +16,16 @@ package com.opensymphony.xwork2.util; import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.lang3.ClassUtils; import java.lang.annotation.Annotation; import java.lang.reflect.AnnotatedElement; import java.lang.reflect.Field; import java.lang.reflect.Method; +import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.HashSet; import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -40,12 +38,6 @@ * @author Rainer Hermanns * @author Zsolt Szasz, zsolt at lorecraft dot com * @author Dan Oxlade, dan d0t oxlade at gmail d0t c0m - * @author Rob Harrop - * @author Juergen Hoeller - * @author Sam Brannen - * @author Mark Fisher - * @author Chris Beams - * @author Phillip Webb * @version $Id$ */ public class AnnotationUtils { @@ -53,12 +45,6 @@ public class AnnotationUtils { private static final Pattern SETTER_PATTERN = Pattern.compile("set([A-Z][A-Za-z0-9]*)$"); private static final Pattern GETTER_PATTERN = Pattern.compile("(get|is|has)([A-Z][A-Za-z0-9]*)$"); - private static final Map findAnnotationCache = - new ConcurrentHashMap(256); - - private static final Map, Boolean> annotatedInterfaceCache = - new ConcurrentHashMap, Boolean>(256); - /** * Adds all fields with the specified Annotation of class clazz and its superclasses to allFields * @@ -131,136 +117,101 @@ public static void addAllInterfaces(Class clazz, List allInterfaces) { * @param annotation the {@link Annotation}s to find * @return A {@link Collection}<{@link AnnotatedElement}> containing all of the * method {@link AnnotatedElement}s matching the specified {@link Annotation}s + * @deprecated Will be removed after release of
LANG-1317 */ - public static Collection getAnnotatedMethods(Class clazz, final Class... annotation) { - final Collection toReturn = new HashSet<>(); - - ReflectionUtils.doWithMethods(clazz, new ReflectionUtils.MethodCallback() { - @Override - public void doWith(Method method) throws IllegalArgumentException { + public static Collection getAnnotatedMethods(Class clazz, Class... annotation) { + List> allSuperclasses = ClassUtils.getAllSuperclasses(clazz); + allSuperclasses.add(0, clazz); + int sci = 0; + List> allInterfaces = ClassUtils.getAllInterfaces(clazz); + int ifi = 0; + final List annotatedMethods = new ArrayList<>(); + while (ifi < allInterfaces.size() || + sci < allSuperclasses.size()) { + Class acls; + if (ifi >= allInterfaces.size()) { + acls = allSuperclasses.get(sci++); + } + else if (sci >= allSuperclasses.size()) { + acls = allInterfaces.get(ifi++); + } + else if (sci <= ifi) { + acls = allSuperclasses.get(sci++); + } + else { + acls = allInterfaces.get(ifi++); + } + final Method[] allMethods = acls.getDeclaredMethods(); + for (final Method method : allMethods) { if (ArrayUtils.isEmpty(annotation) && ArrayUtils.isNotEmpty(method.getAnnotations())) { - toReturn.add(method); - return; + annotatedMethods.add(method); + continue; } for (Class c : annotation) { - if (null != findAnnotation(method, c)) { - toReturn.add(method); - break; + if (method.getAnnotation(c) != null) { + annotatedMethods.add(method); } } } - }); + } - return toReturn; + return annotatedMethods; } /** - * Find a single {@link Annotation} of {@code annotationType} from the supplied - * {@link Method}, traversing its super methods (i.e., from superclasses and - * interfaces) if no annotation can be found on the given method itself. - *

Annotations on methods are not inherited by default, so we need to handle - * this explicitly. - * - * @param method the method to look for annotations on - * @param annotationType the annotation type to look for - * @return the annotation found, or {@code null} if none + *

BFS to find the annotation object that is present on the given method or any equivalent method in + * super classes and interfaces, with the given annotation type. Returns null if the annotation type was not present + * on any of them.

+ * @param + * the annotation type + * @param method + * the {@link Method} to query + * @param annotationCls + * the {@link Annotation} to check if is present on the method + * @return an Annotation (possibly null). + * @deprecated Will be removed after release of LANG-1317 */ - public static A findAnnotation(Method method, Class annotationType) { - AnnotationCacheKey cacheKey = new AnnotationCacheKey(method, annotationType); - A result = (A) findAnnotationCache.get(cacheKey); - if (result == null) { - result = getAnnotation(method, annotationType); - Class clazz = method.getDeclaringClass(); - if (result == null) { - result = searchOnInterfaces(method, annotationType, clazz.getInterfaces()); - } - while (result == null) { - clazz = clazz.getSuperclass(); - if (clazz == null || clazz.equals(Object.class)) { - break; + public static A findAnnotation(final Method method, final Class annotationCls) { + A annotation = method.getAnnotation(annotationCls); + + if(annotation == null) { + Class mcls = method.getDeclaringClass(); + List> allSuperclasses = ClassUtils.getAllSuperclasses(mcls); + int sci = 0; + List> allInterfaces = ClassUtils.getAllInterfaces(mcls); + int ifi = 0; + while (ifi < allInterfaces.size() || + sci < allSuperclasses.size()) { + Class acls; + if(ifi >= allInterfaces.size()) { + acls = allSuperclasses.get(sci++); } - try { - Method equivalentMethod = clazz.getDeclaredMethod(method.getName(), method.getParameterTypes()); - result = getAnnotation(equivalentMethod, annotationType); - } catch (NoSuchMethodException ex) { - // No equivalent method found + else if(sci >= allSuperclasses.size()) { + acls = allInterfaces.get(ifi++); } - if (result == null) { - result = searchOnInterfaces(method, annotationType, clazz.getInterfaces()); + else if(ifi <= sci) { + acls = allInterfaces.get(ifi++); } - } - if (result != null) { - findAnnotationCache.put(cacheKey, result); - } - } - return result; - } - - /** - * Get a single {@link Annotation} of {@code annotationType} from the supplied - * Method, Constructor or Field. Meta-annotations will be searched if the annotation - * is not declared locally on the supplied element. - * - * @param annotatedElement the Method, Constructor or Field from which to get the annotation - * @param annotationType the annotation type to look for, both locally and as a meta-annotation - * @return the matching annotation, or {@code null} if none found - */ - public static T getAnnotation(AnnotatedElement annotatedElement, Class annotationType) { - try { - T ann = annotatedElement.getAnnotation(annotationType); - if (ann == null) { - for (Annotation metaAnn : annotatedElement.getAnnotations()) { - ann = metaAnn.annotationType().getAnnotation(annotationType); - if (ann != null) { - break; - } + else { + acls = allSuperclasses.get(sci++); } - } - return ann; - } catch (Exception ex) { - // Assuming nested Class values not resolvable within annotation attributes... - return null; - } - } - - private static A searchOnInterfaces(Method method, Class annotationType, Class... ifcs) { - A annotation = null; - for (Class iface : ifcs) { - if (isInterfaceWithAnnotatedMethods(iface)) { + Method equivalentMethod = null; try { - Method equivalentMethod = iface.getMethod(method.getName(), method.getParameterTypes()); - annotation = getAnnotation(equivalentMethod, annotationType); - } catch (NoSuchMethodException ex) { - // Skip this interface - it doesn't have the method... + equivalentMethod = acls.getDeclaredMethod(method.getName(), method.getParameterTypes()); + } catch (NoSuchMethodException e) { + // If not found, just keep on breadth first search } - if (annotation != null) { - break; + if(equivalentMethod != null) { + annotation = equivalentMethod.getAnnotation(annotationCls); + if(annotation != null) { + break; + } } } } return annotation; } - private static boolean isInterfaceWithAnnotatedMethods(Class iface) { - Boolean flag = annotatedInterfaceCache.get(iface); - if (flag != null) { - return flag; - } - boolean found = false; - for (Method ifcMethod : iface.getMethods()) { - try { - if (ifcMethod.getAnnotations().length > 0) { - found = true; - break; - } - } catch (Exception ex) { - // Assuming nested Class values not resolvable within annotation attributes... - } - } - annotatedInterfaceCache.put(iface, found); - return found; - } - /** * Returns the property name for a method. * This method is independent from property fields. @@ -295,61 +246,20 @@ public static String resolvePropertyName(Method method) { * @return The annotation or null. */ public static T findAnnotation(Class clazz, Class annotationClass) { - AnnotationCacheKey cacheKey = new AnnotationCacheKey(clazz, annotationClass); - T ann = (T) findAnnotationCache.get(cacheKey); - if (ann == null) { + T ann = clazz.getAnnotation(annotationClass); + while (ann == null && clazz != null) { ann = clazz.getAnnotation(annotationClass); - while (ann == null && clazz != null) { - ann = clazz.getAnnotation(annotationClass); - if (ann == null) { - ann = clazz.getPackage().getAnnotation(annotationClass); - } - if (ann == null) { - clazz = clazz.getSuperclass(); - if (clazz != null) { - ann = clazz.getAnnotation(annotationClass); - } - } + if (ann == null) { + ann = clazz.getPackage().getAnnotation(annotationClass); } - if (ann != null) { - findAnnotationCache.put(cacheKey, ann); + if (ann == null) { + clazz = clazz.getSuperclass(); + if (clazz != null) { + ann = clazz.getAnnotation(annotationClass); + } } } return ann; } - - - /** - * Cache key for the AnnotatedElement cache. - */ - private static class AnnotationCacheKey { - - private final AnnotatedElement element; - - private final Class annotationType; - - public AnnotationCacheKey(AnnotatedElement element, Class annotationType) { - this.element = element; - this.annotationType = annotationType; - } - - @Override - public boolean equals(Object other) { - if (this == other) { - return true; - } - if (!(other instanceof AnnotationCacheKey)) { - return false; - } - AnnotationCacheKey otherKey = (AnnotationCacheKey) other; - return (this.element.equals(otherKey.element) && - this.annotationType.equals(otherKey.annotationType)); - } - - @Override - public int hashCode() { - return (this.element.hashCode() * 29 + this.annotationType.hashCode()); - } - } } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java deleted file mode 100644 index 08bd933cf9..0000000000 --- a/core/src/main/java/com/opensymphony/xwork2/util/ReflectionUtils.java +++ /dev/null @@ -1,274 +0,0 @@ -/* - * Copyright 2002-2015 The Apache Software Foundation. - * Copyright 2002-2015 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. - * 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 java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.lang.reflect.UndeclaredThrowableException; -import java.util.Arrays; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -/** - * Simple utility class for working with the reflection API and handling - * reflection exceptions. - * - *

Only intended for internal use. - * - * @author Juergen Hoeller - * @author Rob Harrop - * @author Rod Johnson - * @author Costin Leau - * @author Sam Brannen - * @author Chris Beams - */ -public abstract class ReflectionUtils { - - /** - * Cache for {@link Class#getDeclaredMethods()}, allowing for fast iteration. - */ - private static final Map, Method[]> declaredMethodsCache = - new ConcurrentHashMap, Method[]>(256); - - /** - * Perform the given callback operation on all matching methods of the given - * class and superclasses. - *

The same named method occurring on subclass and superclass will appear - * twice, unless excluded by a {@link MethodFilter}. - * @param clazz the class to introspect - * @param mc the callback to invoke for each method - * @see #doWithMethods(Class, MethodCallback, MethodFilter) - */ - public static void doWithMethods(Class clazz, MethodCallback mc) { - doWithMethods(clazz, mc, null); - } - - /** - * Perform the given callback operation on all matching methods of the given - * class and superclasses (or given interface and super-interfaces). - *

The same named method occurring on subclass and superclass will appear - * twice, unless excluded by the specified {@link MethodFilter}. - * @param clazz the class to introspect - * @param mc the callback to invoke for each method - * @param mf the filter that determines the methods to apply the callback to - */ - public static void doWithMethods(Class clazz, MethodCallback mc, MethodFilter mf) { - // Keep backing up the inheritance hierarchy. - Method[] methods = getDeclaredMethods(clazz); - for (Method method : methods) { - if (mf != null && !mf.matches(method)) { - continue; - } - try { - mc.doWith(method); - } - catch (IllegalAccessException ex) { - throw new IllegalStateException("Not allowed to access method '" + method.getName() + "': " + ex); - } - } - if (clazz.getSuperclass() != null) { - doWithMethods(clazz.getSuperclass(), mc, mf); - } - else if (clazz.isInterface()) { - for (Class superIfc : clazz.getInterfaces()) { - doWithMethods(superIfc, mc, mf); - } - } - } - - /** - * Make the given method accessible, explicitly setting it accessible if - * necessary. The {@code setAccessible(true)} method is only called - * when actually necessary, to avoid unnecessary conflicts with a JVM - * SecurityManager (if active). - * @param method the method to make accessible - * @see java.lang.reflect.Method#setAccessible - */ - public static void makeAccessible(Method method) { - if ((!Modifier.isPublic(method.getModifiers()) || - !Modifier.isPublic(method.getDeclaringClass().getModifiers())) && !method.isAccessible()) { - method.setAccessible(true); - } - } - - /** - * Attempt to find a {@link Method} on the supplied class with the supplied name - * and no parameters. Searches all superclasses up to {@code Object}. - *

Returns {@code null} if no {@link Method} can be found. - * @param clazz the class to introspect - * @param name the name of the method - * @return the Method object, or {@code null} if none found - */ - public static Method findMethod(Class clazz, String name) { - return findMethod(clazz, name, new Class[0]); - } - - /** - * Attempt to find a {@link Method} on the supplied class with the supplied name - * and parameter types. Searches all superclasses up to {@code Object}. - *

Returns {@code null} if no {@link Method} can be found. - * @param clazz the class to introspect - * @param name the name of the method - * @param paramTypes the parameter types of the method - * (may be {@code null} to indicate any signature) - * @return the Method object, or {@code null} if none found - */ - public static Method findMethod(Class clazz, String name, Class... paramTypes) { - Class searchType = clazz; - while (searchType != null) { - Method[] methods = (searchType.isInterface() ? searchType.getMethods() : getDeclaredMethods(searchType)); - for (Method method : methods) { - if (name.equals(method.getName()) && - (paramTypes == null || Arrays.equals(paramTypes, method.getParameterTypes()))) { - return method; - } - } - searchType = searchType.getSuperclass(); - } - return null; - } - - /** - * Invoke the specified {@link Method} against the supplied target object with no arguments. - * The target object can be {@code null} when invoking a static {@link Method}. - *

Thrown exceptions are handled via a call to {@link #handleReflectionException}. - * @param method the method to invoke - * @param target the target object to invoke the method on - * @return the invocation result, if any - * @see #invokeMethod(java.lang.reflect.Method, Object, Object[]) - */ - public static Object invokeMethod(Method method, Object target) { - return invokeMethod(method, target, new Object[0]); - } - - /** - * Invoke the specified {@link Method} against the supplied target object with the - * supplied arguments. The target object can be {@code null} when invoking a - * static {@link Method}. - *

Thrown exceptions are handled via a call to {@link #handleReflectionException}. - * @param method the method to invoke - * @param target the target object to invoke the method on - * @param args the invocation arguments (may be {@code null}) - * @return the invocation result, if any - */ - public static Object invokeMethod(Method method, Object target, Object... args) { - try { - return method.invoke(target, args); - } - catch (Exception ex) { - handleReflectionException(ex); - } - throw new IllegalStateException("Should never get here"); - } - - /** - * Handle the given reflection exception. Should only be called if no - * checked exception is expected to be thrown by the target method. - *

Throws the underlying RuntimeException or Error in case of an - * InvocationTargetException with such a root cause. Throws an - * IllegalStateException with an appropriate message else. - * @param ex the reflection exception to handle - */ - public static void handleReflectionException(Exception ex) { - if (ex instanceof NoSuchMethodException) { - throw new IllegalStateException("Method not found: " + ex.getMessage()); - } - if (ex instanceof IllegalAccessException) { - throw new IllegalStateException("Could not access method: " + ex.getMessage()); - } - if (ex instanceof InvocationTargetException) { - handleInvocationTargetException((InvocationTargetException) ex); - } - if (ex instanceof RuntimeException) { - throw (RuntimeException) ex; - } - throw new UndeclaredThrowableException(ex); - } - - /** - * Handle the given invocation target exception. Should only be called if no - * checked exception is expected to be thrown by the target method. - *

Throws the underlying RuntimeException or Error in case of such a root - * cause. Throws an IllegalStateException else. - * @param ex the invocation target exception to handle - */ - public static void handleInvocationTargetException(InvocationTargetException ex) { - rethrowRuntimeException(ex.getTargetException()); - } - - /** - * Rethrow the given {@link Throwable exception}, which is presumably the - * target exception of an {@link InvocationTargetException}. Should - * only be called if no checked exception is expected to be thrown by the - * target method. - *

Rethrows the underlying exception cast to an {@link RuntimeException} or - * {@link Error} if appropriate; otherwise, throws an - * {@link IllegalStateException}. - * @param ex the exception to rethrow - * @throws RuntimeException the rethrown exception - */ - public static void rethrowRuntimeException(Throwable ex) { - if (ex instanceof RuntimeException) { - throw (RuntimeException) ex; - } - if (ex instanceof Error) { - throw (Error) ex; - } - throw new UndeclaredThrowableException(ex); - } - - /** - * This variant retrieves {@link Class#getDeclaredMethods()} from a local cache - * in order to avoid the JVM's SecurityManager check and defensive array copying. - */ - private static Method[] getDeclaredMethods(Class clazz) { - Method[] result = declaredMethodsCache.get(clazz); - if (result == null) { - result = clazz.getDeclaredMethods(); - declaredMethodsCache.put(clazz, result); - } - return result; - } - - - /** - * Action to take on each method. - */ - public interface MethodCallback { - - /** - * Perform an operation using the given method. - * @param method the method to operate on - */ - void doWith(Method method) throws IllegalArgumentException, IllegalAccessException; - } - - - /** - * Callback optionally used to filter methods to be operated on by a method callback. - */ - public interface MethodFilter { - - /** - * Determine whether the given method matches. - * @param method the method to check - */ - boolean matches(Method method); - } -} diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java index 26e1545ba5..b9ba26c354 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java @@ -23,17 +23,12 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.config.ConfigurationException; -import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.AnnotationUtils; import com.opensymphony.xwork2.validator.ValidationInterceptor; -import org.apache.commons.lang3.BooleanUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.apache.struts2.StrutsConstants; import java.lang.reflect.Method; -import java.util.Arrays; -import java.util.Collection; /** * Extends the xwork validation interceptor to also check for a @SkipValidation diff --git a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java index 74121165ad..1b6e0d5c7d 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java @@ -3,13 +3,13 @@ import com.opensymphony.xwork2.util.annotation.Dummy2Class; import com.opensymphony.xwork2.util.annotation.DummyClass; import com.opensymphony.xwork2.util.annotation.DummyClassExt; +import com.opensymphony.xwork2.util.annotation.DummyInterface; import com.opensymphony.xwork2.util.annotation.MyAnnotation; import com.opensymphony.xwork2.util.annotation.MyAnnotation2; import com.opensymphony.xwork2.util.annotation.MyAnnotationI; import junit.framework.TestCase; -import java.lang.annotation.Retention; import java.lang.reflect.AnnotatedElement; import java.util.Collection; @@ -18,15 +18,6 @@ */ public class AnnotationUtilsTest extends TestCase { - public void testGetAnnotationMeta() throws Exception { - assertNotNull(AnnotationUtils.getAnnotation(DummyClass.class.getMethod("methodWithAnnotation"), Retention.class)); - } - - public void testGetAnnotation() throws Exception { - assertNull(AnnotationUtils.getAnnotation(DummyClass.class.getMethod("methodWithAnnotation"), Deprecated.class)); - assertNotNull(AnnotationUtils.getAnnotation(DummyClass.class.getMethod("methodWithAnnotation"), MyAnnotation.class)); - } - public void testFindAnnotationFromSuperclass() throws Exception { assertNotNull(AnnotationUtils.findAnnotation(DummyClassExt.class.getMethod("methodWithAnnotation"), MyAnnotation.class)); } @@ -43,15 +34,16 @@ public void testFindAnnotation() throws Exception { public void testGetAnnotatedMethodsIncludingSuperclassAndInterface() throws Exception { Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, Deprecated.class, MyAnnotation.class, MyAnnotation2.class, MyAnnotationI.class); - assertEquals(5, ans.size()); + assertEquals(4, ans.size()); } @SuppressWarnings("unchecked") public void testGetAnnotatedMethodsWithoutAnnotationArgs() throws Exception { Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class); - assertTrue(ans.size() == 2); + assertEquals(3, ans.size()); assertTrue(ans.contains(DummyClass.class.getMethod("methodWithAnnotation"))); assertTrue(ans.contains(DummyClass.class.getDeclaredMethod("privateMethodWithAnnotation"))); + assertTrue(ans.contains(DummyInterface.class.getDeclaredMethod("interfaceMethodWithAnnotation"))); } @SuppressWarnings("unchecked") @@ -69,7 +61,7 @@ public void testGetAnnotatedMethodsWithAnnotationArgs() throws Exception { assertEquals(2, ans.size()); ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, MyAnnotation.class, MyAnnotation2.class); - assertEquals(4, ans.size()); + assertEquals(3, ans.size()); } public void testFindAnnotationOnClass() { diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index 6059070da9..a20d134fb8 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -39,7 +39,6 @@ import javax.validation.ConstraintViolation; import javax.validation.Validator; import java.lang.reflect.Method; -import java.util.Collection; import java.util.Set; /** From 67069a97243489b338b88786ec1e0ace03a14bba Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 27 Mar 2017 01:46:48 +0430 Subject: [PATCH 0025/2288] WW-4744: Add @Deprecated tags --- .../main/java/com/opensymphony/xwork2/util/AnnotationUtils.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index 6e3836f188..8492277b73 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -119,6 +119,7 @@ public static void addAllInterfaces(Class clazz, List allInterfaces) { * method {@link AnnotatedElement}s matching the specified {@link Annotation}s * @deprecated Will be removed after release of LANG-1317 */ + @Deprecated public static Collection getAnnotatedMethods(Class clazz, Class... annotation) { List> allSuperclasses = ClassUtils.getAllSuperclasses(clazz); allSuperclasses.add(0, clazz); @@ -171,6 +172,7 @@ else if (sci <= ifi) { * @return an Annotation (possibly null). * @deprecated Will be removed after release of LANG-1317 */ + @Deprecated public static A findAnnotation(final Method method, final Class annotationCls) { A annotation = method.getAnnotation(annotationCls); From f0a9226ffbed12477c346ce70cab40804398f4a7 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 27 Mar 2017 01:53:29 +0430 Subject: [PATCH 0026/2288] WW-4744: Correct copyright to exactly as previous with no change --- .../main/java/com/opensymphony/xwork2/util/AnnotationUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index 8492277b73..e0af7a5d4f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -1,6 +1,6 @@ /* * 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 From 3cee495a1214bde01a7b0f061040ff60ece105ab Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 27 Mar 2017 02:10:53 +0430 Subject: [PATCH 0027/2288] WW-4744: Add new line at end of DummyInterface file --- .../xwork2/util/annotation/DummyInterface.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java index 7713d3fe1b..4d5f908df5 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java @@ -1,7 +1,6 @@ package com.opensymphony.xwork2.util.annotation; public interface DummyInterface { - - @MyAnnotationI - void interfaceMethodWithAnnotation(); -} \ No newline at end of file + @MyAnnotationI + void interfaceMethodWithAnnotation(); +} From b4f8d03910681807da2c8a23c714d6567eea0e52 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 4 Apr 2017 08:28:04 +0200 Subject: [PATCH 0028/2288] WW-4769 Uses emptySet instead of manually creating Sets --- .../main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index 74da77160f..fe64d8f876 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -49,6 +49,7 @@ public class OgnlUtil { private static final Logger LOG = LogManager.getLogger(OgnlUtil.class); + private ConcurrentMap expressions = new ConcurrentHashMap<>(); private final ConcurrentMap beanInfoCache = new ConcurrentHashMap<>(); private TypeConverter defaultConverter; @@ -57,9 +58,9 @@ public class OgnlUtil { private boolean enableExpressionCache = true; private boolean enableEvalExpression; - private Set> excludedClasses = new HashSet<>(); - private Set excludedPackageNamePatterns = new HashSet<>(); - private Set excludedPackageNames = new HashSet<>(); + private Set> excludedClasses = Collections.emptySet(); + private Set excludedPackageNamePatterns = Collections.emptySet(); + private Set excludedPackageNames = Collections.emptySet(); private Container container; private boolean allowStaticMethodAccess; From c56d95d28ca4a924ca5f74ee60d4ea72e2b269d4 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 4 Apr 2017 08:34:39 +0200 Subject: [PATCH 0029/2288] WW-4779 Marks as deprecated the profiling layer --- .../opensymphony/xwork2/interceptor/TimerInterceptor.java | 3 +++ .../opensymphony/xwork2/util/profiling/ObjectProfiler.java | 6 ++++++ .../xwork2/util/profiling/ProfilingTimerBean.java | 3 +++ .../opensymphony/xwork2/util/profiling/UtilTimerStack.java | 3 +++ 4 files changed, 15 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java index d2cc534720..e5433abd60 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java @@ -91,7 +91,10 @@ * * @author Jason Carreira * @author Claus Ibsen + * + * @deprecated will be dropped with next major release (2.6) */ +@Deprecated public class TimerInterceptor extends AbstractInterceptor { private static final Logger LOG = LogManager.getLogger(TimerInterceptor.class); diff --git a/core/src/main/java/com/opensymphony/xwork2/util/profiling/ObjectProfiler.java b/core/src/main/java/com/opensymphony/xwork2/util/profiling/ObjectProfiler.java index 733bce3ccd..fee258863f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/profiling/ObjectProfiler.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/profiling/ObjectProfiler.java @@ -33,7 +33,9 @@ /** * @author Scott Farquhar + * @deprecated will be dropped with next major release (2.6) */ +@Deprecated public class ObjectProfiler { /** @@ -135,6 +137,10 @@ public static String getTrimmedClassName(Method method) { } +/** + * @deprecated will be dropped with next major release (2.6) + */ +@Deprecated class TimerInvocationHandler implements InvocationHandler { protected Object target; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/profiling/ProfilingTimerBean.java b/core/src/main/java/com/opensymphony/xwork2/util/profiling/ProfilingTimerBean.java index b94f0abaf5..11554e0ee1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/profiling/ProfilingTimerBean.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/profiling/ProfilingTimerBean.java @@ -35,7 +35,10 @@ * @author Mike Cannon-Brookes * @author Scott Farquhar * @version $Date$ $Id$ + * + * @deprecated will be dropped with next major release (2.6) */ +@Deprecated public class ProfilingTimerBean implements java.io.Serializable { private static final long serialVersionUID = -6180672043920208784L; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/profiling/UtilTimerStack.java b/core/src/main/java/com/opensymphony/xwork2/util/profiling/UtilTimerStack.java index 092cb8d9a6..c1772b8384 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/profiling/UtilTimerStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/profiling/UtilTimerStack.java @@ -266,7 +266,10 @@ *

* * + * + * @deprecated will be dropped with next major release (2.6) */ +@Deprecated public class UtilTimerStack { // A reference to the current ProfilingTimerBean From 1162ddf823b9d47df080fd273f1da22e088eda72 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 4 Apr 2017 09:16:48 +0200 Subject: [PATCH 0030/2288] WW-4663 Fallback to old behaviour if there is no action defined --- .../main/java/org/apache/struts2/components/Form.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/core/src/main/java/org/apache/struts2/components/Form.java b/core/src/main/java/org/apache/struts2/components/Form.java index 13247a9cae..f1f779cda0 100644 --- a/core/src/main/java/org/apache/struts2/components/Form.java +++ b/core/src/main/java/org/apache/struts2/components/Form.java @@ -276,6 +276,15 @@ public List getValidators(String name) { String formActionValue = findString(action); ActionMapping mapping = actionMapper.getMappingFromActionName(formActionValue); + + if (mapping == null) { + mapping = actionMapper.getMappingFromActionName((String) getParameters().get("actionName")); + } + + if (mapping == null) { + return Collections.EMPTY_LIST; + } + String actionName = mapping.getName(); String methodName = null; From caca3d057d56f43699c1ef5d37e7800eb7b0e5a5 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 6 Apr 2017 08:59:11 +0200 Subject: [PATCH 0031/2288] WW-4578 Makes RegexFieldValidator to support collections --- .../validators/RegexFieldValidator.java | 35 ++++++++-- .../validators/ValidatorSupport.java | 2 + .../validator/RegexFieldValidatorTest.java | 70 +++++++++++++++++++ 3 files changed, 100 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index b931482827..b1ca900079 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -16,11 +16,17 @@ package com.opensymphony.xwork2.validator.validators; +import com.opensymphony.xwork2.ObjectFactory; +import org.apache.commons.lang3.ObjectUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.opensymphony.xwork2.validator.ValidationException; import org.apache.commons.lang3.StringUtils; +import java.lang.reflect.Array; +import java.util.Arrays; +import java.util.Collection; +import java.util.Objects; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -105,13 +111,28 @@ public void validate(Object object) throws ValidationException { return; } - // XW-375 - must be a string - if (!(value instanceof String)) { - return; + if (value instanceof String) { + validateFieldValue(object, fieldName, (String) value, regexToUse); + } + + if (value.getClass().isArray()) { + Object[] values = (Object[]) value; + for (Object objValue: values) { + validateFieldValue(object, fieldName, Objects.toString(objValue, EMPTY_STRING), regexToUse); + } } + if (Collection.class.isAssignableFrom(value.getClass())) { + Collection values = (Collection) value; + for (Object objValue : values) { + validateFieldValue(object, fieldName, Objects.toString(objValue, EMPTY_STRING), regexToUse); + } + } + } + + protected void validateFieldValue(Object object, String fieldName, String value, String regexToUse) { // string must not be empty - String str = ((String) value).trim(); + String str = value.trim(); if (str.length() == 0) { return; } @@ -124,12 +145,12 @@ public void validate(Object object) throws ValidationException { pattern = Pattern.compile(regexToUse, Pattern.CASE_INSENSITIVE); } - String compare = (String) value; - if ( isTrimed() ) { + String compare = value; + if (isTrimed()) { compare = compare.trim(); } - Matcher matcher = pattern.matcher( compare ); + Matcher matcher = pattern.matcher(compare); if (!matcher.matches()) { addFieldError(fieldName, object); } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java index 2173a2f9b1..dabb4e39e3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java @@ -39,6 +39,8 @@ public abstract class ValidatorSupport implements Validator, ShortCircuitableVal private static final Logger LOG = LogManager.getLogger(ValidatorSupport.class); + public static final String EMPTY_STRING = ""; + private ValidatorContext validatorContext; private boolean shortCircuit; private String type; diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java index 4fa50fd79a..df392a8453 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java @@ -21,6 +21,8 @@ import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.RegexFieldValidator; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -183,9 +185,61 @@ public void testNoStringField() throws Exception { assertFalse(validator.getValidatorContext().hasFieldErrors()); } + public void testArrayOfStringField() throws Exception { + MyTestPerson testPerson = new MyTestPerson(); + testPerson.setFriends(new String[]{"Alice", "Matt"}); + + ValueStack stack = ActionContext.getContext().getValueStack(); + ActionContext.getContext().setValueStack(stack); + + RegexFieldValidator validator = new RegexFieldValidator(); + validator.setRegex("A([a-zA-Z]*)"); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("friends"); + validator.setValueStack(ActionContext.getContext().getValueStack()); + validator.setDefaultMessage("Only names starting with A are allowed!"); + + validator.validate(testPerson); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().size()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().get("friends").size()); + assertEquals("Only names starting with A are allowed!", validator.getValidatorContext().getFieldErrors().get("friends").get(0)); + } + + public void testListOfStringField() throws Exception { + MyTestPerson testPerson = new MyTestPerson(); + testPerson.setCars(Arrays.asList("Audi", "BMW")); + + ValueStack stack = ActionContext.getContext().getValueStack(); + ActionContext.getContext().setValueStack(stack); + + RegexFieldValidator validator = new RegexFieldValidator(); + validator.setRegex("A([a-zA-Z]*)"); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("cars"); + validator.setValueStack(ActionContext.getContext().getValueStack()); + validator.setDefaultMessage("Only cars starting with A are allowed!"); + + validator.validate(testPerson); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().size()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().get("cars").size()); + assertEquals("Only cars starting with A are allowed!", validator.getValidatorContext().getFieldErrors().get("cars").get(0)); + } + private class MyTestPerson { private String username; private int age; + private String[] friends; + private List cars; public String getUsername() { return username; @@ -202,6 +256,22 @@ public int getAge() { public void setAge(int age) { this.age = age; } + + public String[] getFriends() { + return friends; + } + + public void setFriends(String[] friends) { + this.friends = friends; + } + + public List getCars() { + return cars; + } + + public void setCars(List cars) { + this.cars = cars; + } } } From 158eda97834645a542e81d7414b67f8285042b8b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 10 Apr 2017 08:37:22 +0200 Subject: [PATCH 0032/2288] WW-4578 Changes range validators to support collections --- .../validators/FieldValidatorSupport.java | 13 +++- .../validators/RangeValidatorSupport.java | 66 ++++++++++++------- .../IntRangeFieldValidatorTest.java | 23 +++++++ .../validators/ValidationAction.java | 9 +++ 4 files changed, 86 insertions(+), 25 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index 4a3f147dc7..ec75e134eb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -17,16 +17,17 @@ import com.opensymphony.xwork2.validator.FieldValidator; - /** * Base class for field validators. * - * @author Jason Carreira + * You can access fieldName and its currentValue in a message using expression, e.g. + * "Wrong value ${currentValue} for ${fieldName}" */ public abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { private String fieldName; private String type; + private Object currentValue; public void setFieldName(String fieldName) { this.fieldName = fieldName; @@ -45,4 +46,12 @@ public void setValidatorType(String type) { public String getValidatorType() { return type; } + + public Object getCurrentValue() { + return currentValue; + } + + public void setCurrentValue(Object currentValue) { + this.currentValue = currentValue; + } } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java index 39c0e865d6..5d156e34a0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java @@ -20,6 +20,8 @@ import com.opensymphony.xwork2.validator.ValidationException; import org.apache.commons.lang3.StringUtils; +import java.util.Collection; + /** * Base class for range based validators. Use this class to develop any other custom range validators. */ @@ -40,25 +42,45 @@ protected RangeValidatorSupport(Class type) { public void validate(Object object) throws ValidationException { Object obj = getFieldValue(getFieldName(), object); - Comparable value = (Comparable) obj; // if there is no value - don't do comparison // if a value is required, a required validator should be added to the field - if (value == null) { + if (obj == null) { return; } + T min = getMin(); + T max = getMax(); + + if (obj.getClass().isArray()) { + Object[] values = (Object[]) obj; + for (Object objValue : values) { + validateValue(object, (Comparable) objValue, min, max); + } + } else if (Collection.class.isAssignableFrom(obj.getClass())) { + Collection values = (Collection) obj; + for (Object objValue : values) { + validateValue(object, (Comparable) objValue, min, max); + } + } else { + validateValue(object, (Comparable) obj, min, max); + } + } + + protected void validateValue(Object object, Comparable value, T min, T max) { + setCurrentValue(value); + // only check for a minimum value if the min parameter is set - T minComparatorValue = getMin(); - if ((minComparatorValue != null) && (value.compareTo(minComparatorValue) < 0)) { + if ((min != null) && (value.compareTo(min) < 0)) { addFieldError(getFieldName(), object); } // only check for a maximum value if the max parameter is set - T maxComparatorValue = getMax(); - if ((maxComparatorValue != null) && (value.compareTo(maxComparatorValue) > 0)) { + if ((max != null) && (value.compareTo(max) > 0)) { addFieldError(getFieldName(), object); } + + setCurrentValue(null); } public void setMin(T min) { @@ -66,13 +88,11 @@ public void setMin(T min) { } public T getMin() { - if (min != null) { - return min; - } else if (StringUtils.isNotEmpty(minExpression)) { - return (T) parse(minExpression, type); - } else { - return null; - } + return getT(min, minExpression, type); + } + + public T getMax() { + return getT(max, maxExpression, type); } public void setMinExpression(String minExpression) { @@ -84,19 +104,19 @@ public void setMax(T max) { this.max = max; } - public T getMax() { - if (max != null) { - return max; - } else if (StringUtils.isNotEmpty(maxExpression)) { - return (T) parse(maxExpression, type); - } else { - return null; - } - } - public void setMaxExpression(String maxExpression) { LOG.debug("${maxExpression} was defined as [{}]", maxExpression); this.maxExpression = maxExpression; } + protected T getT(T minMax, String minMaxExpression, Class toType) { + if (minMax != null) { + return minMax; + } else if (StringUtils.isNotEmpty(minMaxExpression)) { + return (T) parse(minMaxExpression, toType); + } else { + return null; + } + } + } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java index 229e8fc5fe..1992c252e8 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidatorTest.java @@ -57,11 +57,34 @@ public void testMaxValidation() throws Exception { assertEquals("Max is 101, min is 99 but value is 102", context.getFieldErrors().get("intRange").get(0)); } + public void testArrayOfIntValidation() throws Exception { + // given + ValidationAction action = new ValidationAction(); + action.setInts(new Integer[] {99, 100, 101, 102}); + + ValidatorContext context = new DummyValidatorContext(action, tpf); + IntRangeFieldValidator validator = prepareValidator(action, context); + + // when + validator.setMin(100); + validator.setMax(101); + validator.setFieldName("ints"); + validator.setDefaultMessage("Max is ${max}, min is ${min} but value is ${currentValue}"); + validator.validate(action); + + // then + assertEquals(1, context.getFieldErrors().size()); + assertEquals(2, context.getFieldErrors().get("ints").size()); + assertEquals("Max is 101, min is 100 but value is 99", context.getFieldErrors().get("ints").get(0)); + assertEquals("Max is 101, min is 100 but value is 102", context.getFieldErrors().get("ints").get(1)); + } + private ValidationAction prepareAction(int intRange) { ValidationAction action = new ValidationAction(); action.setIntMaxValue(101); action.setIntMinValue(99); action.setIntRange(intRange); + action.setInts(new Integer[] {101, 99, 100, 102}); return action; } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java index 268288f3bf..a9fc40f8a7 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java @@ -7,6 +7,7 @@ public class ValidationAction { private Integer intRange; private Integer intMinValue; private Integer intMaxValue; + private Integer[] ints; private Short shortRange; private Short shortMinValue; @@ -133,4 +134,12 @@ public void setStringValue(String stringValue) { public String getStringValue() { return stringValue; } + + public Integer[] getInts() { + return ints; + } + + public void setInts(Integer[] ints) { + this.ints = ints; + } } From e66fd538b519b1a156d76e4bbe4e994a35e3c464 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 10 Apr 2017 09:13:14 +0200 Subject: [PATCH 0033/2288] WW-4578 Makes required validator to support collections --- .../validators/RequiredFieldValidator.java | 7 ++ .../RequiredFieldValidatorTest.java | 78 +++++++++++++++++++ .../validators/ValidationAction.java | 10 +++ 3 files changed, 95 insertions(+) create mode 100644 core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidatorTest.java diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java index dffd37ac62..44fd92f5c3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java @@ -17,6 +17,9 @@ import com.opensymphony.xwork2.validator.ValidationException; +import java.lang.reflect.Array; +import java.util.Collection; + /** * @@ -63,6 +66,10 @@ public void validate(Object object) throws ValidationException { if (value == null) { addFieldError(fieldName, object); + } else if (value.getClass().isArray() && Array.getLength(value) == 0) { + addFieldError(fieldName, object); + } else if (Collection.class.isAssignableFrom(value.getClass()) && ((Collection) value).size() == 0) { + addFieldError(fieldName, object); } } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidatorTest.java new file mode 100644 index 0000000000..4fc02e151b --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidatorTest.java @@ -0,0 +1,78 @@ +package com.opensymphony.xwork2.validator.validators; + +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.validator.DummyValidatorContext; +import org.apache.struts2.StrutsInternalTestCase; +import org.junit.Test; + +import java.util.ArrayList; + +public class RequiredFieldValidatorTest extends StrutsInternalTestCase { + + @Test + public void testNullObject() throws Exception { + // given + RequiredFieldValidator rfv = container.inject(RequiredFieldValidator.class); + rfv.setValueStack(ActionContext.getContext().getValueStack()); + rfv.setFieldName("stringValue"); + rfv.setDefaultMessage("${fieldName} field is required!"); + ValidationAction action = new ValidationAction(); + DummyValidatorContext context = new DummyValidatorContext(action, container.getInstance(TextProviderFactory.class)); + rfv.setValidatorContext(context); + + // when + rfv.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertNotNull(context.getFieldErrors().get("stringValue")); + assertEquals("stringValue field is required!", context.getFieldErrors().get("stringValue").get(0)); + } + + @Test + public void testArrayObject() throws Exception { + // given + RequiredFieldValidator rfv = container.inject(RequiredFieldValidator.class); + rfv.setValueStack(ActionContext.getContext().getValueStack()); + rfv.setFieldName("ints"); + rfv.setDefaultMessage("${fieldName} field is required!"); + ValidationAction action = new ValidationAction(); + action.setInts(new Integer[]{}); + DummyValidatorContext context = new DummyValidatorContext(action, container.getInstance(TextProviderFactory.class)); + rfv.setValidatorContext(context); + + // when + rfv.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertNotNull(context.getFieldErrors().get("ints")); + assertEquals("ints field is required!", context.getFieldErrors().get("ints").get(0)); + } + + @Test + public void testCollectionObject() throws Exception { + // given + RequiredFieldValidator rfv = container.inject(RequiredFieldValidator.class); + rfv.setValueStack(ActionContext.getContext().getValueStack()); + rfv.setFieldName("shorts"); + rfv.setDefaultMessage("${fieldName} field is required!"); + ValidationAction action = new ValidationAction(); + action.setShorts(new ArrayList()); + DummyValidatorContext context = new DummyValidatorContext(action, container.getInstance(TextProviderFactory.class)); + rfv.setValidatorContext(context); + + // when + rfv.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertNotNull(context.getFieldErrors().get("shorts")); + assertEquals("shorts field is required!", context.getFieldErrors().get("shorts").get(0)); + } + +} \ No newline at end of file diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java index a9fc40f8a7..a97cea68ab 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java @@ -1,6 +1,7 @@ package com.opensymphony.xwork2.validator.validators; import java.util.Date; +import java.util.List; public class ValidationAction { @@ -12,6 +13,7 @@ public class ValidationAction { private Short shortRange; private Short shortMinValue; private Short shortMaxValue; + private List shorts; private Long longRange; private Long longMinValue; @@ -142,4 +144,12 @@ public Integer[] getInts() { public void setInts(Integer[] ints) { this.ints = ints; } + + public List getShorts() { + return shorts; + } + + public void setShorts(List shorts) { + this.shorts = shorts; + } } From 01a56ca117532c63a89bec6464109e81d9273d62 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 10 Apr 2017 21:54:03 +0200 Subject: [PATCH 0034/2288] WW-4578 Converts double range validator to support collections --- .../validators/DoubleRangeFieldValidator.java | 73 +++++++++---- ...ava => DoubleRangeFieldValidatorTest.java} | 102 ++++++++++++++++-- 2 files changed, 143 insertions(+), 32 deletions(-) rename core/src/test/java/com/opensymphony/xwork2/validator/{DoubleRangeValidatorTest.java => DoubleRangeFieldValidatorTest.java} (75%) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java index 8ed4e4c1b8..f968b97c16 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java @@ -18,6 +18,11 @@ import com.opensymphony.xwork2.validator.ValidationException; import org.apache.commons.lang3.StringUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.util.Arrays; +import java.util.Collection; /** * @@ -27,15 +32,15 @@ * * *
    - *
  • fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required
  • - *
  • minInclusive - the minimum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • maxInclusive - the maximum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • minExclusive - the minimum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • maxExclusive - the maximum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • minInclusiveExpression - the minimum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • maxInclusiveExpression - the maximum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • minExclusiveExpression - the minimum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • maxExclusiveExpression - the maximum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required
  • + *
  • minInclusive - the minimum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • maxInclusive - the maximum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • minExclusive - the minimum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • maxExclusive - the maximum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • minInclusiveExpression - the minimum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • maxInclusiveExpression - the maximum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • minExclusiveExpression - the minimum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • maxExclusiveExpression - the maximum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • *
* * You can specify either minInclusive, maxInclusive, minExclusive and maxExclusive or minInclusiveExpression, maxInclusiveExpression, @@ -86,7 +91,9 @@ * @author Rene Gielen */ public class DoubleRangeFieldValidator extends FieldValidatorSupport { - + + private static final Logger LOG = LogManager.getLogger(DoubleRangeFieldValidator.class); + private Double maxInclusive = null; private Double minInclusive = null; private Double minExclusive = null; @@ -99,14 +106,8 @@ public class DoubleRangeFieldValidator extends FieldValidatorSupport { public void validate(Object object) throws ValidationException { String fieldName = getFieldName(); - Double value; - try { - Object obj = this.getFieldValue(fieldName, object); - if (obj == null) { - return; - } - value = Double.valueOf(obj.toString()); - } catch (NumberFormatException e) { + Object obj = this.getFieldValue(fieldName, object); + if (obj == null) { return; } @@ -115,11 +116,37 @@ public void validate(Object object) throws ValidationException { Double maxExclusiveToUse = getMaxExclusive(); Double minExclusiveToUse = getMinExclusive(); - if ((maxInclusiveToUse != null && value.compareTo(maxInclusiveToUse) > 0) || - (minInclusiveToUse != null && value.compareTo(minInclusiveToUse) < 0) || - (maxExclusiveToUse != null && value.compareTo(maxExclusiveToUse) >= 0) || - (minExclusiveToUse != null && value.compareTo(minExclusiveToUse) <= 0)) { - addFieldError(fieldName, object); + if (obj.getClass().isArray()) { + Object[] values = (Object[]) obj; + validateCollection(maxInclusiveToUse, minInclusiveToUse, maxExclusiveToUse, minExclusiveToUse, Arrays.asList(values)); + } else if (Collection.class.isAssignableFrom(obj.getClass())) { + Collection values = (Collection) obj; + validateCollection(maxInclusiveToUse, minInclusiveToUse, maxExclusiveToUse, minExclusiveToUse, values); + } else { + validateValue(obj, maxInclusiveToUse, minInclusiveToUse, maxExclusiveToUse, minExclusiveToUse); + } + } + + protected void validateCollection(Double maxInclusiveToUse, Double minInclusiveToUse, Double maxExclusiveToUse, Double minExclusiveToUse, Collection values) { + for (Object objValue : values) { + validateValue(objValue, maxInclusiveToUse, minInclusiveToUse, maxExclusiveToUse, minExclusiveToUse); + } + } + + protected void validateValue(Object obj, Double maxInclusiveToUse, Double minInclusiveToUse, Double maxExclusiveToUse, Double minExclusiveToUse) { + try { + setCurrentValue(obj); + Double value = Double.valueOf(obj.toString()); + if ((maxInclusiveToUse != null && value.compareTo(maxInclusiveToUse) > 0) || + (minInclusiveToUse != null && value.compareTo(minInclusiveToUse) < 0) || + (maxExclusiveToUse != null && value.compareTo(maxExclusiveToUse) >= 0) || + (minExclusiveToUse != null && value.compareTo(minExclusiveToUse) <= 0)) { + addFieldError(getFieldName(), value); + } + } catch (NumberFormatException e) { + LOG.debug("Cannot validate value {} - not a Double", e); + } finally { + setCurrentValue(null); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java similarity index 75% rename from core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java rename to core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java index e60d24768f..68b1a82d32 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java @@ -1,6 +1,11 @@ package com.opensymphony.xwork2.validator; -import com.opensymphony.xwork2.*; +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.ActionProxy; +import com.opensymphony.xwork2.ActionSupport; +import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.ValidationAwareSupport; +import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.config.providers.MockConfigurationProvider; import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; import com.opensymphony.xwork2.interceptor.ValidationAware; @@ -8,6 +13,9 @@ import com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator; import org.apache.struts2.dispatcher.HttpParameters; +import java.lang.reflect.Array; +import java.util.Arrays; +import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -19,7 +27,8 @@ * @author Claus Ibsen * @version $Id$ */ -public class DoubleRangeValidatorTest extends XWorkTestCase { +public class DoubleRangeFieldValidatorTest extends XWorkTestCase { + private DoubleRangeFieldValidator val; private TextProviderFactory tpf; @@ -176,7 +185,7 @@ public void testNoValue() throws Exception { val.setMinInclusive(9.95d); val.validate(null); - assertTrue(!context.hasErrors()); // should pass as null value passed in + assertFalse(context.hasErrors()); // should pass as null value passed in } public void testRangeValidationWithExpressionsFail() throws Exception { @@ -204,11 +213,25 @@ public void testExpressionParams() throws Exception { ValueStack stack = ActionContext.getContext().getValueStack(); ActionSupport action = new ActionSupport() { - public Double getMinInclusiveValue() {return 10d;} - public Double getMaxInclusiveValue() {return 11d;} - public Double getMinExclusiveValue() {return 13d;} - public Double getMaxExclusiveValue() {return 14d;} - public Double getPrice() {return 15d;} + public Double getMinInclusiveValue() { + return 10d; + } + + public Double getMaxInclusiveValue() { + return 11d; + } + + public Double getMinExclusiveValue() { + return 13d; + } + + public Double getMaxExclusiveValue() { + return 14d; + } + + public Double getPrice() { + return 15d; + } }; stack.push(action); @@ -228,12 +251,54 @@ public void testExpressionParams() throws Exception { assertTrue(action.getFieldErrors().get("price").size() == 1); } + public void testArrayOfDoubles() throws Exception { + val.setMinInclusive(10d); + val.setMaxInclusive(14d); + + val.setFieldName("doubleArray"); + val.setDefaultMessage("Value ${currentValue} not in scope!"); + + MyTestProduct object = new MyTestProduct(); + object.setDoubleArray(new Double[]{11d, 15d}); + + DummyValidatorContext context = new DummyValidatorContext(object, tpf); + val.setValidatorContext(context); + + val.validate(object); + + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals(1, context.getFieldErrors().get("doubleArray").size()); + assertEquals("Value 15.0 not in scope!", context.getFieldErrors().get("doubleArray").get(0)); + } + + public void testCollectionOfDoubles() throws Exception { + val.setMinInclusive(10d); + val.setMaxInclusive(14d); + + val.setFieldName("doubleCollection"); + val.setDefaultMessage("Value ${currentValue} not in scope!"); + + MyTestProduct object = new MyTestProduct(); + object.setDoubleCollection(Arrays.asList(11d, 15d)); + + DummyValidatorContext context = new DummyValidatorContext(object, tpf); + val.setValidatorContext(context); + + val.validate(object); + + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals(1, context.getFieldErrors().get("doubleCollection").size()); + assertEquals("Value 15.0 not in scope!", context.getFieldErrors().get("doubleCollection").get(0)); + } + @Override protected void setUp() throws Exception { super.setUp(); XmlConfigurationProvider provider = new XmlConfigurationProvider("xwork-default.xml"); container.inject(provider); - loadConfigurationProviders(provider, new MockConfigurationProvider()); + loadConfigurationProviders(provider, new MockConfigurationProvider()); val = new DoubleRangeFieldValidator(); val.setValueStack(ActionContext.getContext().getValueStack()); ActionContext.getContext().setParameters(HttpParameters.create().build()); @@ -251,6 +316,9 @@ private class MyTestProduct { private Double volume; private String name; + private Double[] doubleArray; + private Collection doubleCollection; + public double getPrice() { return price; } @@ -274,6 +342,22 @@ public Double getVolume() { public void setVolume(Double volume) { this.volume = volume; } + + public Double[] getDoubleArray() { + return doubleArray; + } + + public void setDoubleArray(Double[] doubleArray) { + this.doubleArray = doubleArray; + } + + public Collection getDoubleCollection() { + return doubleCollection; + } + + public void setDoubleCollection(Collection doubleCollection) { + this.doubleCollection = doubleCollection; + } } } From df5583f11789fe2f5084d7fec780f99fa8d22b23 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 11 Apr 2017 08:46:24 +0200 Subject: [PATCH 0035/2288] WW-4578 Converts required string validator to support collections --- .../validators/FieldValidatorSupport.java | 6 +-- .../validators/RequiredStringValidator.java | 42 ++++++++++++---- .../RequiredStringValidatorTest.java | 48 +++++++++++++++++++ .../validators/ValidationAction.java | 20 ++++++++ 4 files changed, 105 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index ec75e134eb..07938c9d89 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -25,9 +25,9 @@ */ public abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { - private String fieldName; - private String type; - private Object currentValue; + protected String fieldName; + protected String type; + protected Object currentValue; public void setFieldName(String fieldName) { this.fieldName = fieldName; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java index af2d8072c8..433fd6082c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java @@ -17,6 +17,7 @@ import com.opensymphony.xwork2.validator.ValidationException; +import java.util.Collection; /** * @@ -85,21 +86,46 @@ public boolean isTrim() { } public void validate(Object object) throws ValidationException { - String fieldName = getFieldName(); - Object value = this.getFieldValue(fieldName, object); + Object fieldValue = this.getFieldValue(getFieldName(), object); - if (!(value instanceof String)) { - addFieldError(fieldName, object); + if (fieldValue == null) { + addFieldError(getFieldName(), object); + return; + } + + if (fieldValue.getClass().isArray()) { + Object[] values = (Object[]) fieldValue; + for (Object value : values) { + validateValue(object, value); + } + } else if (Collection.class.isAssignableFrom(fieldValue.getClass())) { + Collection values = (Collection) fieldValue; + for (Object value : values) { + validateValue(object, value); + } } else { - String s = (String) value; + validateValue(object, fieldValue); + } + } + + protected void validateValue(Object object, Object fieldValue) { + if (fieldValue == null) { + addFieldError(getFieldName(), object); + return; + } + + if (fieldValue instanceof String) { + String stingValue = (String) fieldValue; if (trim) { - s = s.trim(); + stingValue = stingValue.trim(); } - if (s.length() == 0) { - addFieldError(fieldName, object); + if (stingValue.length() == 0) { + addFieldError(getFieldName(), object); } + } else { + addFieldError(getFieldName(), object); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java index 8d4d919f45..9781bc1288 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidatorTest.java @@ -8,6 +8,8 @@ import com.opensymphony.xwork2.validator.DummyValidatorContext; import com.opensymphony.xwork2.validator.ValidatorContext; +import java.util.Arrays; + public class RequiredStringValidatorTest extends XWorkTestCase { private TextProviderFactory tpf; @@ -38,6 +40,52 @@ public void testRequiredStringPass() throws Exception { assertTrue(context.getFieldErrors().size() == 0); } + public void testRequiredArrayOfStringsPass() throws Exception { + // given + ValueStack valueStack = ActionContext.getContext().getValueStack(); + + ValidationAction action = new ValidationAction(); + action.setStrings(new String[]{"", "12334", null}); + valueStack.push(action); + + ValidatorContext context = new DummyValidatorContext(action, tpf); + RequiredStringValidator validator = new RequiredStringValidator(); + validator.setValidatorContext(context); + validator.setFieldName("strings"); + validator.setValueStack(valueStack); + + // when + validator.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals(2, context.getFieldErrors().get("strings").size()); + } + + public void testRequiredCollectionOfStringsPass() throws Exception { + // given + ValueStack valueStack = ActionContext.getContext().getValueStack(); + + ValidationAction action = new ValidationAction(); + action.setStringCollection(Arrays.asList("", "123456", null)); + valueStack.push(action); + + ValidatorContext context = new DummyValidatorContext(action, tpf); + RequiredStringValidator validator = new RequiredStringValidator(); + validator.setValidatorContext(context); + validator.setFieldName("stringCollection"); + validator.setValueStack(valueStack); + + // when + validator.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals(2, context.getFieldErrors().get("stringCollection").size()); + } + public void testRequiredStringFails() throws Exception { // given ValueStack valueStack = ActionContext.getContext().getValueStack(); diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java index a97cea68ab..ac7f56c62a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/ValidationAction.java @@ -1,5 +1,6 @@ package com.opensymphony.xwork2.validator.validators; +import java.util.Collection; import java.util.Date; import java.util.List; @@ -22,8 +23,11 @@ public class ValidationAction { private Date dateRange; private Date dateMinValue; private Date dateMaxValue; + private String dateFormat; private String stringValue; + private String[] strings; + private Collection stringCollection; public Integer getIntRange() { return intRange; @@ -152,4 +156,20 @@ public List getShorts() { public void setShorts(List shorts) { this.shorts = shorts; } + + public String[] getStrings() { + return strings; + } + + public void setStrings(String[] strings) { + this.strings = strings; + } + + public Collection getStringCollection() { + return stringCollection; + } + + public void setStringCollection(Collection stringCollection) { + this.stringCollection = stringCollection; + } } From 16e8f10f6664f4d5abbc64650a0b7a93cd49290b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 11 Apr 2017 09:10:19 +0200 Subject: [PATCH 0036/2288] WW-4578 Converts length string validator to support collections --- .../StringLengthFieldValidator.java | 45 ++- .../StringLengthFieldValidatorTest.java | 270 ++++++++++-------- 2 files changed, 192 insertions(+), 123 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java index 9d28a55ab2..0c4f0fc14b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java @@ -17,6 +17,11 @@ import com.opensymphony.xwork2.validator.ValidationException; import org.apache.commons.lang3.StringUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.util.Collection; +import java.util.Objects; /** * @@ -84,6 +89,8 @@ */ public class StringLengthFieldValidator extends FieldValidatorSupport { + private static final Logger LOG = LogManager.getLogger(StringLengthFieldValidator.class); + private boolean trim = true; private int maxLength = -1; private int minLength = -1; @@ -138,17 +145,37 @@ public boolean isTrim() { } public void validate(Object object) throws ValidationException { - String fieldName = getFieldName(); - String val = (String) getFieldValue(fieldName, object); + Object fieldValue = getFieldValue(fieldName, object); + + if (fieldValue == null) { + LOG.debug("Value for field {} is null, use a required validator", getFieldName()); + } else if (fieldValue.getClass().isArray()) { + Object[] values = (Object[]) fieldValue; + for (Object value : values) { + validateValue(object, value); + } + } else if (Collection.class.isAssignableFrom(fieldValue.getClass())) { + Collection values = (Collection) fieldValue; + for (Object value : values) { + validateValue(object, value); + } + } else { + validateValue(object, fieldValue); + } + } - if (StringUtils.isEmpty(val)) { - // use a required validator for these + protected void validateValue(Object object, Object value) { + String stringValue = Objects.toString(value, ""); + + if (StringUtils.isEmpty(stringValue)) { + LOG.debug("Value is empty, use a required validator"); return; } + if (isTrim()) { - val = val.trim(); - if (val.length() <= 0) { - // use a required validator + stringValue = stringValue.trim(); + if (StringUtils.isEmpty(stringValue)) { + LOG.debug("Value is empty, use a required validator"); return; } } @@ -156,9 +183,9 @@ public void validate(Object object) throws ValidationException { int minLengthToUse = getMinLength(); int maxLengthToUse = getMaxLength(); - if ((minLengthToUse > -1) && (val.length() < minLengthToUse)) { + if ((minLengthToUse > -1) && (stringValue.length() < minLengthToUse)) { addFieldError(fieldName, object); - } else if ((maxLengthToUse > -1) && (val.length() > maxLengthToUse)) { + } else if ((maxLengthToUse > -1) && (stringValue.length() > maxLengthToUse)) { addFieldError(fieldName, object); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java index ee6daf7a23..26e3335be9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/StringLengthFieldValidatorTest.java @@ -22,106 +22,130 @@ import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator; +import java.util.Arrays; +import java.util.Collection; + /** - * * @author tm_jee * @version $Date$ $Id$ */ public class StringLengthFieldValidatorTest extends XWorkTestCase { - protected InternalActionSupport action; - protected StringLengthFieldValidator validator; - - public void testStringLengthEmptyNoTrim1() throws Exception { - action.setMyField(""); - - validator.setTrim(false); - validator.validate(action); - - assertEquals(action.getMyField(), ""); - assertFalse(action.hasFieldErrors()); - } - - public void testStringLengthNullNoTrim() throws Exception { - action.setMyField(null); - - validator.setTrim(false); - validator.validate(action); - - assertEquals(action.getMyField(), null); - assertFalse(action.hasFieldErrors()); - } - - public void testStringLengthEmptyTrim1() throws Exception { - action.setMyField(" "); - - validator.setTrim(true); - validator.validate(action); - - assertEquals(action.getMyField(), " "); - assertFalse(action.hasFieldErrors()); - } - - public void testStringLengthEmptyNoTrim2() throws Exception { - action.setMyField(" "); - - validator.setTrim(false); - validator.validate(action); - - assertEquals(action.getMyField(), " "); - assertTrue(action.hasFieldErrors()); - } - - - public void testStringLengthNullTrim() throws Exception { - action.setMyField(null); - - validator.setTrim(true); - validator.validate(action); - - assertEquals(action.getMyField(), null); - assertFalse(action.hasFieldErrors()); - } - - public void testInvalidStringLengthNoTrim() throws Exception { - action.setMyField("abcdefghijklmn"); - - validator.setTrim(false); - validator.validate(action); - - assertEquals(action.getMyField(), "abcdefghijklmn"); - assertTrue(action.hasFieldErrors()); - } - - public void testInvalidStringLengthTrim() throws Exception { - action.setMyField("abcdefghijklmn "); - - validator.setTrim(true); - validator.validate(action); - - assertEquals(action.getMyField(), "abcdefghijklmn "); - assertTrue(action.hasFieldErrors()); - } - - public void testValidStringLengthNoTrim() throws Exception { - action.setMyField(" "); - - validator.setTrim(false); - validator.validate(action); - - assertEquals(action.getMyField(), " "); - assertFalse(action.hasFieldErrors()); - } - - public void testValidStringLengthTrim() throws Exception { - action.setMyField("asd "); - - validator.setTrim(true); - validator.validate(action); - - assertEquals(action.getMyField(), "asd "); - assertFalse(action.hasFieldErrors()); - } + protected InternalActionSupport action; + protected StringLengthFieldValidator validator; + + public void testStringLengthEmptyNoTrim1() throws Exception { + action.setMyField(""); + + validator.setTrim(false); + validator.validate(action); + + assertEquals(action.getMyField(), ""); + assertFalse(action.hasFieldErrors()); + } + + public void testStringLengthNullNoTrim() throws Exception { + action.setMyField(null); + + validator.setTrim(false); + validator.validate(action); + + assertEquals(action.getMyField(), null); + assertFalse(action.hasFieldErrors()); + } + + public void testStringLengthEmptyTrim1() throws Exception { + action.setMyField(" "); + + validator.setTrim(true); + validator.validate(action); + + assertEquals(action.getMyField(), " "); + assertFalse(action.hasFieldErrors()); + } + + public void testStringLengthEmptyNoTrim2() throws Exception { + action.setMyField(" "); + + validator.setTrim(false); + validator.validate(action); + + assertEquals(action.getMyField(), " "); + assertTrue(action.hasFieldErrors()); + } + + + public void testStringLengthNullTrim() throws Exception { + action.setMyField(null); + + validator.setTrim(true); + validator.validate(action); + + assertEquals(action.getMyField(), null); + assertFalse(action.hasFieldErrors()); + } + + public void testInvalidStringLengthNoTrim() throws Exception { + action.setMyField("abcdefghijklmn"); + + validator.setTrim(false); + validator.validate(action); + + assertEquals(action.getMyField(), "abcdefghijklmn"); + assertTrue(action.hasFieldErrors()); + } + + public void testInvalidStringLengthTrim() throws Exception { + action.setMyField("abcdefghijklmn "); + + validator.setTrim(true); + validator.validate(action); + + assertEquals(action.getMyField(), "abcdefghijklmn "); + assertTrue(action.hasFieldErrors()); + } + + public void testValidStringLengthNoTrim() throws Exception { + action.setMyField(" "); + + validator.setTrim(false); + validator.validate(action); + + assertEquals(action.getMyField(), " "); + assertFalse(action.hasFieldErrors()); + } + + public void testValidStringLengthTrim() throws Exception { + action.setMyField("asd "); + + validator.setTrim(true); + validator.validate(action); + + assertEquals(action.getMyField(), "asd "); + assertFalse(action.hasFieldErrors()); + } + + public void testArrayOfStringsLengthTrim() throws Exception { + action.setStrings(new String[]{"123456", " ", null}); + + validator.setFieldName("strings"); + validator.setTrim(true); + validator.validate(action); + + assertTrue(action.hasFieldErrors()); + assertEquals(1, action.getFieldErrors().get("strings").size()); + } + + public void testCollectionOfStringsLengthTrim() throws Exception { + action.setStringCollection(Arrays.asList("123456", " ", null)); + + validator.setFieldName("stringCollection"); + validator.setTrim(true); + validator.validate(action); + + assertTrue(action.hasFieldErrors()); + assertEquals(1, action.getFieldErrors().get("stringCollection").size()); + } public void testMinLengthViaExpression() throws Exception { assertEquals(2, validator.getMinLength()); @@ -151,41 +175,44 @@ public void testTrimViaExpression() throws Exception { } @Override - protected void setUp() throws Exception { - super.setUp(); + protected void setUp() throws Exception { + super.setUp(); action = new InternalActionSupport(); - container.inject(action); + container.inject(action); ValueStack valueStack = ActionContext.getContext().getValueStack(); valueStack.push(action); - validator = new StringLengthFieldValidator(); - validator.setFieldName("myField"); - validator.setMessageKey("error"); - validator.setValidatorContext(new DelegatingValidatorContext(action, container.getInstance(TextProviderFactory.class))); - validator.setMaxLength(5); - validator.setMinLength(2); + validator = new StringLengthFieldValidator(); + validator.setFieldName("myField"); + validator.setMessageKey("error"); + validator.setValidatorContext(new DelegatingValidatorContext(action, container.getInstance(TextProviderFactory.class))); + validator.setMaxLength(5); + validator.setMinLength(2); validator.setValueStack(valueStack); } - - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - action = null; - validator = null; - } - - public static class InternalActionSupport extends ActionSupport { - private static final long serialVersionUID = 1L; + + @Override + protected void tearDown() throws Exception { + super.tearDown(); + action = null; + validator = null; + } + + public static class InternalActionSupport extends ActionSupport { + + private static final long serialVersionUID = 1L; private String myField; private boolean trimValue; private int minLengthValue; private int maxLengthValue; + private String[] strings; + private Collection stringCollection; + public String getMyField() { return this.myField; } @@ -218,6 +245,21 @@ public void setMaxLengthValue(int maxLengthValue) { this.maxLengthValue = maxLengthValue; } + public String[] getStrings() { + return strings; + } + + public void setStrings(String[] strings) { + this.strings = strings; + } + + public Collection getStringCollection() { + return stringCollection; + } + + public void setStringCollection(Collection stringCollection) { + this.stringCollection = stringCollection; + } } } From 2fe050578aac9e997480895c8caf4146d2725d04 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 13 Apr 2017 07:31:16 +0200 Subject: [PATCH 0037/2288] Fixes wrong injection type --- .../org/apache/struts2/interceptor/TokenInterceptor.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java index 13616712be..a31a8e90ae 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java @@ -23,6 +23,7 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.TextProvider; +import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.interceptor.ValidationAware; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; @@ -128,8 +129,8 @@ public class TokenInterceptor extends MethodFilterInterceptor { private TextProvider textProvider; @Inject - public void setTextProvider(TextProvider textProvider) { - this.textProvider = textProvider; + public void setTextProviderFactory(TextProviderFactory textProviderFactory) { + this.textProvider = textProviderFactory.createInstance(getClass()); } /** From 6f272e4873bdba03c1b3fe3ac8c0670b680d2c6c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 11:16:59 +0200 Subject: [PATCH 0038/2288] WW-4578 Converts URL validator to support collections --- .../validator/validators/URLValidator.java | 43 ++- .../xwork2/validator/URLValidatorTest.java | 347 +++++++++++------- 2 files changed, 242 insertions(+), 148 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index f12c28630b..d579e342aa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -20,6 +20,8 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import java.util.Collection; +import java.util.Objects; import java.util.regex.Pattern; /** @@ -65,19 +67,48 @@ public class URLValidator extends FieldValidatorSupport { private Pattern urlPattern = Pattern.compile(DEFAULT_URL_REGEX, Pattern.CASE_INSENSITIVE); public void validate(Object object) throws ValidationException { - String fieldName = getFieldName(); - Object value = this.getFieldValue(fieldName, object); + Object value = getFieldValue(fieldName, object); // if there is no value - don't do comparison // if a value is required, a required validator should be added to the field - if (value == null || value.toString().length() == 0) { + String stringValue = Objects.toString(value, "").trim(); + if (stringValue.length() == 0) { + LOG.debug("Value for field {} is empty, won't ba validated, please use required validator", fieldName); return; } - String stringValue = String.valueOf(value).trim(); + if (value.getClass().isArray()) { + Object[] values = (Object[]) value; + for (Object objValue : values) { + LOG.debug("Validating element of array: {}", objValue); + validateValue(object, objValue); + } + } else if (Collection.class.isAssignableFrom(value.getClass())) { + Collection values = (Collection) value; + for (Object objValue : values) { + LOG.debug("Validating element of collection: {}", objValue); + validateValue(object, objValue); + } + } else { + LOG.debug("Validating field: {}", value); + validateValue(object, value); + } + } - if (!(value.getClass().equals(String.class)) || !getUrlPattern().matcher(stringValue).matches()) { - addFieldError(fieldName, object); + protected void validateValue(Object object, Object value) { + String stringValue = Objects.toString(value, "").trim(); + if (stringValue.length() == 0) { + LOG.debug("Value for field {} is empty, won't ba validated, please use required validator", fieldName); + return; + } + + try { + setCurrentValue(value); + if (!(value.getClass().equals(String.class)) || !getUrlPattern().matcher(stringValue).matches()) { + addFieldError(fieldName, object); + } + } finally { + setCurrentValue(null); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java index b961d78f21..5c83dd1fcb 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java @@ -22,96 +22,98 @@ import com.opensymphony.xwork2.validator.validators.URLValidator; import org.apache.commons.validator.routines.UrlValidator; +import java.util.Arrays; +import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.regex.Pattern; /** * Test case for URLValidator - * + * * @author tm_jee * @version $Date$ $Id$ */ public class URLValidatorTest extends XWorkTestCase { - - ValueStack stack; - ActionContext actionContext; - private TextProviderFactory tpf; - public void testAcceptNullValueForMutualExclusionOfValidators() throws Exception { - - URLValidator validator = new URLValidator(); - validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); - validator.setFieldName("testingUrl1"); + ValueStack stack; + ActionContext actionContext; + private TextProviderFactory tpf; + + public void testAcceptNullValueForMutualExclusionOfValidators() throws Exception { + + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("testingUrl1"); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.validate(new MyObject()); - - assertFalse(validator.getValidatorContext().hasErrors()); - assertFalse(validator.getValidatorContext().hasActionErrors()); - assertFalse(validator.getValidatorContext().hasActionMessages()); - assertFalse(validator.getValidatorContext().hasFieldErrors()); - } - - public void testInvalidEmptyValue() throws Exception { - - URLValidator validator = new URLValidator(); - validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); - validator.setFieldName("testingUrl2"); + + assertFalse(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertFalse(validator.getValidatorContext().hasFieldErrors()); + } + + public void testInvalidEmptyValue() throws Exception { + + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("testingUrl2"); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.validate(new MyObject()); - - assertFalse(validator.getValidatorContext().hasErrors()); - assertFalse(validator.getValidatorContext().hasActionErrors()); - assertFalse(validator.getValidatorContext().hasActionMessages()); - assertFalse(validator.getValidatorContext().hasFieldErrors()); - } - - public void testInvalidValue() throws Exception { - - URLValidator validator = new URLValidator(); - validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); - validator.setFieldName("testingUrl3"); + + assertFalse(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertFalse(validator.getValidatorContext().hasFieldErrors()); + } + + public void testInvalidValue() throws Exception { + + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("testingUrl3"); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.validate(new MyObject()); - - assertTrue(validator.getValidatorContext().hasErrors()); - assertFalse(validator.getValidatorContext().hasActionErrors()); - assertFalse(validator.getValidatorContext().hasActionMessages()); - assertTrue(validator.getValidatorContext().hasFieldErrors()); - } - - - public void testValidUrl1() throws Exception { - - URLValidator validator = new URLValidator(); - validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); - validator.setFieldName("testingUrl4"); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + } + + + public void testValidUrl1() throws Exception { + + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("testingUrl4"); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.validate(new MyObject()); - - assertFalse(validator.getValidatorContext().hasErrors()); - assertFalse(validator.getValidatorContext().hasActionErrors()); - assertFalse(validator.getValidatorContext().hasActionMessages()); - assertFalse(validator.getValidatorContext().hasFieldErrors()); - } - - public void testValidUrl2() throws Exception { - - URLValidator validator = new URLValidator(); - validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); - validator.setFieldName("testingUrl5"); + + assertFalse(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertFalse(validator.getValidatorContext().hasFieldErrors()); + } + + public void testValidUrl2() throws Exception { + + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("testingUrl5"); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.validate(new MyObject()); - - assertFalse(validator.getValidatorContext().hasErrors()); - assertFalse(validator.getValidatorContext().hasActionErrors()); - assertFalse(validator.getValidatorContext().hasActionMessages()); - assertFalse(validator.getValidatorContext().hasFieldErrors()); - } - - public void testValidUrlWithRegex() throws Exception { - URLValidator validator = new URLValidator(); + + assertFalse(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertFalse(validator.getValidatorContext().hasFieldErrors()); + } + + public void testValidUrlWithRegex() throws Exception { + URLValidator validator = new URLValidator(); validator.setUrlRegex("^myapp:\\/\\/[a-z]*\\.com$"); @@ -119,10 +121,10 @@ public void testValidUrlWithRegex() throws Exception { assertTrue(pattern.matcher("myapp://test.com").matches()); assertFalse(pattern.matcher("myap://test.com").matches()); - } + } - public void testValidUrlWithRegexExpression() throws Exception { - URLValidator validator = new URLValidator(); + public void testValidUrlWithRegexExpression() throws Exception { + URLValidator validator = new URLValidator(); ActionContext.getContext().getValueStack().push(new MyAction()); validator.setValueStack(ActionContext.getContext().getValueStack()); validator.setUrlRegexExpression("${urlRegex}"); @@ -131,10 +133,10 @@ public void testValidUrlWithRegexExpression() throws Exception { assertTrue(pattern.matcher("myapp://test.com").matches()); assertFalse(pattern.matcher("myap://test.com").matches()); - } + } - public void testValidUrlWithDefaultRegex() throws Exception { - URLValidator validator = new URLValidator(); + public void testValidUrlWithDefaultRegex() throws Exception { + URLValidator validator = new URLValidator(); Pattern pattern = Pattern.compile(validator.getUrlRegex(), Pattern.CASE_INSENSITIVE); @@ -143,7 +145,7 @@ public void testValidUrlWithDefaultRegex() throws Exception { assertFalse(pattern.matcher("").matches()); assertFalse(pattern.matcher(" ").matches()); assertFalse(pattern.matcher("no url").matches()); - assertFalse(pattern.matcher("http://example.com////////////////////////////////////////////////////////////////////////////////////??").matches()); + assertFalse(pattern.matcher("http://example.com////////////////////////////////////////////////////////////////////////////////////??").matches()); assertTrue(pattern.matcher("http://www.opensymphony.com").matches()); assertTrue(pattern.matcher("https://www.opensymphony.com").matches()); @@ -153,91 +155,152 @@ public void testValidUrlWithDefaultRegex() throws Exception { assertTrue(pattern.matcher("http://www.legalspace.com/__media__/js/netsoltrademark.php?d=www.a-vos-travaux.fr%2Facheter-un-aspirateur-sans-sac-pas-cher%2F").matches()); assertTrue(UrlValidator.getInstance().isValid("http://www.legalspace.com/__media__/js/netsoltrademark.php?d=www.a-vos-travaux.fr%2Facheter-un-aspirateur-sans-sac-pas-cher%2F")); - assertTrue(pattern.matcher("http://www.duadmin.isaev.Infoduadmin.Isaev.info/?a%5B%5D=%3Ca%20href%3Dhttp%3A%2F%2Fwww.aspert.fr%2Fun-seche-cheveux-lisseur-est-il-vraiment-utile%2F%3Eseche%20cheveux%20dyson%20test%3C%2Fa").matches()); - assertTrue(UrlValidator.getInstance().isValid("http://www.duadmin.isaev.Infoduadmin.Isaev.info/?a%5B%5D=%3Ca%20href%3Dhttp%3A%2F%2Fwww.aspert.fr%2Fun-seche-cheveux-lisseur-est-il-vraiment-utile%2F%3Eseche%20cheveux%20dyson%20test%3C%2Fa")); + assertTrue(pattern.matcher("http://www.duadmin.isaev.Infoduadmin.Isaev.info/?a%5B%5D=%3Ca%20href%3Dhttp%3A%2F%2Fwww.aspert.fr%2Fun-seche-cheveux-lisseur-est-il-vraiment-utile%2F%3Eseche%20cheveux%20dyson%20test%3C%2Fa").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://www.duadmin.isaev.Infoduadmin.Isaev.info/?a%5B%5D=%3Ca%20href%3Dhttp%3A%2F%2Fwww.aspert.fr%2Fun-seche-cheveux-lisseur-est-il-vraiment-utile%2F%3Eseche%20cheveux%20dyson%20test%3C%2Fa")); - assertTrue(pattern.matcher("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F").matches()); - assertTrue(UrlValidator.getInstance().isValid("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F")); - } + assertTrue(pattern.matcher("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F")); + } - public void testValidUrlCaseInsensitive() throws Exception { - // given - final Map fieldErrors = new HashMap<>(); + public void testValidUrlCaseInsensitive() throws Exception { + // given + final Map fieldErrors = new HashMap<>(); - URLValidator validator = new URLValidator() { - @Override - public String getFieldName() { - return "url"; - } + URLValidator validator = new URLValidator() { + @Override + public String getFieldName() { + return "url"; + } - @Override - protected Object getFieldValue(String name, Object object) throws ValidationException { - return object; - } + @Override + protected Object getFieldValue(String name, Object object) throws ValidationException { + return object; + } - @Override - protected void addFieldError(String propertyName, Object object) { - fieldErrors.put(propertyName, object); - } - }; + @Override + protected void addFieldError(String propertyName, Object object) { + fieldErrors.put(propertyName, object); + } + }; - // when + // when validator.validate("http://localhost:8080/myapp"); - // then - assertTrue(fieldErrors.isEmpty()); + // then + assertTrue(fieldErrors.isEmpty()); - // when + // when validator.validate("http://LOCALHOST:8080/MYAPP"); - // then - assertTrue(fieldErrors.isEmpty()); + // then + assertTrue(fieldErrors.isEmpty()); - // when + // when validator.validate("http://www.appache.org/TEST"); - // then - assertTrue(fieldErrors.isEmpty()); + // then + assertTrue(fieldErrors.isEmpty()); + } + + public void testArrayOfUrls() throws Exception { + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("urls"); + validator.setValueStack(ActionContext.getContext().getValueStack()); + validator.validate(new MyObject()); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().get("urls").size()); } - @Override + public void testCollectionOfUrls() throws Exception { + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("urlCollection"); + validator.setValueStack(ActionContext.getContext().getValueStack()); + validator.setDefaultMessage("Wrong URL provided: ${currentValue}"); + validator.validate(new MyObject()); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + assertEquals(1, validator.getValidatorContext().getFieldErrors().get("urlCollection").size()); + assertEquals("Wrong URL provided: htps://wrong.side.com", validator.getValidatorContext().getFieldErrors().get("urlCollection").get(0)); + } + + public void testCollectionOfUrlsSafness() throws Exception { + URLValidator validator = new URLValidator(); + validator.setValidatorContext(new DummyValidatorContext(new Object(), tpf)); + validator.setFieldName("urlSafeness"); + validator.setValueStack(ActionContext.getContext().getValueStack()); + validator.setDefaultMessage("Wrong URL provided: ${currentValue}"); + validator.validate(new MyObject()); + + assertTrue(validator.getValidatorContext().hasErrors()); + assertFalse(validator.getValidatorContext().hasActionErrors()); + assertFalse(validator.getValidatorContext().hasActionMessages()); + assertTrue(validator.getValidatorContext().hasFieldErrors()); + assertEquals(2, validator.getValidatorContext().getFieldErrors().get("urlSafeness").size()); + assertEquals("Wrong URL provided: ${1+2}", validator.getValidatorContext().getFieldErrors().get("urlSafeness").get(0)); + assertEquals("Wrong URL provided: %{2+3}", validator.getValidatorContext().getFieldErrors().get("urlSafeness").get(1)); + } + + @Override protected void setUp() throws Exception { - super.setUp(); - stack = ActionContext.getContext().getValueStack(); - actionContext = ActionContext.getContext(); - tpf = container.getInstance(TextProviderFactory.class); - } - - @Override + super.setUp(); + stack = ActionContext.getContext().getValueStack(); + actionContext = ActionContext.getContext(); + tpf = container.getInstance(TextProviderFactory.class); + } + + @Override protected void tearDown() throws Exception { - super.tearDown(); - stack = null; - actionContext = null; - } - - - class MyObject { - public String getTestingUrl1() { - return null; - } - - public String getTestingUrl2() { - return ""; - } - - public String getTestingUrl3() { - return "sasdasd@asddd"; - } - - public String getTestingUrl4() { - //return "http://yahoo.com/"; - return "http://www.jroller.com1?qwe=qwe"; - } - - public String getTestingUrl5() { - return "http://yahoo.com/articles?id=123\n"; - } - } + super.tearDown(); + stack = null; + actionContext = null; + } + + + class MyObject { + public String getTestingUrl1() { + return null; + } + + public String getTestingUrl2() { + return ""; + } + + public String getTestingUrl3() { + return "sasdasd@asddd"; + } + + public String getTestingUrl4() { + //return "http://yahoo.com/"; + return "http://www.jroller.com1?qwe=qwe"; + } + + public String getTestingUrl5() { + return "http://yahoo.com/articles?id=123\n"; + } + + public String[] getUrls() { + return new String[]{ + "https://struts.apache.org", + "htps://wrong.side.com" + }; + } + + public Collection getUrlCollection() { + return Arrays.asList("https://struts.apache.org","htps://wrong.side.com"); + } + public Collection getUrlSafeness() { + return Arrays.asList("https://struts.apache.org","${1+2}", "%{2+3}"); + } + } class MyAction { From 569e1f6c82dbb562f105279df68e3dd2cf0545bd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 11:18:39 +0200 Subject: [PATCH 0039/2288] WW-4578 Fixes small typo --- .../xwork2/validator/validators/URLValidator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index d579e342aa..6dd29f736f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -73,7 +73,7 @@ public void validate(Object object) throws ValidationException { // if a value is required, a required validator should be added to the field String stringValue = Objects.toString(value, "").trim(); if (stringValue.length() == 0) { - LOG.debug("Value for field {} is empty, won't ba validated, please use required validator", fieldName); + LOG.debug("Value for field {} is empty, won't ba validated, please use a required validator", fieldName); return; } @@ -98,7 +98,7 @@ public void validate(Object object) throws ValidationException { protected void validateValue(Object object, Object value) { String stringValue = Objects.toString(value, "").trim(); if (stringValue.length() == 0) { - LOG.debug("Value for field {} is empty, won't ba validated, please use required validator", fieldName); + LOG.debug("Value for field {} is empty, won't ba validated, please use a required validator", fieldName); return; } From 1ad6d2c31726864275458c02f9cbbe22936f7833 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 11:25:22 +0200 Subject: [PATCH 0040/2288] WW-4578 Cleans up code --- .../validators/RegexFieldValidator.java | 24 +++++++-------- .../validators/RequiredStringValidator.java | 29 +++++++++++-------- .../StringLengthFieldValidator.java | 13 ++++++--- .../validator/validators/URLValidator.java | 6 ++-- 4 files changed, 39 insertions(+), 33 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index b1ca900079..eff835cf14 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -95,9 +95,9 @@ public class RegexFieldValidator extends FieldValidatorSupport { private String regex; private String regexExpression; private Boolean caseSensitive = true; - private String caseSensitiveExpression = ""; + private String caseSensitiveExpression = EMPTY_STRING; private Boolean trim = true; - private String trimExpression = ""; + private String trimExpression = EMPTY_STRING; public void validate(Object object) throws ValidationException { String fieldName = getFieldName(); @@ -108,32 +108,30 @@ public void validate(Object object) throws ValidationException { LOG.debug("Defined regexp as [{}]", regexToUse); if (value == null || regexToUse == null) { + LOG.debug("Either value is empty (please use a required validator) or regex is empty"); return; } - if (value instanceof String) { - validateFieldValue(object, fieldName, (String) value, regexToUse); - } - if (value.getClass().isArray()) { Object[] values = (Object[]) value; for (Object objValue: values) { - validateFieldValue(object, fieldName, Objects.toString(objValue, EMPTY_STRING), regexToUse); + validateFieldValue(object, Objects.toString(objValue, EMPTY_STRING), regexToUse); } - } - - if (Collection.class.isAssignableFrom(value.getClass())) { - Collection values = (Collection) value; + } else if (Collection.class.isAssignableFrom(value.getClass())) { + Collection values = (Collection) value; for (Object objValue : values) { - validateFieldValue(object, fieldName, Objects.toString(objValue, EMPTY_STRING), regexToUse); + validateFieldValue(object, Objects.toString(objValue, EMPTY_STRING), regexToUse); } + } else { + validateFieldValue(object, Objects.toString(value, EMPTY_STRING), regexToUse); } } - protected void validateFieldValue(Object object, String fieldName, String value, String regexToUse) { + protected void validateFieldValue(Object object, String value, String regexToUse) { // string must not be empty String str = value.trim(); if (str.length() == 0) { + LOG.debug("Value is empty, please use a required validator"); return; } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java index 433fd6082c..d11ff4ec80 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java @@ -109,23 +109,28 @@ public void validate(Object object) throws ValidationException { } protected void validateValue(Object object, Object fieldValue) { - if (fieldValue == null) { - addFieldError(getFieldName(), object); - return; - } + try { + setCurrentValue(fieldValue); + if (fieldValue == null) { + addFieldError(getFieldName(), object); + return; + } - if (fieldValue instanceof String) { - String stingValue = (String) fieldValue; + if (fieldValue instanceof String) { + String stingValue = (String) fieldValue; - if (trim) { - stingValue = stingValue.trim(); - } + if (trim) { + stingValue = stingValue.trim(); + } - if (stingValue.length() == 0) { + if (stingValue.length() == 0) { + addFieldError(getFieldName(), object); + } + } else { addFieldError(getFieldName(), object); } - } else { - addFieldError(getFieldName(), object); + } finally { + setCurrentValue(null); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java index 0c4f0fc14b..2e1957d047 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java @@ -183,10 +183,15 @@ protected void validateValue(Object object, Object value) { int minLengthToUse = getMinLength(); int maxLengthToUse = getMaxLength(); - if ((minLengthToUse > -1) && (stringValue.length() < minLengthToUse)) { - addFieldError(fieldName, object); - } else if ((maxLengthToUse > -1) && (stringValue.length() > maxLengthToUse)) { - addFieldError(fieldName, object); + try { + setCurrentValue(stringValue); + if ((minLengthToUse > -1) && (stringValue.length() < minLengthToUse)) { + addFieldError(fieldName, object); + } else if ((maxLengthToUse > -1) && (stringValue.length() > maxLengthToUse)) { + addFieldError(fieldName, object); + } + } finally { + setCurrentValue(null); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index 6dd29f736f..eab0fa8a47 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -69,9 +69,7 @@ public class URLValidator extends FieldValidatorSupport { public void validate(Object object) throws ValidationException { Object value = getFieldValue(fieldName, object); - // if there is no value - don't do comparison - // if a value is required, a required validator should be added to the field - String stringValue = Objects.toString(value, "").trim(); + String stringValue = Objects.toString(value, EMPTY_STRING).trim(); if (stringValue.length() == 0) { LOG.debug("Value for field {} is empty, won't ba validated, please use a required validator", fieldName); return; @@ -96,7 +94,7 @@ public void validate(Object object) throws ValidationException { } protected void validateValue(Object object, Object value) { - String stringValue = Objects.toString(value, "").trim(); + String stringValue = Objects.toString(value, EMPTY_STRING).trim(); if (stringValue.length() == 0) { LOG.debug("Value for field {} is empty, won't ba validated, please use a required validator", fieldName); return; From b1f9068f2ba7d4c61259414d1f46f32f2dda66c6 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 12:25:04 +0200 Subject: [PATCH 0041/2288] Puts back indentation --- .../validators/DoubleRangeFieldValidator.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java index f968b97c16..fa775d813f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java @@ -32,15 +32,15 @@ * * *
    - *
  • fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required
  • - *
  • minInclusive - the minimum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • maxInclusive - the maximum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • minExclusive - the minimum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • maxExclusive - the maximum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • - *
  • minInclusiveExpression - the minimum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • maxInclusiveExpression - the maximum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • minExclusiveExpression - the minimum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • - *
  • maxExclusiveExpression - the maximum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required
  • + *
  • minInclusive - the minimum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • maxInclusive - the maximum inclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • minExclusive - the minimum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • maxExclusive - the maximum exclusive value in FloatValue format specified by Java language (if none is specified, it will not be checked)
  • + *
  • minInclusiveExpression - the minimum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • maxInclusiveExpression - the maximum inclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • minExclusiveExpression - the minimum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • + *
  • maxExclusiveExpression - the maximum exclusive value specified as a OGNL expression (if none is specified, it will not be checked)
  • *
* * You can specify either minInclusive, maxInclusive, minExclusive and maxExclusive or minInclusiveExpression, maxInclusiveExpression, From 034e0981847aefc67d8be8530eb08e1041e8d7fe Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 12:45:56 +0200 Subject: [PATCH 0042/2288] Reduces scope --- .../xwork2/validator/validators/FieldValidatorSupport.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index 07938c9d89..07f6412361 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -23,7 +23,7 @@ * You can access fieldName and its currentValue in a message using expression, e.g. * "Wrong value ${currentValue} for ${fieldName}" */ -public abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { +abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { protected String fieldName; protected String type; @@ -51,7 +51,7 @@ public Object getCurrentValue() { return currentValue; } - public void setCurrentValue(Object currentValue) { + void setCurrentValue(Object currentValue) { this.currentValue = currentValue; } } From 30ec6f83109747e0801c2019ba05f498fcb506bf Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 14 Apr 2017 12:54:20 +0200 Subject: [PATCH 0043/2288] Puts back public scope for class --- .../xwork2/validator/validators/FieldValidatorSupport.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index 07f6412361..8ffffad5ab 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -23,7 +23,7 @@ * You can access fieldName and its currentValue in a message using expression, e.g. * "Wrong value ${currentValue} for ${fieldName}" */ -abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { +public abstract class FieldValidatorSupport extends ValidatorSupport implements FieldValidator { protected String fieldName; protected String type; From 13f49a09780e2bfba3af48ee736598fbf5c2b7b5 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 16 Apr 2017 14:33:15 +0200 Subject: [PATCH 0044/2288] WW-4785 Allows disable multipart support via an config option --- .../org/apache/struts2/StrutsConstants.java | 5 ++++ .../apache/struts2/dispatcher/Dispatcher.java | 24 ++++++++++++++++++- .../struts2/dispatcher/DispatcherTest.java | 12 +++++++++- 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index b41f7e6777..f9d9b24f4d 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -139,6 +139,11 @@ public final class StrutsConstants { */ public static final String STRUTS_MULTIPART_PARSER = "struts.multipart.parser"; + /** + * A global switch to disable support for multipart requests + */ + public static final String STRUTS_MULTIPART_ENABLED = "struts.multipart.enabled"; + public static final String STRUTS_MULTIPART_VALIDATION_REGEX = "struts.multipart.validationRegex"; /** How Spring should autowire. Valid values are 'name', 'type', 'auto', and 'constructor' */ 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 ea92eaf17e..364524193b 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -129,6 +129,11 @@ public class Dispatcher { */ private String multipartHandlerName; + /** + * Stores the value of {@link StrutsConstants#STRUTS_MULTIPART_ENABLED} + */ + private boolean multipartSupportEnabled = true; + /** * A regular expression used to validate if request is a multipart/form-data request */ @@ -277,6 +282,11 @@ public void setMultipartHandler(String val) { multipartHandlerName = val; } + @Inject(value = StrutsConstants.STRUTS_MULTIPART_ENABLED, required = false) + public void setMultipartSupportEnabled(String multipartSupportEnabled) { + this.multipartSupportEnabled = Boolean.parseBoolean(multipartSupportEnabled); + } + @Inject(value = StrutsConstants.STRUTS_MULTIPART_VALIDATION_REGEX, required = false) public void setMultipartValidationRegex(String multipartValidationRegex) { this.multipartValidationPattern = Pattern.compile(multipartValidationRegex); @@ -799,7 +809,7 @@ public HttpServletRequest wrapRequest(HttpServletRequest request) throws IOExcep return request; } - if (isMultipartRequest(request)) { + if (isMultipartSupportEnabled(request) && isMultipartRequest(request)) { MultiPartRequest multiPartRequest = getMultiPartRequest(); LocaleProviderFactory localeProviderFactory = getContainer().getInstance(LocaleProviderFactory.class); @@ -817,6 +827,18 @@ public HttpServletRequest wrapRequest(HttpServletRequest request) throws IOExcep return request; } + /** + * Checks if support to parse multipart requests is enabled + * + * @param request current servlet request + * @return false if disabled + * + * @since 2.5.11 + */ + protected boolean isMultipartSupportEnabled(HttpServletRequest request) { + return multipartSupportEnabled; + } + /** * Checks if request is a multipart request (a file upload request) * diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index ffa43e1dd1..8001bd26ef 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -257,7 +257,17 @@ public void testInterceptorDestroy() throws Exception { mockContainer.verify(); mockConfiguration.verify(); } - + + public void testMultipartSupportEnabledByDefault() throws Exception { + HttpServletRequest req = new MockHttpServletRequest(); + HttpServletResponse res = new MockHttpServletResponse(); + + Dispatcher du = initDispatcher(Collections.emptyMap()); + du.prepare(req, res); + + assertTrue(du.isMultipartSupportEnabled(req)); + } + class InternalConfigurationManager extends ConfigurationManager { public boolean destroyConfiguration = false; From 9d4aac0589306e677c36a732c1c34c1da75304be Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 09:40:10 +0200 Subject: [PATCH 0045/2288] WW-4786 Properly handles empty spaces in path --- .../org/apache/struts2/tiles/StrutsApplicationResource.java | 5 +---- .../tiles/StrutsWildcardServletApplicationContext.java | 2 -- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java index 4ff5b5470d..71538570ff 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java @@ -37,10 +37,7 @@ public StrutsApplicationResource(URL url) { @Override public InputStream getInputStream() throws IOException { - if (new File(url.getPath()).exists()) { - return url.openStream(); - } - return null; + return url.openStream(); } @Override diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java index abe90aaa6a..a7383b804c 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java @@ -119,8 +119,6 @@ protected Set findResources(String path) throws IOException Pattern pattern = WildcardUtil.compileWildcardPattern(path); Map matches = finder.getResourcesMap(""); - LOG.trace("Found resources {} matching pattern {}", matches, path); - for (String resource : matches.keySet()) { if (pattern.matcher(resource).matches()) { URL url = matches.get(resource); From 293d2fd177551736e4270c31cf4c7e65c4912352 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 10:40:43 +0200 Subject: [PATCH 0046/2288] WW-4754 Marks sitegraph plugin as deprecated --- plugins/sitegraph/pom.xml | 2 +- plugins/sitegraph/src/main/java/org/apache/struts2/Main.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index 24f55b86bd..e2bb32f2cf 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -31,7 +31,7 @@ struts2-sitegraph-plugin jar - Struts 2 Sitegraph Plugin + DEPRECATED: Struts 2 Sitegraph Plugin diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java b/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java index ced45112f0..bfc19ef01a 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java @@ -44,7 +44,9 @@ *

You can access the help information for these tools by simply running the jar without any arguments.

* * + * @deprecated */ +@Deprecated public class Main { public static void main(String[] args) { if (args.length == 0) { From 01d710bdf3dace8cf964bcd32d0afe14cf251dc2 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 18:05:53 +0200 Subject: [PATCH 0047/2288] WW-3952 Adds implementation of credit card validator --- .../validators/CreditCardValidator.java | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java new file mode 100644 index 0000000000..94ee646a1b --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java @@ -0,0 +1,46 @@ +/* + * 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.validator.validators; + + +import org.apache.commons.lang3.StringUtils; + +/** + * CreditCardFieldValidator checks that a given String/Array/Collection field, + * if not empty, is a valid credit card number. + */ +public class CreditCardValidator extends RegexFieldValidator { + + public static final String CREDIT_CARD_PATTERN = + "^(?:4[0-9]{12}(?:[0-9]{3})?" + // Visa + "|(?:5[1-5][0-9]{2}" + // MasterCard + "|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}" + + "|3[47][0-9]{13}" + // American Express + "|3(?:0[0-5]|[68][0-9])[0-9]{11}" + // Diners Club + "|6(?:011|5[0-9]{2})[0-9]{12}" + // Discover + "|(?:2131|1800|35\\d{3})\\d{11}" + // JCB + ")$"; + + public CreditCardValidator() { + setRegex(CREDIT_CARD_PATTERN); + setCaseSensitive(false); + } + + protected void validateFieldValue(Object object, String value, String regexToUse) { + super.validateFieldValue(object, StringUtils.deleteWhitespace(value), regexToUse); + } + +} From fc497360bee7084293749f712dec233eb219bbf4 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 18:06:17 +0200 Subject: [PATCH 0048/2288] WW-3952 Adds test to check implementation --- .../validators/CreditCardValidatorTest.java | 230 ++++++++++++++++++ 1 file changed, 230 insertions(+) create mode 100644 core/src/test/java/com/opensymphony/xwork2/validator/validators/CreditCardValidatorTest.java diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/validators/CreditCardValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/validators/CreditCardValidatorTest.java new file mode 100644 index 0000000000..877b964920 --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/validator/validators/CreditCardValidatorTest.java @@ -0,0 +1,230 @@ +package com.opensymphony.xwork2.validator.validators; + +import com.opensymphony.xwork2.TextProviderFactory; +import com.opensymphony.xwork2.util.ValueStack; +import com.opensymphony.xwork2.util.ValueStackFactory; +import com.opensymphony.xwork2.validator.DummyValidatorContext; +import com.opensymphony.xwork2.validator.ValidatorContext; +import org.apache.struts2.StrutsInternalTestCase; + +import java.util.Arrays; +import java.util.List; + +public class CreditCardValidatorTest extends StrutsInternalTestCase { + + private CreditCardValidator validator; + private CreditCardAction action; + private ValidatorContext context; + + public void testInvalidCardNumber() throws Exception { + // given + action.setAmericanExpress("123456768900"); + validator.setFieldName("americanExpress"); + validator.setDefaultMessage("It is not a valid American Express card number: ${americanExpress}"); + + // when + validator.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals("It is not a valid American Express card number: 123456768900", context.getFieldErrors().get("americanExpress").get(0)); + } + + public void testInvalidArrayOfCardNumbers() throws Exception { + // given + action.setAmericanExpresses(new String[]{"098776544322"}); + validator.setFieldName("americanExpresses"); + validator.setDefaultMessage("It is not a valid American Express card number: ${currentValue}"); + + // when + validator.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals("It is not a valid American Express card number: 098776544322", context.getFieldErrors().get("americanExpresses").get(0)); + } + + public void testEmptyArrayOfCardNumbers() throws Exception { + // given + action.setAmericanExpresses(new String[]{}); + validator.setFieldName("americanExpresses"); + validator.setDefaultMessage("It is not a valid American Express card number: ${currentValue}"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testInvalidCollectionOfCardNumbers() throws Exception { + // given + action.setDinerClubs(Arrays.asList("75736151433")); + validator.setFieldName("dinerClubs"); + validator.setDefaultMessage("It is not a valid Diner Club card number: ${currentValue}"); + + // when + validator.validate(action); + + // then + assertTrue(context.hasFieldErrors()); + assertEquals(1, context.getFieldErrors().size()); + assertEquals("It is not a valid Diner Club card number: 75736151433", context.getFieldErrors().get("dinerClubs").get(0)); + } + + public void testValidAmericanExpressCard() throws Exception { + // given + action.setAmericanExpress("378282246310005"); + validator.setFieldName("americanExpress"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testValidAmericanExpressCardWithSpaces() throws Exception { + // given + action.setAmericanExpress("3782 8224 6310 005"); + validator.setFieldName("americanExpress"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testValidDinersClubCard() throws Exception { + // given + action.setDinersClub("30569309025904"); + validator.setFieldName("dinersClub"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testValidJCBCard() throws Exception { + // given + action.setJCB("3530111333300000"); + validator.setFieldName("JCB"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testMasterCardCard() throws Exception { + // given + action.setMasterCard("5555555555554444"); + validator.setFieldName("masterCard"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + public void testVisaCard() throws Exception { + // given + action.setVisa("4111111111111111"); + validator.setFieldName("visa"); + + // when + validator.validate(action); + + // then + assertFalse(context.hasFieldErrors()); + } + + protected void setUp() throws Exception { + super.setUp(); + validator = new CreditCardValidator(); + action = new CreditCardAction(); + TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); + context = new DummyValidatorContext(action, tpf); + validator.setValidatorContext(context); + + ValueStack valueStack = container.getInstance(ValueStackFactory.class).createValueStack(); + valueStack.push(action); + + validator.setValueStack(valueStack); + } + +} + +class CreditCardAction { + + private String americanExpress; + private String dinersClub; + private String JCB; + private String masterCard; + private String visa; + private String[] americanExpresses; + private List dinerClubs; + + public void setAmericanExpress(String americanExpress) { + this.americanExpress = americanExpress; + } + + public String getAmericanExpress() { + return americanExpress; + } + + public void setDinersClub(String dinersClub) { + this.dinersClub = dinersClub; + } + + public String getDinersClub() { + return dinersClub; + } + + public void setJCB(String JCB) { + this.JCB = JCB; + } + + public String getJCB() { + return JCB; + } + + public void setMasterCard(String masterCard) { + this.masterCard = masterCard; + } + + public String getMasterCard() { + return masterCard; + } + + public void setVisa(String visa) { + this.visa = visa; + } + + public String getVisa() { + return visa; + } + + public void setAmericanExpresses(String[] americanExpresses) { + this.americanExpresses = americanExpresses; + } + + public String[] getAmericanExpresses() { + return americanExpresses; + } + + public void setDinerClubs(List dinerClubs) { + this.dinerClubs = dinerClubs; + } + + public List getDinerClubs() { + return dinerClubs; + } +} From 743d27f841ce990ed3153f569f890179bdbb6a37 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 18:06:31 +0200 Subject: [PATCH 0049/2288] WW-3952 Introduces annotation --- .../annotations/CreditCardValidator.java | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java new file mode 100644 index 0000000000..f007ab780b --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java @@ -0,0 +1,66 @@ +/* + * 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.validator.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * This validator checks that a field is a valid credit card. + */ +@Target({ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface CreditCardValidator { + + /** + * @return The default error message for this validator. + * NOTE: It is required to set a message, if you are not using the message key for 18n lookup! + */ + String message() default ""; + + /** + * @return The message key to lookup for i18n. + */ + String key() default ""; + + /** + * @return Additional params to be used to customize message - will be evaluated against the Value Stack + */ + String[] messageParams() default {}; + + /** + * @return The optional fieldName for SIMPLE validator types. + */ + String fieldName() default ""; + + /** + * If this is activated, the validator will be used as short-circuit. + * + * Adds the short-circuit='true' attribute value if true. + * + * @return true if validator will be used as short-circuit. Default is false. + */ + boolean shortCircuit() default false; + + /** + * @return The validation type for this field/method. + */ + ValidatorType type() default ValidatorType.FIELD; + +} From 0813eaa0c8f446404243fba87cde51a619643cb9 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 18:07:16 +0200 Subject: [PATCH 0050/2288] WW-3952 Extends existing logic to handle credit card validation --- ...otationValidationConfigurationBuilder.java | 39 +++++++++++++++++++ .../validator/annotations/Validations.java | 2 + .../validators/RegexFieldValidator.java | 11 ++++-- .../validator/AnnotationValidationAction.java | 3 ++ core/src/test/resources/validators.xml | 1 + 5 files changed, 53 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java index b587bf3d07..b2764cadea 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java @@ -122,6 +122,14 @@ else if (a instanceof EmailValidator) { result.add(temp); } } + // Process CrediCardValidator + else if (a instanceof CreditCardValidator) { + CreditCardValidator v = (CreditCardValidator) a; + ValidatorConfig temp = processCreditCardValidatorAnnotation(v, fieldName, methodName); + if (temp != null) { + result.add(temp); + } + } // Process FieldExpressionValidator else if (a instanceof FieldExpressionValidator) { FieldExpressionValidator v = (FieldExpressionValidator) a; @@ -263,6 +271,15 @@ private void processValidationAnnotation(Annotation a, String fieldName, String } } } + CreditCardValidator[] ccv = validations.creditCards(); + if (ccv != null) { + for (CreditCardValidator v : ccv) { + ValidatorConfig temp = processCreditCardValidatorAnnotation(v, fieldName, methodName); + if (temp != null) { + result.add(temp); + } + } + } FieldExpressionValidator[] fev = validations.fieldExpressions(); if (fev != null) { for (FieldExpressionValidator v : fev) { @@ -786,6 +803,28 @@ private ValidatorConfig processEmailValidatorAnnotation(EmailValidator v, String .build(); } + private ValidatorConfig processCreditCardValidatorAnnotation(CreditCardValidator v, String fieldName, String methodName) { + String validatorType = "creditcard"; + + Map params = new HashMap<>(); + + if (fieldName != null) { + params.put("fieldName", fieldName); + } else if (StringUtils.isNotEmpty(v.fieldName())) { + params.put("fieldName", v.fieldName()); + } + + validatorFactory.lookupRegisteredValidatorType(validatorType); + return new ValidatorConfig.Builder(validatorType) + .addParams(params) + .addParam("methodName", methodName) + .shortCircuit(v.shortCircuit()) + .defaultMessage(v.message()) + .messageKey(v.key()) + .messageParams(v.messageParams()) + .build(); + } + private ValidatorConfig processDateRangeFieldValidatorAnnotation(DateRangeFieldValidator v, String fieldName, String methodName) { String validatorType = "date"; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java index b4b640b714..bdf5a75dc2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java @@ -167,6 +167,8 @@ EmailValidator[] emails() default {}; + CreditCardValidator[] creditCards() default {}; + FieldExpressionValidator[] fieldExpressions() default {}; IntRangeFieldValidator[] intRangeFields() default {}; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index eff835cf14..f6e9748f90 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -148,9 +148,14 @@ protected void validateFieldValue(Object object, String value, String regexToUse compare = compare.trim(); } - Matcher matcher = pattern.matcher(compare); - if (!matcher.matches()) { - addFieldError(fieldName, object); + try { + setCurrentValue(compare); + Matcher matcher = pattern.matcher(compare); + if (!matcher.matches()) { + addFieldError(fieldName, object); + } + } finally { + setCurrentValue(null); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java index 6dbb429d98..9e95ddee0e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java @@ -3,6 +3,7 @@ import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.validator.annotations.ConditionalVisitorFieldValidator; import com.opensymphony.xwork2.validator.annotations.ConversionErrorFieldValidator; +import com.opensymphony.xwork2.validator.annotations.CreditCardValidator; import com.opensymphony.xwork2.validator.annotations.CustomValidator; import com.opensymphony.xwork2.validator.annotations.DateRangeFieldValidator; import com.opensymphony.xwork2.validator.annotations.DoubleRangeFieldValidator; @@ -45,6 +46,8 @@ public class AnnotationValidationAction extends ActionSupport { messageParams = {"one", "two", "three"}) @EmailValidator(message = "Foo isn't a valid e-mail!", fieldName = "foo", key = "email.key", messageParams = {"one", "two", "three"}, shortCircuit = true) + @CreditCardValidator(message = "Foo isn't a valid credit card!", fieldName = "foo", key = "creditCard.key", + messageParams = {"one", "two", "three"}, shortCircuit = true) @ExpressionValidator(expression = "true", message = "Is not true!", key = "expression.key", messageParams = {"one", "two", "three"}, shortCircuit = true) @FieldExpressionValidator(expression = "true", fieldName = "foo", key = "fieldexpression.key", message = "It is not true!", diff --git a/core/src/test/resources/validators.xml b/core/src/test/resources/validators.xml index 48369fa5db..5eff925d9c 100644 --- a/core/src/test/resources/validators.xml +++ b/core/src/test/resources/validators.xml @@ -11,6 +11,7 @@ + From eb4fcb4afc79dac03f6ed0780211f98e72a09851 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 19 Apr 2017 18:07:38 +0200 Subject: [PATCH 0051/2288] WW-3952 Updates test to include credit card validation --- ...tationValidationConfigurationBuilderTest.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java index da6df0142c..1bc05648b4 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java @@ -17,6 +17,7 @@ import com.opensymphony.xwork2.util.location.LocatableProperties; import com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator; import com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator; +import com.opensymphony.xwork2.validator.validators.CreditCardValidator; import com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator; import com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator; import com.opensymphony.xwork2.validator.validators.EmailValidator; @@ -50,7 +51,7 @@ public void testValidationAnnotation() throws Exception { List validators = manager.getValidators(AnnotationValidationAction.class, null); // then - assertEquals(validators.size(), 16); + assertEquals(validators.size(), 17); for (Validator validator : validators) { validate(validator); } @@ -89,6 +90,8 @@ private void validate(Validator validator) throws Exception { validateDoubleRangeFieldValidator((DoubleRangeFieldValidator) validator); } else if (validator.getValidatorType().equals("email")) { validateEmailValidator((EmailValidator) validator); + } else if (validator.getValidatorType().equals("creditcard")) { + validateCreditCardValidator((CreditCardValidator) validator); } else if (validator.getValidatorType().equals("expression")) { validateExpressionValidator((ExpressionValidator) validator); } else if (validator.getValidatorType().equals("fieldexpression")) { @@ -203,6 +206,17 @@ private void validateEmailValidator(EmailValidator validator) { assertEquals(true, validator.isTrimed()); } + private void validateCreditCardValidator(CreditCardValidator validator) { + assertEquals("foo", validator.getFieldName()); + assertEquals(CreditCardValidator.CREDIT_CARD_PATTERN, validator.getRegex()); + assertEquals("Foo isn't a valid credit card!", validator.getDefaultMessage()); + assertEquals("creditCard.key", validator.getMessageKey()); + assertTrue(Arrays.equals(new String[]{"one", "two", "three"}, validator.getMessageParameters())); + assertEquals(true, validator.isShortCircuit()); + assertEquals(false, validator.isCaseSensitive()); + assertEquals(true, validator.isTrimed()); + } + private void validateDoubleRangeFieldValidator(DoubleRangeFieldValidator validator) { assertEquals("foo", validator.getFieldName()); assertEquals("double.key", validator.getMessageKey()); From 47552bdb0673a88b0cd76cebc40f65477edd58d0 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 20 Apr 2017 08:28:46 +0200 Subject: [PATCH 0052/2288] WW-4210 Extends annotation to allow use class instead of string --- .../conversion/annotations/TypeConversion.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java index 6640659a05..db57573e2e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java @@ -15,6 +15,8 @@ */ package com.opensymphony.xwork2.conversion.annotations; +import com.opensymphony.xwork2.conversion.impl.XWorkBasicConverter; + import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -175,9 +177,20 @@ * Note: This can not be used with ConversionRule.KEY_PROPERTY! * * @return class of the TypeConverter to be used as converter + * @deprecated user {@link #converterClass()} instead */ + @Deprecated String converter() default ""; + /** + * The class of the TypeConverter to be used as converter. + * + * Note: This can not be used with ConversionRule.KEY_PROPERTY! + * + * @return class of the TypeConverter to be used as converter + */ + Class converterClass() default XWorkBasicConverter.class; + /** * If used with ConversionRule.KEY_PROPERTY specify a value here! * From 3e76564d3ce8d5b4a3938efd3a76c521eb045f38 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 20 Apr 2017 08:29:24 +0200 Subject: [PATCH 0053/2288] WW-4210 Supports defining converter as a class in the annotation --- .../conversion/TypeConverterCreator.java | 9 +++++ .../DefaultConversionAnnotationProcessor.java | 36 ++++++++++++++----- .../impl/DefaultTypeConverterCreator.java | 10 +++++- .../conversion/impl/XWorkConverter.java | 4 +-- 4 files changed, 48 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java index 738bbe82f4..438d31ca65 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java @@ -14,4 +14,13 @@ public interface TypeConverterCreator { */ TypeConverter createTypeConverter(String className) throws Exception; + /** + * Creates {@link TypeConverter} from given class + * + * @param clazz convert class + * @return instance of {@link TypeConverter} + * @throws Exception when cannot create/cast to {@link TypeConverter} + */ + TypeConverter createTypeConverter(Class clazz) throws Exception; + } diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java index c3faae3a52..5396712b27 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java @@ -8,6 +8,7 @@ import com.opensymphony.xwork2.conversion.annotations.ConversionType; import com.opensymphony.xwork2.conversion.annotations.TypeConversion; import com.opensymphony.xwork2.inject.Inject; +import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -34,28 +35,43 @@ public void setTypeConverterHolder(TypeConverterHolder converterHolder) { } public void process(Map mapping, TypeConversion tc, String key) { - LOG.debug("TypeConversion [{}] with key: [{}]", tc.converter(), key); + LOG.debug("TypeConversion [{}/{}] with key: [{}]", tc.converter(), tc.converterClass(), key); if (key == null) { return; } try { if (tc.type() == ConversionType.APPLICATION) { - converterHolder.addDefaultMapping(key, converterCreator.createTypeConverter(tc.converter())); + if (StringUtils.isNoneEmpty(tc.converter())) { + converterHolder.addDefaultMapping(key, converterCreator.createTypeConverter(tc.converter())); + } else { + converterHolder.addDefaultMapping(key, converterCreator.createTypeConverter(tc.converterClass())); + } } else { if (tc.rule() == ConversionRule.KEY_PROPERTY || tc.rule() == ConversionRule.CREATE_IF_NULL) { mapping.put(key, tc.value()); } //for properties of classes else if (tc.rule() != ConversionRule.ELEMENT || tc.rule() == ConversionRule.KEY || tc.rule() == ConversionRule.COLLECTION) { - mapping.put(key, converterCreator.createTypeConverter(tc.converter())); + if (StringUtils.isNoneEmpty(tc.converter())) { + mapping.put(key, converterCreator.createTypeConverter(tc.converter())); + } else { + mapping.put(key, converterCreator.createTypeConverter(tc.converterClass())); + } } //for keys of Maps else if (tc.rule() == ConversionRule.KEY) { - Class converterClass = Thread.currentThread().getContextClassLoader().loadClass(tc.converter()); + Class converterClass; + if (StringUtils.isNoneEmpty(tc.converter())) { + converterClass = Thread.currentThread().getContextClassLoader().loadClass(tc.converter()); + //check if the converter is a type converter if it is one + //then just put it in the map as is. Otherwise + //put a value in for the type converter of the class + } else { + converterClass = tc.converterClass(); + } + LOG.debug("Converter class: [{}]", converterClass); - //check if the converter is a type converter if it is one - //then just put it in the map as is. Otherwise - //put a value in for the type converter of the class + if (converterClass.isAssignableFrom(TypeConverter.class)) { mapping.put(key, converterCreator.createTypeConverter(tc.converter())); } else { @@ -65,7 +81,11 @@ else if (tc.rule() == ConversionRule.KEY) { } //elements(values) of maps / lists else { - mapping.put(key, Thread.currentThread().getContextClassLoader().loadClass(tc.converter())); + if (StringUtils.isNoneEmpty(tc.converter())) { + mapping.put(key, Thread.currentThread().getContextClassLoader().loadClass(tc.converter())); + } else { + mapping.put(key, tc.converterClass()); + } } } } catch (Exception e) { diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java index ed6ac22657..d9613b25a9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java @@ -19,8 +19,16 @@ public void setObjectFactory(ObjectFactory objectFactory) { } public TypeConverter createTypeConverter(String className) throws Exception { - // type converters are used across users Object obj = objectFactory.buildBean(className, null); + return getTypeConverter(obj); + } + + public TypeConverter createTypeConverter(Class clazz) throws Exception { + Object obj = objectFactory.buildBean(clazz, null); + return getTypeConverter(obj); + } + + protected TypeConverter getTypeConverter(Object obj) { if (obj instanceof TypeConverter) { return (TypeConverter) obj; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index 4257411e80..0d556139bf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -487,9 +487,9 @@ protected void addConverterMapping(Map mapping, Class clazz) { } if (LOG.isDebugEnabled()) { if (StringUtils.isEmpty(tc.key())) { - LOG.debug("WARNING! key of @TypeConversion [{}] applied to [{}] is empty!", tc.converter(), clazz.getName()); + LOG.debug("WARNING! key of @TypeConversion [{}/{}] applied to [{}] is empty!", tc.converter(), tc.converterClass(), clazz.getName()); } else { - LOG.debug("TypeConversion [{}] with key: [{}]", tc.converter(), tc.key()); + LOG.debug("TypeConversion [{}/{}] with key: [{}]", tc.converter(), tc.converterClass(), tc.key()); } } annotationProcessor.process(mapping, tc, tc.key()); From ec2412492503cdd0e90abf7f2cf2c3e50c8fa70c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 20 Apr 2017 08:29:53 +0200 Subject: [PATCH 0054/2288] WW-4210 Updates tests to use the class definition instead of string --- .../xwork2/conversion/ConversionTestAction.java | 9 +++++---- .../opensymphony/xwork2/test/AnnotationDataAware.java | 6 ++---- .../opensymphony/xwork2/test/AnnotationTestBean2.java | 5 ++--- .../com/opensymphony/xwork2/test/AnnotationUser.java | 4 ++-- .../xwork2/test/annotations/PersonAction.java | 4 ++-- .../java/com/opensymphony/xwork2/util/AnnotatedCat.java | 4 +--- 6 files changed, 14 insertions(+), 18 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/ConversionTestAction.java b/core/src/test/java/com/opensymphony/xwork2/conversion/ConversionTestAction.java index de743fe395..d19aaf18f1 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/ConversionTestAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/ConversionTestAction.java @@ -21,6 +21,7 @@ import com.opensymphony.xwork2.conversion.annotations.ConversionType; import com.opensymphony.xwork2.conversion.annotations.TypeConversion; +import java.math.BigInteger; import java.util.HashMap; import java.util.List; @@ -49,7 +50,7 @@ public String getConvertInt() { return convertInt; } - @TypeConversion(type = ConversionType.APPLICATION, converter = "com.opensymphony.xwork2.util.XWorkBasicConverter") + @TypeConversion(type = ConversionType.APPLICATION) public void setConvertInt( String convertInt ) { this.convertInt = convertInt; } @@ -67,7 +68,7 @@ public List getUsers() { return users; } - @TypeConversion(rule = ConversionRule.COLLECTION, converter = "java.lang.String") + @TypeConversion(rule = ConversionRule.COLLECTION, converterClass = String.class) public void setUsers( List users ) { this.users = users; } @@ -76,7 +77,7 @@ public HashMap getKeyValues() { return keyValues; } - @TypeConversion(rule = ConversionRule.MAP, converter = "java.math.BigInteger") + @TypeConversion(rule = ConversionRule.MAP, converterClass = BigInteger.class) public void setKeyValues( HashMap keyValues ) { this.keyValues = keyValues; } @@ -90,7 +91,7 @@ public void setKeyValues( HashMap keyValues ) { * Application level exceptions should be handled by returning * an error value, such as Action.ERROR. */ - @TypeConversion(type = ConversionType.APPLICATION, key = "java.util.Date", converter = "com.opensymphony.xwork2.util.XWorkBasicConverter") + @TypeConversion(type = ConversionType.APPLICATION, key = "java.util.Date") public String execute() throws Exception { return SUCCESS; } diff --git a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationDataAware.java b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationDataAware.java index fd63584f7f..a30497bfe1 100644 --- a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationDataAware.java +++ b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationDataAware.java @@ -17,6 +17,7 @@ import com.opensymphony.xwork2.conversion.annotations.Conversion; import com.opensymphony.xwork2.conversion.annotations.TypeConversion; +import com.opensymphony.xwork2.conversion.impl.FooBarConverter; import com.opensymphony.xwork2.util.Bar; import com.opensymphony.xwork2.validator.annotations.RequiredFieldValidator; import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator; @@ -29,15 +30,12 @@ * @author Mark Woon * @author Rainer Hermanns */ -@Validation() @Conversion() public interface AnnotationDataAware { void setBarObj(Bar b); - @TypeConversion( - converter = "com.opensymphony.xwork2.conversion.impl.FooBarConverter" - ) + @TypeConversion(converterClass = FooBarConverter.class) Bar getBarObj(); @RequiredFieldValidator(message = "You must enter a value for data.") diff --git a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationTestBean2.java b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationTestBean2.java index 3a1396b9ec..ccd5ec1b93 100644 --- a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationTestBean2.java +++ b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationTestBean2.java @@ -18,6 +18,7 @@ import com.opensymphony.xwork2.AnnotatedTestBean; import com.opensymphony.xwork2.conversion.annotations.Conversion; import com.opensymphony.xwork2.conversion.annotations.TypeConversion; +import com.opensymphony.xwork2.conversion.impl.FooBarConverter; import com.opensymphony.xwork2.util.Bar; import com.opensymphony.xwork2.util.Cat; @@ -56,9 +57,7 @@ public Cat getCat() { return cat; } - @TypeConversion( - key = "cat", converter = "com.opensymphony.xwork2.conversion.impl.FooBarConverter" - ) + @TypeConversion(key = "cat", converterClass = FooBarConverter.class) public void setCat(Cat cat) { this.cat = cat; } diff --git a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationUser.java b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationUser.java index be2f86361b..fbf353541a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/test/AnnotationUser.java +++ b/core/src/test/java/com/opensymphony/xwork2/test/AnnotationUser.java @@ -82,12 +82,12 @@ public void setList(List l) { } @KeyProperty( value = "name") - @TypeConversion( converter = "java.lang.String", rule = ConversionRule.COLLECTION) + @TypeConversion(converterClass = String.class, rule = ConversionRule.COLLECTION) public List getList() { return list; } - @TypeConversion( converter = "java.lang.String", rule = ConversionRule.MAP) + @TypeConversion(converterClass = String.class, rule = ConversionRule.MAP) public void setMap(Map m) { map = m; } diff --git a/core/src/test/java/com/opensymphony/xwork2/test/annotations/PersonAction.java b/core/src/test/java/com/opensymphony/xwork2/test/annotations/PersonAction.java index 72e20ef8e6..c4a6c403ae 100644 --- a/core/src/test/java/com/opensymphony/xwork2/test/annotations/PersonAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/test/annotations/PersonAction.java @@ -11,10 +11,10 @@ conversions={ @TypeConversion(type=ConversionType.APPLICATION, key="com.opensymphony.xwork2.test.annotations.Address", - converter="com.opensymphony.xwork2.test.annotations.AddressTypeConverter"), + converterClass=AddressTypeConverter.class), @TypeConversion(type=ConversionType.APPLICATION, key="com.opensymphony.xwork2.test.annotations.Person", - converter="com.opensymphony.xwork2.test.annotations.PersonTypeConverter")}) + converterClass=PersonTypeConverter.class)}) public class PersonAction { List users; private List
address; diff --git a/core/src/test/java/com/opensymphony/xwork2/util/AnnotatedCat.java b/core/src/test/java/com/opensymphony/xwork2/util/AnnotatedCat.java index 5733159671..fdb0a50dea 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/AnnotatedCat.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/AnnotatedCat.java @@ -50,9 +50,7 @@ public void setKittens(List kittens) { this.kittens = kittens; } - @TypeConversion( - key = "kittens", converter = "com.opensymphony.xwork2.util.Cat" - ) + @TypeConversion(key = "kittens", converterClass = Cat.class) public List getKittens() { return kittens; } From a58452571c90314f8ed56301133a2a7f7ad1c67b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 20 Apr 2017 08:34:55 +0200 Subject: [PATCH 0055/2288] WW-4210 Updates JavaDocs --- .../conversion/annotations/TypeConversion.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java index db57573e2e..609936c6a0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java @@ -79,11 +79,17 @@ * * * converter - * either this or value + * DEPRECATED: either this or value *   * The class name of the TypeConverter to be used as converter. * * + * converterClass + * either this or value + *   + * The class of the TypeConverter to be used as converter. XWorkBasicConverter by default. + * + * * value * either converter or this *   @@ -108,27 +114,27 @@ * * private HashMap keyValues = null; * - * @TypeConversion(type = ConversionType.APPLICATION, converter = "com.opensymphony.xwork2.util.XWorkBasicConverter") + * @TypeConversion(type = ConversionType.APPLICATION) * public void setConvertInt( String convertInt ) { * this.convertInt = convertInt; * } * - * @TypeConversion(converter = "com.opensymphony.xwork2.util.XWorkBasicConverter") + * @TypeConversion(converterClass = XWorkBasicConverter.class) * public void setConvertDouble( String convertDouble ) { * this.convertDouble = convertDouble; * } * - * @TypeConversion(rule = ConversionRule.COLLECTION, converter = "java.util.String") + * @TypeConversion(rule = ConversionRule.COLLECTION, converterClass = String.class) * public void setUsers( List users ) { * this.users = users; * } * - * @TypeConversion(rule = ConversionRule.MAP, converter = "java.math.BigInteger") + * @TypeConversion(rule = ConversionRule.MAP, converterClass = BigInteger.class) * public void setKeyValues( HashMap keyValues ) { * this.keyValues = keyValues; * } * - * @TypeConversion(type = ConversionType.APPLICATION, property = "java.util.Date", converter = "com.opensymphony.xwork2.util.XWorkBasicConverter") + * @TypeConversion(type = ConversionType.APPLICATION, property = "java.util.Date", converterClass = XWorkBasicConverter.class) * public String execute() throws Exception { * return SUCCESS; * } From 9512410412650427f33e107449f02470ac86432c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 20 Apr 2017 14:35:11 +0200 Subject: [PATCH 0056/2288] WW-4787 Moves test to src/test/java --- .../xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename core/src/{main => test}/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java (100%) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java similarity index 100% rename from core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java rename to core/src/test/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessorTest.java From 11cccb68a90edb73ce183c4bb735cb458bfe9ec5 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Thu, 20 Apr 2017 22:06:20 +0200 Subject: [PATCH 0057/2288] upgraded version of log4j2 to 2.8.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 70d4150efc..720b9c2777 100644 --- a/pom.xml +++ b/pom.xml @@ -88,7 +88,7 @@ 5.1 3.0.7 1.0.6 - 2.8 + 2.8.2 ${project.build.directory}/site From defaf43a4c27ca62b9ec8db5749ef4a6f80fc719 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Fri, 21 Apr 2017 23:49:43 +0200 Subject: [PATCH 0058/2288] WW-4780 fixed logging in the struts2-cdi-plugin tests --- plugins/cdi/pom.xml | 5 +++-- plugins/cdi/src/test/resources/log4j.properties | 11 ----------- plugins/cdi/src/test/resources/log4j2.xml | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 13 deletions(-) delete mode 100644 plugins/cdi/src/test/resources/log4j.properties create mode 100644 plugins/cdi/src/test/resources/log4j2.xml diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index fee24ca4ce..90239f3ebf 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -59,8 +59,9 @@ - log4j - log4j + org.apache.logging.log4j + log4j-core + ${log4j2.version} test diff --git a/plugins/cdi/src/test/resources/log4j.properties b/plugins/cdi/src/test/resources/log4j.properties deleted file mode 100644 index 77d9939064..0000000000 --- a/plugins/cdi/src/test/resources/log4j.properties +++ /dev/null @@ -1,11 +0,0 @@ -# Set root logger level to WARN and append to stdout -log4j.rootLogger=INFO, stdout - -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout - -# Pattern to output the caller's file name and line number. -log4j.appender.stdout.layout.ConversionPattern=%d %5p (%c:%L) - %m%n - -# Print only messages of level ERROR or above in the package noModule. -log4j.logger.noModule=FATAL diff --git a/plugins/cdi/src/test/resources/log4j2.xml b/plugins/cdi/src/test/resources/log4j2.xml new file mode 100644 index 0000000000..3edabe1bf5 --- /dev/null +++ b/plugins/cdi/src/test/resources/log4j2.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + From b465791dc2097b24991da4b61245278a7b48c88c Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Sat, 22 Apr 2017 00:05:41 +0200 Subject: [PATCH 0059/2288] WW-4780 fixed logging in the struts2-portlet-plugin tests --- plugins/portlet/pom.xml | 5 +++-- plugins/portlet/src/test/resources/log4j2.xml | 13 +++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 plugins/portlet/src/test/resources/log4j2.xml diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 33957d793e..7a04cda892 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -94,8 +94,9 @@ - log4j - log4j + org.apache.logging.log4j + log4j-core + ${log4j2.version} test diff --git a/plugins/portlet/src/test/resources/log4j2.xml b/plugins/portlet/src/test/resources/log4j2.xml new file mode 100644 index 0000000000..395e01b2e8 --- /dev/null +++ b/plugins/portlet/src/test/resources/log4j2.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + From d8284846db6d761ec456d6b495451efa684326ce Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Sat, 22 Apr 2017 12:15:00 +0300 Subject: [PATCH 0060/2288] WW-4788 Parameters which are added via ServletDispatcherResult aren't availabe in #parameters --- .../java/org/apache/struts2/result/ServletDispatcherResult.java | 2 ++ .../org/apache/struts2/result/ServletDispatcherResultTest.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java index c3f7125751..3322c640a0 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java @@ -148,6 +148,8 @@ public void doExecute(String finalLocation, ActionInvocation invocation) throws if (queryParams != null && !queryParams.isEmpty()) { parameters = HttpParameters.create(queryParams).withParent(parameters).build(); invocation.getInvocationContext().setParameters(parameters); + // put to extraContext, see Dispatcher#createContextMap + invocation.getInvocationContext().getContextMap().put("parameters", parameters); } } diff --git a/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java b/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java index f2826b6cdd..baabf29504 100644 --- a/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java +++ b/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java @@ -33,6 +33,7 @@ import org.apache.struts2.ServletActionContext; import org.apache.struts2.StrutsInternalTestCase; import org.apache.struts2.StrutsStatics; +import org.apache.struts2.dispatcher.HttpParameters; import com.mockobjects.dynamic.C; import com.mockobjects.dynamic.Mock; @@ -148,6 +149,7 @@ public void testWithParameter() { assertTrue(mockActionInvocation.getInvocationContext().getParameters().contains("bar")); assertEquals("1", mockActionInvocation.getInvocationContext().getParameters().get("bar").getValue()); + assertEquals("1", ((HttpParameters) mockActionInvocation.getInvocationContext().getContextMap().get("parameters")).get("bar").getValue()); dispatcherMock.verify(); requestMock.verify(); dispatcherMock.verify(); From 9eec07b310b4ac9e99342cfd632293acd2a45d8b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 22 Apr 2017 17:40:40 +0200 Subject: [PATCH 0061/2288] WW-3952 Adds client side validation support --- .../template/xhtml/form-close-validate.ftl | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/core/src/main/resources/template/xhtml/form-close-validate.ftl b/core/src/main/resources/template/xhtml/form-close-validate.ftl index e8dd9915aa..3ffc3bf0bc 100644 --- a/core/src/main/resources/template/xhtml/form-close-validate.ftl +++ b/core/src/main/resources/template/xhtml/form-close-validate.ftl @@ -41,9 +41,9 @@ END SNIPPET: supported-validators --> var getFieldValue = function(field) { var type = field.type ? field.type : field[0].type; - if (type == 'select-one' || type == 'select-multiple') { - return (field.selectedIndex == -1 ? "" : field.options[field.selectedIndex].value); - } else if (type == 'checkbox' || type == 'radio') { + if (type === 'select-one' || type === 'select-multiple') { + return (field.selectedIndex === -1 ? "" : field.options[field.selectedIndex].value); + } else if (type === 'checkbox' || type === 'radio') { if (!field.length) { field = [field]; } @@ -79,25 +79,25 @@ END SNIPPET: supported-validators var fieldValue = getFieldValue(field); <#if validator.validatorType = "required"> - if (fieldValue == "") { + if (fieldValue === "") { addError(field, error); errors = true; <#if validator.shortCircuit>continueValidation = false; } <#elseif validator.validatorType = "requiredstring"> - if (continueValidation && fieldValue != null && (fieldValue == "" || fieldValue.replace(/^\s+|\s+$/g,"").length == 0)) { + if (continueValidation && fieldValue !== null && (fieldValue === "" || fieldValue.replace(/^\s+|\s+$/g,"").length === 0)) { addError(field, error); errors = true; <#if validator.shortCircuit>continueValidation = false; } <#elseif validator.validatorType = "stringlength"> - if (continueValidation && fieldValue != null) { + if (continueValidation && fieldValue !== null) { var value = fieldValue; <#if validator.trim> //trim field value - while (value.substring(0,1) == ' ') + while (value.substring(0,1) === ' ') value = value.substring(1, value.length); - while (value.substring(value.length-1, value.length) == ' ') + while (value.substring(value.length-1, value.length) === ' ') value = value.substring(0, value.length-1); if ((${validator.minLength?c} > -1 && value.length < ${validator.minLength?c}) || @@ -108,25 +108,25 @@ END SNIPPET: supported-validators } } <#elseif validator.validatorType = "regex"> - if (continueValidation && fieldValue != null && !fieldValue.match("${validator.regex?js_string}")) { + if (continueValidation && fieldValue !== null && !fieldValue.match("${validator.regex?js_string}")) { addError(field, error); errors = true; <#if validator.shortCircuit>continueValidation = false; } - <#elseif validator.validatorType = "email"> - if (continueValidation && fieldValue != null && fieldValue.length > 0 && fieldValue.match(/${validator.regex}/i)==null) { + <#elseif validator.validatorType = "email" || validator.validatorType = "creditcard"> + if (continueValidation && fieldValue !== null && fieldValue.length > 0 && fieldValue.match(/${validator.regex}/i) === null) { addError(field, error); errors = true; <#if validator.shortCircuit>continueValidation = false; } <#elseif validator.validatorType = "url"> - if (continueValidation && fieldValue != null && fieldValue.length > 0 && fieldValue.match(/${validator.urlRegex}/i)==null) { + if (continueValidation && fieldValue !== null && fieldValue.length > 0 && fieldValue.match(/${validator.urlRegex}/i) === null) { addError(field, error); errors = true; <#if validator.shortCircuit>continueValidation = false; } <#elseif validator.validatorType = "int" || validator.validatorType = "short"> - if (continueValidation && fieldValue != null) { + if (continueValidation && fieldValue !== null) { if (<#if validator.min??>parseInt(fieldValue) < ${validator.min?c}<#else>false || <#if validator.max??>parseInt(fieldValue) > @@ -137,7 +137,7 @@ END SNIPPET: supported-validators } } <#elseif validator.validatorType = "double"> - if (continueValidation && fieldValue != null) { + if (continueValidation && fieldValue !== null) { var value = parseFloat(fieldValue); if (<#if validator.minInclusive??>value < ${validator.minInclusive?c}<#else>false || <#if validator.maxInclusive??>value > ${validator.maxInclusive?c}<#else>false || From 6ef9f7a3aadd1c9dea5ca7a7a5ae350f37e6e96b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 23 Apr 2017 10:31:13 +0200 Subject: [PATCH 0062/2288] WW-3952 Fixes test --- .../org/apache/struts2/views/jsp/ui/Formtag-2.txt | 8 ++++---- .../org/apache/struts2/views/jsp/ui/Formtag-22.txt | 8 ++++---- .../org/apache/struts2/views/jsp/ui/Formtag-24.txt | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-2.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-2.txt index 806a94e874..62d566c434 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-2.txt +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-2.txt @@ -36,9 +36,9 @@ function validateForm_doubleValidationAction() { var getFieldValue = function(field) { var type = field.type ? field.type : field[0].type; - if(type == 'select-one' || type == 'select-multiple') { - return (field.selectedIndex == -1 ? "" : field.options[field.selectedIndex].value); - } else if(type=='checkbox'||type=='radio') { + if(type === 'select-one' || type === 'select-multiple') { + return (field.selectedIndex === -1 ? "" : field.options[field.selectedIndex].value); + } else if(type==='checkbox'||type==='radio') { if(!field.length){ field=[field]; } @@ -62,7 +62,7 @@ field = form.elements['myUpDownSelectTag']; var error = "bar must be between 6000.1 and 10000.1."; var fieldValue=getFieldValue(field); - if(continueValidation && fieldValue != null) { + if(continueValidation && fieldValue !== null) { var value = parseFloat(fieldValue); if(value < 6000.1 || value>10000.1 || false || false){ addError(field, error); diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-22.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-22.txt index 710ad541a9..136dc15c63 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-22.txt +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-22.txt @@ -35,9 +35,9 @@ function validateForm_doubleValidationAction() { var getFieldValue = function(field) { var type = field.type ? field.type : field[0].type; - if(type == 'select-one' || type == 'select-multiple') { - return (field.selectedIndex == -1 ? "" : field.options[field.selectedIndex].value); - } else if(type == 'checkbox' || type == 'radio') { + if(type === 'select-one' || type === 'select-multiple') { + return (field.selectedIndex === -1 ? "" : field.options[field.selectedIndex].value); + } else if(type === 'checkbox' || type === 'radio') { if(!field.length) { field = [field]; } @@ -61,7 +61,7 @@ field = form.elements['myUpDownSelectTag']; var error = "bar must be between 6000.1 and 10000.1."; var fieldValue=getFieldValue(field); - if(continueValidation && fieldValue != null) { + if(continueValidation && fieldValue !== null) { var value = parseFloat(fieldValue); if(value < 6000.1 || value>10000.1 || false || false){ addError(field, error); diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-24.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-24.txt index f512ff4d57..a27432a4bf 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-24.txt +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Formtag-24.txt @@ -35,9 +35,9 @@ function validateForm_doubleValidationAction() { var getFieldValue = function(field) { var type = field.type ? field.type : field[0].type; - if(type == 'select-one' || type == 'select-multiple') { - return (field.selectedIndex == -1 ? "" : field.options[field.selectedIndex].value); - } else if(type == 'checkbox' || type == 'radio') { + if(type === 'select-one' || type === 'select-multiple') { + return (field.selectedIndex === -1 ? "" : field.options[field.selectedIndex].value); + } else if(type === 'checkbox' || type === 'radio') { if(!field.length) { field=[field]; } @@ -61,7 +61,7 @@ field = form.elements['myUpDownSelectTag']; var error = "bar must be between 6000.1 and 10000.1."; var fieldValue = getFieldValue(field); - if(continueValidation && fieldValue != null) { + if(continueValidation && fieldValue !== null) { var value = parseFloat(fieldValue); if(value < 6000.1 || value > 10000.1 || false || false) { addError(field, error); From 8f75e1a19dfde5b55bb3265737d81c8bfa8ccb39 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 08:22:19 +0200 Subject: [PATCH 0063/2288] WW-4149 Introduces an empty stack --- .../struts2/interceptor/NoOpInterceptor.java | 38 +++++++++++++++++++ core/src/main/resources/struts-default.xml | 6 +++ 2 files changed, 44 insertions(+) create mode 100644 core/src/main/java/org/apache/struts2/interceptor/NoOpInterceptor.java diff --git a/core/src/main/java/org/apache/struts2/interceptor/NoOpInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/NoOpInterceptor.java new file mode 100644 index 0000000000..0cc101d3d8 --- /dev/null +++ b/core/src/main/java/org/apache/struts2/interceptor/NoOpInterceptor.java @@ -0,0 +1,38 @@ +/* + * 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 org.apache.struts2.interceptor; + +import com.opensymphony.xwork2.ActionInvocation; +import com.opensymphony.xwork2.interceptor.AbstractInterceptor; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +/** + * Interceptor that does nothing, used in the "empty" stack + */ +public class NoOpInterceptor extends AbstractInterceptor { + + private static final Logger LOG = LogManager.getLogger(NoOpInterceptor.class); + + @Override + public String intercept(ActionInvocation invocation) throws Exception { + LOG.trace("Passing invocation forward"); + return invocation.invoke(); + } +} diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index d666541365..362e31754f 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -238,6 +238,12 @@ + + + + + + From d739be34bccebbde2972c9e2c6225b94bad68d27 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 08:42:42 +0200 Subject: [PATCH 0064/2288] WW-4749 Implements buffered write --- .../views/freemarker/FreemarkerResult.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index 52ad6371f2..0c7de59c7d 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -112,6 +112,8 @@ public class FreemarkerResult extends StrutsResultSupport { protected FreemarkerManager freemarkerManager; private Writer writer; private boolean writeIfCompleted = false; + private String useBufferedWriter; + /* * Struts results are constructed for each result execution * @@ -194,11 +196,18 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO // Give subclasses a chance to hook into preprocessing if (preTemplateProcess(template, model)) { try { + final boolean willUseBufferedWriter; + if (useBufferedWriter != null) { + willUseBufferedWriter = Boolean.parseBoolean(useBufferedWriter); + } else { + willUseBufferedWriter = isWriteIfCompleted() || template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; + } + // Process the template Writer writer = getWriter(); - if (isWriteIfCompleted() || configuration.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER) { + if (willUseBufferedWriter){ CharArrayWriter parentCharArrayWriter = (CharArrayWriter) req.getAttribute(PARENT_TEMPLATE_WRITER); - boolean isTopTemplate = false; + boolean isTopTemplate; if (isTopTemplate = (parentCharArrayWriter == null)) { //this is the top template parentCharArrayWriter = new CharArrayWriter(); @@ -213,18 +222,13 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO parentCharArrayWriter.flush(); parentCharArrayWriter.writeTo(writer); } - } catch (TemplateException e) { + } catch (TemplateException | IOException e) { if (LOG.isErrorEnabled()) { LOG.error("Error processing Freemarker result!", e); } throw e; - } catch (IOException e) { - if (LOG.isErrorEnabled()){ - LOG.error("Error processing Freemarker result!", e); - } - throw e; } finally { - if (isTopTemplate && parentCharArrayWriter != null) { + if (isTopTemplate) { req.removeAttribute(PARENT_TEMPLATE_WRITER); parentCharArrayWriter.close(); } From 787150d041e32e8e579df5d44c1258881fad6c94 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 08:48:01 +0200 Subject: [PATCH 0065/2288] Moves documentation to wiki --- .../views/freemarker/FreemarkerResult.java | 51 ------------------- 1 file changed, 51 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index 0c7de59c7d..226fb70f0f 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -48,57 +46,8 @@ import java.io.Writer; import java.util.Locale; - /** - * - * * Renders a view using the Freemarker template engine. - *

- * The FreemarkarManager class configures the template loaders so that the - * template location can be either - *

- * - *
    - * - *
  • relative to the web root folder. eg /WEB-INF/views/home.ftl - *
  • - * - *
  • a classpath resuorce. eg /com/company/web/views/home.ftl
  • - * - *
- * - * - * - * This result type takes the following parameters: - * - * - * - *
    - * - *
  • location (default) - the location of the template to process.
  • - * - *
  • parse - true by default. If set to false, the location param will - * not be parsed for Ognl expressions.
  • - * - *
  • contentType - defaults to "text/html" unless specified.
  • - * - *
  • writeIfCompleted - false by default, write to stream only if there isn't any error - * processing the template. Setting template_exception_handler=rethrow in freemarker.properties - * will have the same effect.
  • - * - *
- * - * - * - * Example: - * - *
- * 
- *
- * <result name="success" type="freemarker">foo.ftl</result>
- *
- * 
- * 
*/ public class FreemarkerResult extends StrutsResultSupport { From f5125bcd1bb97a75ab54e266399c2bf96987c1dc Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 08:51:45 +0200 Subject: [PATCH 0066/2288] WW-4749 Defines setter to allow specify useBufferedWriter --- .../struts2/views/freemarker/FreemarkerResult.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index 226fb70f0f..7ea7fe368f 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -147,7 +147,7 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO try { final boolean willUseBufferedWriter; if (useBufferedWriter != null) { - willUseBufferedWriter = Boolean.parseBoolean(useBufferedWriter); + willUseBufferedWriter = isUseBufferedWriter(); } else { willUseBufferedWriter = isWriteIfCompleted() || template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; } @@ -370,4 +370,15 @@ public boolean isWriteIfCompleted() { public void setWriteIfCompleted(boolean writeIfCompleted) { this.writeIfCompleted = writeIfCompleted; } + + public boolean isUseBufferedWriter() { + return useBufferedWriter != null && Boolean.parseBoolean(useBufferedWriter); + } + + /** + * @param useBufferedWriter template is processed and flushed according to freemarker library policies + */ + public void setUseBufferedWriter(String useBufferedWriter) { + this.useBufferedWriter = useBufferedWriter; + } } From f06caf7ca7fc38c5c834e129ac18a483ef37c58d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 10:38:32 +0200 Subject: [PATCH 0067/2288] WW-4791 Stops using DefaultLocalizedTextProvider#localeFromString --- .../xwork2/DefaultLocaleProvider.java | 11 +++++-- .../util/DefaultLocalizedTextProvider.java | 3 ++ .../apache/struts2/dispatcher/Dispatcher.java | 32 ++++++++++++------- .../struts2/interceptor/I18nInterceptor.java | 6 ++-- .../PropertiesConfigurationProviderTest.java | 10 +++--- .../struts2/dispatcher/DispatcherTest.java | 1 - .../interceptor/I18nInterceptorTest.java | 13 +------- .../portlet/dispatcher/Jsr168Dispatcher.java | 29 +++++++++++------ 8 files changed, 61 insertions(+), 44 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index 7fbc2bc382..bdb6d7cf29 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -15,9 +15,10 @@ */ package com.opensymphony.xwork2; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; +import org.apache.commons.lang3.LocaleUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.ParameterizedMessage; import java.util.Arrays; import java.util.Locale; @@ -42,7 +43,13 @@ public Locale getLocale() { @Override public boolean isValidLocaleString(String localeStr) { - return isValidLocale(DefaultLocalizedTextProvider.localeFromString(localeStr, getLocale())); + Locale locale = null; + try { + locale = LocaleUtils.toLocale(localeStr); + } catch (IllegalArgumentException e) { + LOG.warn(new ParameterizedMessage("Cannot convert [{}] to proper locale", localeStr, e)); + } + return isValidLocale(locale); } @Override 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 b7d531445f..61a83178dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -152,7 +152,10 @@ public void addDefaultResourceBundle(String resourceBundleName) { * @param localeStr The locale String to parse. * @param defaultLocale The locale to use if localeStr is null. * @return requested Locale + * + * @deprecated please use {@link org.apache.commons.lang3.LocaleUtils#toLocale(String)} */ + @Deprecated public static Locale localeFromString(String localeStr, Locale defaultLocale) { if ((localeStr == null) || (localeStr.trim().length() == 0) || ("_".equals(localeStr))) { if (defaultLocale != null) { 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 364524193b..667f37dd31 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -39,10 +39,12 @@ import com.opensymphony.xwork2.util.location.Location; import com.opensymphony.xwork2.util.location.LocationUtils; import com.opensymphony.xwork2.util.profiling.UtilTimerStack; +import org.apache.commons.lang3.LocaleUtils; import org.apache.commons.lang3.BooleanUtils; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.ParameterizedMessage; import org.apache.struts2.ServletActionContext; import org.apache.struts2.StrutsConstants; import org.apache.struts2.StrutsException; @@ -672,14 +674,7 @@ public HashMap createContextMap(Map requestMap, extraContext.put(ActionContext.SESSION, sessionMap); extraContext.put(ActionContext.APPLICATION, applicationMap); - Locale locale; - if (defaultLocale != null) { - locale = DefaultLocalizedTextProvider.localeFromString(defaultLocale, request.getLocale()); - } else { - locale = request.getLocale(); - } - - extraContext.put(ActionContext.LOCALE, locale); + extraContext.put(ActionContext.LOCALE, getLocale(request)); extraContext.put(StrutsStatics.HTTP_REQUEST, request); extraContext.put(StrutsStatics.HTTP_RESPONSE, response); @@ -697,6 +692,22 @@ public HashMap createContextMap(Map requestMap, return extraContext; } + protected Locale getLocale(HttpServletRequest request) { + Locale locale; + if (defaultLocale != null) { + try { + locale = LocaleUtils.toLocale(defaultLocale); + } catch (IllegalArgumentException e) { + LOG.warn(new ParameterizedMessage("Cannot convert 'struts.locale' = [{}] to proper locale, defaulting to request locale [{}]", + defaultLocale, request.getLocale()), e); + locale = request.getLocale(); + } + } else { + locale = request.getLocale(); + } + return locale; + } + /** * Return the path to save uploaded files to (this is configurable). * @@ -754,10 +765,7 @@ public void prepare(HttpServletRequest request, HttpServletResponse response) { encoding = "UTF-8"; } - Locale locale = null; - if (defaultLocale != null) { - locale = DefaultLocalizedTextProvider.localeFromString(defaultLocale, request.getLocale()); - } + Locale locale = getLocale(request); if (encoding != null) { applyEncoding(request, encoding); diff --git a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java index 722beb0a74..61a158c11a 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java @@ -25,7 +25,7 @@ import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; +import org.apache.commons.lang.LocaleUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.message.ParameterizedMessage; @@ -166,7 +166,9 @@ protected Locale getLocaleFromParam(Object requestedLocale) { } else { String localeStr = requestedLocale.toString(); if (localeProvider.isValidLocaleString(localeStr)) { - locale = DefaultLocalizedTextProvider.localeFromString(requestedLocale.toString(), null); + locale = LocaleUtils.toLocale(localeStr); + } else { + locale = localeProvider.getLocale(); } } if (locale != null) { diff --git a/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java b/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java index 05606ce883..b4fd4080d4 100644 --- a/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java +++ b/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java @@ -26,6 +26,7 @@ import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.location.LocatableProperties; import junit.framework.TestCase; +import org.apache.commons.lang3.LocaleUtils; import org.apache.struts2.StrutsConstants; import java.util.Locale; @@ -41,7 +42,7 @@ public void testRegister_DifferentLocale() { ContainerBuilder builder = new ContainerBuilder(); builder.constant("foo", "bar"); - builder.constant("struts.locale", "DE_de"); + builder.constant("struts.locale", "de_DE"); PropertiesConfigurationProvider prov = new PropertiesConfigurationProvider(); prov.register(builder, new LocatableProperties()); @@ -49,7 +50,7 @@ public void testRegister_DifferentLocale() { Container container = builder.create(true); String localeStr = container.getInstance(String.class, StrutsConstants.STRUTS_LOCALE); - Locale locale = DefaultLocalizedTextProvider.localeFromString(localeStr, Locale.FRANCE); + Locale locale = LocaleUtils.toLocale(localeStr); assertNotNull(locale); assertEquals("DE", locale.getCountry()); @@ -68,11 +69,8 @@ public void testRegister_NoLocale() { Container container = builder.create(true); String localeStr = container.getInstance(String.class, StrutsConstants.STRUTS_LOCALE); - Locale locale = DefaultLocalizedTextProvider.localeFromString(localeStr, Locale.getDefault()); - assertNotNull(locale); - Locale vmLocale = Locale.getDefault(); - assertEquals(locale, vmLocale); + assertNull(localeStr); } public void testDefaultSettings() throws Exception { diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index 8001bd26ef..0f430de55e 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -102,7 +102,6 @@ public void testSetEncodingIfDiffer() throws Exception { Mock mock = new Mock(HttpServletRequest.class); mock.expectAndReturn("getCharacterEncoding", "utf-8"); mock.expectAndReturn("getHeader", "X-Requested-With", ""); - mock.expectAndReturn("getLocale", Locale.getDefault()); mock.expectAndReturn("getCharacterEncoding", "utf-8"); HttpServletRequest req = (HttpServletRequest) mock.proxy(); HttpServletResponse res = new MockHttpServletResponse(); diff --git a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java index 4bbaa466db..a38b8c41e0 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java @@ -90,19 +90,8 @@ public void testDenmarkLocaleRequestOnly() throws Exception { assertEquals(denmark, mai.getInvocationContext().getLocale()); // should create a locale object } - public void testCountryOnlyLocale() throws Exception { - prepare(I18nInterceptor.DEFAULT_PARAMETER, "NL"); - interceptor.intercept(mai); - - assertFalse(mai.getInvocationContext().getParameters().get(I18nInterceptor.DEFAULT_PARAMETER).isDefined()); // should have been removed - - Locale denmark = new Locale("NL"); - assertNotNull(session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should be stored here - assertEquals(denmark, session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should create a locale object - } - public void testLanguageOnlyLocale() throws Exception { - prepare(I18nInterceptor.DEFAULT_PARAMETER, "da_"); + prepare(I18nInterceptor.DEFAULT_PARAMETER, "da"); interceptor.intercept(mai); assertFalse(mai.getInvocationContext().getParameters().get(I18nInterceptor.DEFAULT_PARAMETER).isDefined()); // should have been removed diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java index 9a15b8784d..aab7d9f870 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java @@ -26,10 +26,11 @@ import com.opensymphony.xwork2.ActionProxyFactory; import com.opensymphony.xwork2.config.ConfigurationException; import com.opensymphony.xwork2.inject.Container; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; +import org.apache.commons.lang3.LocaleUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import org.apache.commons.lang3.StringUtils; +import org.apache.logging.log4j.message.ParameterizedMessage; import org.apache.struts2.StrutsConstants; import org.apache.struts2.StrutsException; import org.apache.struts2.StrutsStatics; @@ -393,14 +394,7 @@ public HashMap createContextMap(Map requestMap, extraContext.put(ActionContext.SESSION, sessionMap); extraContext.put(ActionContext.APPLICATION, applicationMap); - String defaultLocale = container.getInstance(String.class, StrutsConstants.STRUTS_LOCALE); - Locale locale; - if (defaultLocale != null) { - locale = DefaultLocalizedTextProvider.localeFromString(defaultLocale, request.getLocale()); - } else { - locale = request.getLocale(); - } - extraContext.put(ActionContext.LOCALE, locale); + extraContext.put(ActionContext.LOCALE, getLocale(request)); extraContext.put(StrutsStatics.STRUTS_PORTLET_CONTEXT, getPortletContext()); extraContext.put(REQUEST, request); @@ -424,6 +418,23 @@ public HashMap createContextMap(Map requestMap, return extraContext; } + protected Locale getLocale(PortletRequest request) { + String defaultLocale = container.getInstance(String.class, StrutsConstants.STRUTS_LOCALE); + Locale locale; + if (defaultLocale != null) { + try { + locale = LocaleUtils.toLocale(defaultLocale); + } catch (IllegalArgumentException e) { + LOG.warn(new ParameterizedMessage("Cannot convert 'struts.locale' = [{}] to proper locale, defaulting to request locale [{}]", + defaultLocale, request.getLocale()), e); + locale = request.getLocale(); + } + } else { + locale = request.getLocale(); + } + return locale; + } + /** * Loads the action and executes it. This method first creates the action * context from the given parameters then loads an ActionProxy From b46a6e79560a973e8070477e3c1ef7b23806e360 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 11:39:22 +0200 Subject: [PATCH 0068/2288] Drops static modifier --- .../xwork2/util/DefaultLocalizedTextProvider.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 61a83178dc..21f7477335 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -592,7 +592,7 @@ public String findText(Class aClass, String aTextName, Locale locale, String def * @param result the result so far * @return true if we could not find the text, false if the text was found (=success). */ - private static boolean unableToFindTextForKey(GetDefaultMessageReturnArg result) { + private boolean unableToFindTextForKey(GetDefaultMessageReturnArg result) { if (result == null || result.message == null) { return true; } @@ -887,7 +887,7 @@ private void reloadBundles(Map context) { } - private static void clearTomcatCache() { + private void clearTomcatCache() { ClassLoader loader = getCurrentThreadContextClassLoader(); // no need for compilation here. Class cl = loader.getClass(); @@ -913,7 +913,7 @@ private static void clearTomcatCache() { } - private static void clearMap(Class cl, Object obj, String name) + private void clearMap(Class cl, Object obj, String name) throws NoSuchFieldException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { Field field = cl.getDeclaredField(name); From 45d1a491311a82f6b2404d839e7e18269a26192f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 11:55:49 +0200 Subject: [PATCH 0069/2288] WW-4762 Drops unused code --- .../org/apache/struts2/util/StrutsTestCaseHelper.java | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java b/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java index 9c449f502b..f8994d12cb 100644 --- a/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java +++ b/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java @@ -23,7 +23,6 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.inject.Container; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; import org.apache.struts2.dispatcher.Dispatcher; @@ -40,16 +39,6 @@ */ public class StrutsTestCaseHelper { - /** - * Sets up the configuration settings, XWork configuration, and - * message resources - * - * @throws Exception in case of any error - */ - public static void setUp() throws Exception { - DefaultLocalizedTextProvider.clearDefaultResourceBundles(); - } - public static Dispatcher initDispatcher(ServletContext ctx, Map params) { if (params == null) { params = new HashMap<>(); From 3ffc9b8450845d7a90a623607e3b4bb05888e2f9 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 11:56:09 +0200 Subject: [PATCH 0070/2288] WW-4762 Drops unused imports --- .../java/com/opensymphony/xwork2/DefaultTextProvider.java | 8 +------- .../java/org/apache/struts2/dispatcher/Dispatcher.java | 1 - .../config/PropertiesConfigurationProviderTest.java | 1 - 3 files changed, 1 insertion(+), 9 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index 51ed449abb..116a0a14d2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -16,7 +16,6 @@ package com.opensymphony.xwork2; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.ValueStack; import java.io.Serializable; @@ -27,12 +26,7 @@ import java.util.ResourceBundle; /** - * DefaultTextProvider gets texts from only the default resource bundles associated with the - * LocalizedTextUtil. - * - * @author Jason Carreira jcarreira@gmail.com - * @author Rainer Hermanns - * @see DefaultLocalizedTextProvider#addDefaultResourceBundle(String) + * DefaultTextProvider gets texts from only the default resource bundles associated with the default bundles. */ public class DefaultTextProvider implements TextProvider, Serializable, Unchainable { 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 667f37dd31..55707a4be8 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -32,7 +32,6 @@ import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.Interceptor; import com.opensymphony.xwork2.util.ClassLoaderUtil; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; import com.opensymphony.xwork2.util.location.LocatableProperties; diff --git a/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java b/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java index b4fd4080d4..a82a8c6bd7 100644 --- a/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java +++ b/core/src/test/java/org/apache/struts2/config/PropertiesConfigurationProviderTest.java @@ -23,7 +23,6 @@ import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.ContainerBuilder; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; import com.opensymphony.xwork2.util.location.LocatableProperties; import junit.framework.TestCase; import org.apache.commons.lang3.LocaleUtils; From 8bf77a1d19d31dbc8574dcbf958c3da2a4724c84 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 11:56:48 +0200 Subject: [PATCH 0071/2288] WW-4762 Uses Struts prefix for the main implementation --- .../xwork2/config/impl/DefaultConfiguration.java | 2 +- .../config/providers/XWorkConfigurationProvider.java | 4 ++-- ...rovider.java => StrutsLocalizedTextProvider.java} | 6 +++--- core/src/main/resources/struts-default.xml | 2 +- ...est.java => StrutsLocalizedTextProviderTest.java} | 12 ++++++------ 5 files changed, 13 insertions(+), 13 deletions(-) rename core/src/main/java/com/opensymphony/xwork2/util/{DefaultLocalizedTextProvider.java => StrutsLocalizedTextProvider.java} (99%) rename core/src/test/java/com/opensymphony/xwork2/util/{DefaultLocalizedTextProviderTest.java => StrutsLocalizedTextProviderTest.java} (91%) 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 8882a2f4b9..a1b64904bb 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 @@ -261,7 +261,7 @@ protected Container createBootstrapContainer(List providers) builder.factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON); - builder.factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON); + builder.factory(LocalizedTextProvider.class, StrutsLocalizedTextProvider.class, Scope.SINGLETON); builder.factory(TextProviderFactory.class, StrutsTextProviderFactory.class, Scope.SINGLETON); builder.factory(LocaleProviderFactory.class, DefaultLocaleProviderFactory.class, Scope.SINGLETON); 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 1bc698696e..e5692a1cfa 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 @@ -72,7 +72,7 @@ import com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor; import com.opensymphony.xwork2.util.CompoundRoot; import com.opensymphony.xwork2.LocalizedTextProvider; -import com.opensymphony.xwork2.util.DefaultLocalizedTextProvider; +import com.opensymphony.xwork2.util.StrutsLocalizedTextProvider; import com.opensymphony.xwork2.util.OgnlTextParser; import com.opensymphony.xwork2.util.PatternMatcher; import com.opensymphony.xwork2.util.TextParser; @@ -182,7 +182,7 @@ public void register(ContainerBuilder builder, LocatableProperties props) .factory(ActionValidatorManager.class, "no-annotations", DefaultActionValidatorManager.class, Scope.SINGLETON) .factory(TextProvider.class, "system", DefaultTextProvider.class, Scope.SINGLETON) - .factory(LocalizedTextProvider.class, DefaultLocalizedTextProvider.class, Scope.SINGLETON) + .factory(LocalizedTextProvider.class, StrutsLocalizedTextProvider.class, Scope.SINGLETON) .factory(TextProviderFactory.class, StrutsTextProviderFactory.class, Scope.SINGLETON) .factory(LocaleProviderFactory.class, DefaultLocaleProviderFactory.class, Scope.SINGLETON) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java similarity index 99% rename from core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java rename to core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 21f7477335..78bf08dc81 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -48,9 +48,9 @@ * Provides support for localization in the framework, it can be used to read only default bundles, * or it can search the class hierarchy to find proper bundles. */ -public class DefaultLocalizedTextProvider implements LocalizedTextProvider { +public class StrutsLocalizedTextProvider implements LocalizedTextProvider { - private static final Logger LOG = LogManager.getLogger(DefaultLocalizedTextProvider.class); + private static final Logger LOG = LogManager.getLogger(StrutsLocalizedTextProvider.class); public static final String XWORK_MESSAGES_BUNDLE = "com/opensymphony/xwork2/xwork-messages"; public static final String STRUTS_MESSAGES_BUNDLE = "org/apache/struts2/struts-messages"; @@ -79,7 +79,7 @@ public static void clearDefaultResourceBundles() { // no-op } - public DefaultLocalizedTextProvider() { + public StrutsLocalizedTextProvider() { addDefaultResourceBundle(XWORK_MESSAGES_BUNDLE); addDefaultResourceBundle(STRUTS_MESSAGES_BUNDLE); diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 362e31754f..ead2954005 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -131,7 +131,7 @@ - + diff --git a/core/src/test/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProviderTest.java b/core/src/test/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProviderTest.java similarity index 91% rename from core/src/test/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProviderTest.java rename to core/src/test/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProviderTest.java index a9dca08b01..237db80970 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProviderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProviderTest.java @@ -30,14 +30,14 @@ /** - * Unit test for {@link DefaultLocalizedTextProvider}. + * Unit test for {@link StrutsLocalizedTextProvider}. * * @author jcarreira * @author tm_jee * * @version $Date$ $Id$ */ -public class DefaultLocalizedTextProviderTest extends XWorkTestCase { +public class StrutsLocalizedTextProviderTest extends XWorkTestCase { private LocalizedTextProvider localizedTextProvider; @@ -215,16 +215,16 @@ public void testXW377() { String text = localizedTextProvider.findText(Bar.class, "xw377", ActionContext.getContext().getLocale(), "xw377", null, ActionContext.getContext().getValueStack()); assertEquals("xw377", text); // should not log - String text2 = localizedTextProvider.findText(DefaultLocalizedTextProviderTest.class, "notinbundle", ActionContext.getContext().getLocale(), "hello", null, ActionContext.getContext().getValueStack()); + String text2 = localizedTextProvider.findText(StrutsLocalizedTextProviderTest.class, "notinbundle", ActionContext.getContext().getLocale(), "hello", null, ActionContext.getContext().getValueStack()); assertEquals("hello", text2); // should log WARN - String text3 = localizedTextProvider.findText(DefaultLocalizedTextProviderTest.class, "notinbundle.key", ActionContext.getContext().getLocale(), "notinbundle.key", null, ActionContext.getContext().getValueStack()); + String text3 = localizedTextProvider.findText(StrutsLocalizedTextProviderTest.class, "notinbundle.key", ActionContext.getContext().getLocale(), "notinbundle.key", null, ActionContext.getContext().getValueStack()); assertEquals("notinbundle.key", text3); // should log WARN - String text4 = localizedTextProvider.findText(DefaultLocalizedTextProviderTest.class, "xw377", ActionContext.getContext().getLocale(), "hello", null, ActionContext.getContext().getValueStack()); + String text4 = localizedTextProvider.findText(StrutsLocalizedTextProviderTest.class, "xw377", ActionContext.getContext().getLocale(), "hello", null, ActionContext.getContext().getValueStack()); assertEquals("xw377", text4); // should not log - String text5 = localizedTextProvider.findText(DefaultLocalizedTextProviderTest.class, "username", ActionContext.getContext().getLocale(), null, null, ActionContext.getContext().getValueStack()); + String text5 = localizedTextProvider.findText(StrutsLocalizedTextProviderTest.class, "username", ActionContext.getContext().getLocale(), null, null, ActionContext.getContext().getValueStack()); assertEquals("Santa", text5); // should not log } From 2e23d7a07ea4313136dc38b8de2451b04c882064 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 12:24:57 +0200 Subject: [PATCH 0072/2288] WW-4762 Extracts base abstract class --- .../util/AbstractLocalizedTextProvider.java | 355 +++++++++++++++++ .../util/StrutsLocalizedTextProvider.java | 368 +----------------- 2 files changed, 363 insertions(+), 360 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java new file mode 100644 index 0000000000..a2578bcba1 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -0,0 +1,355 @@ +package com.opensymphony.xwork2.util; + +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.LocalizedTextProvider; +import com.opensymphony.xwork2.inject.Inject; +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.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.text.MessageFormat; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.MissingResourceException; +import java.util.ResourceBundle; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; +import java.util.concurrent.CopyOnWriteArrayList; + +public abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider { + + private static final Logger LOG = LogManager.getLogger(AbstractLocalizedTextProvider.class); + + public static final String XWORK_MESSAGES_BUNDLE = "com/opensymphony/xwork2/xwork-messages"; + public static final String STRUTS_MESSAGES_BUNDLE = "org/apache/struts2/struts-messages"; + + private static final String TOMCAT_RESOURCE_ENTRIES_FIELD = "resourceEntries"; + private final String RELOADED = "com.opensymphony.xwork2.util.LocalizedTextProvider.reloaded"; + + protected final ConcurrentMap bundlesMap = new ConcurrentHashMap<>(); + protected boolean devMode = false; + protected boolean reloadBundles = false; + + private final ConcurrentMap messageFormats = new ConcurrentHashMap<>(); + private final ConcurrentMap> classLoaderMap = new ConcurrentHashMap<>(); + private final Set missingBundles = Collections.synchronizedSet(new HashSet()); + private final ConcurrentMap delegatedClassLoaderMap = new ConcurrentHashMap<>(); + + /** + * Add's the bundle to the internal list of default bundles. + * If the bundle already exists in the list it will be re-added. + * + * @param resourceBundleName the name of the bundle to add. + */ + @Override + public void addDefaultResourceBundle(String resourceBundleName) { + //make sure this doesn't get added more than once + final ClassLoader ccl = getCurrentThreadContextClassLoader(); + synchronized (XWORK_MESSAGES_BUNDLE) { + List bundles = classLoaderMap.get(ccl.hashCode()); + if (bundles == null) { + bundles = new CopyOnWriteArrayList<>(); + classLoaderMap.put(ccl.hashCode(), bundles); + } + bundles.remove(resourceBundleName); + bundles.add(0, resourceBundleName); + } + + if (LOG.isDebugEnabled()) { + LOG.debug("Added default resource bundle '{}' to default resource bundles for the following classloader '{}'", resourceBundleName, ccl.toString()); + } + } + + protected List getCurrentBundleNames() { + return classLoaderMap.get(getCurrentThreadContextClassLoader().hashCode()); + } + + protected ClassLoader getCurrentThreadContextClassLoader() { + return Thread.currentThread().getContextClassLoader(); + } + + /** + * Returns a localized message for the specified key, aTextName. Neither the key nor the + * message is evaluated. + * + * @param aTextName the message key + * @param locale the 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 + */ + @Override + public String findDefaultText(String aTextName, Locale locale) { + List localList = getCurrentBundleNames(); + + for (String bundleName : localList) { + ResourceBundle bundle = findResourceBundle(bundleName, locale); + if (bundle != null) { + reloadBundles(); + try { + return bundle.getString(aTextName); + } catch (MissingResourceException e) { + // will be logged when not found in any bundle + } + } + } + + if (devMode) { + LOG.warn("Missing key [{}] in bundles [{}]!", aTextName, localList); + } else { + LOG.debug("Missing key [{}] in bundles [{}]!", aTextName, localList); + } + + return null; + } + + /** + * Returns a localized message for the specified key, aTextName, substituting variables from the + * array of params into the message. Neither the key nor the message is evaluated. + * + * @param aTextName the message key + * @param locale the locale the message should be for + * @param params an 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 + */ + @Override + public String findDefaultText(String aTextName, Locale locale, Object[] params) { + String defaultText = findDefaultText(aTextName, locale); + if (defaultText != null) { + MessageFormat mf = buildMessageFormat(defaultText, locale); + return formatWithNullDetection(mf, params); + } + return null; + } + + /** + * @param classLoader a {@link ClassLoader} to look up the bundle from if none can be found on the current thread's classloader + */ + public void setDelegatedClassLoader(final ClassLoader classLoader) { + synchronized (bundlesMap) { + delegatedClassLoaderMap.put(getCurrentThreadContextClassLoader().hashCode(), classLoader); + } + } + + /** + * @param bundleName Removes the bundle from any cached "misses" + */ + public void clearBundle(final String bundleName) { + bundlesMap.remove(getCurrentThreadContextClassLoader().hashCode() + bundleName); + } + + protected void reloadBundles() { + reloadBundles(ActionContext.getContext() != null ? ActionContext.getContext().getContextMap() : null); + } + + protected void reloadBundles(Map context) { + if (reloadBundles) { + try { + Boolean reloaded; + if (context != null) { + reloaded = (Boolean) ObjectUtils.defaultIfNull(context.get(RELOADED), Boolean.FALSE); + } else { + reloaded = Boolean.FALSE; + } + if (!reloaded) { + bundlesMap.clear(); + try { + clearMap(ResourceBundle.class, null, "cacheList"); + } catch (NoSuchFieldException e) { + // happens in IBM JVM, that has a different ResourceBundle impl + // it has a 'cache' member + clearMap(ResourceBundle.class, null, "cache"); + } + + // now, for the true and utter hack, if we're running in tomcat, clear + // it's class loader resource cache as well. + clearTomcatCache(); + if (context != null) { + context.put(RELOADED, true); + } + LOG.debug("Resource bundles reloaded"); + } + } catch (Exception e) { + LOG.error("Could not reload resource bundles", e); + } + } + } + + private void clearTomcatCache() { + ClassLoader loader = getCurrentThreadContextClassLoader(); + // no need for compilation here. + Class cl = loader.getClass(); + + try { + if ("org.apache.catalina.loader.WebappClassLoader".equals(cl.getName())) { + clearMap(cl, loader, TOMCAT_RESOURCE_ENTRIES_FIELD); + } else { + LOG.debug("Class loader {} is not tomcat loader.", cl.getName()); + } + } catch (NoSuchFieldException nsfe) { + if ("org.apache.catalina.loader.WebappClassLoaderBase".equals(cl.getSuperclass().getName())) { + LOG.debug("Base class {} doesn't contain '{}' field, trying with parent!", cl.getName(), TOMCAT_RESOURCE_ENTRIES_FIELD, nsfe); + try { + clearMap(cl.getSuperclass(), loader, TOMCAT_RESOURCE_ENTRIES_FIELD); + } catch (Exception e) { + LOG.warn("Couldn't clear tomcat cache using {}", cl.getSuperclass().getName(), e); + } + } + } catch (Exception e) { + LOG.warn("Couldn't clear tomcat cache", cl.getName(), e); + } + } + + private void clearMap(Class cl, Object obj, String name) + throws NoSuchFieldException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { + + Field field = cl.getDeclaredField(name); + field.setAccessible(true); + + Object cache = field.get(obj); + + synchronized (cache) { + Class ccl = cache.getClass(); + Method clearMethod = ccl.getMethod("clear"); + clearMethod.invoke(cache); + } + } + + protected MessageFormat buildMessageFormat(String pattern, Locale locale) { + MessageFormatKey key = new MessageFormatKey(pattern, locale); + MessageFormat format = messageFormats.get(key); + if (format == null) { + format = new MessageFormat(pattern); + format.setLocale(locale); + format.applyPattern(pattern); + messageFormats.put(key, format); + } + + return format; + } + + protected String formatWithNullDetection(MessageFormat mf, Object[] args) { + String message = mf.format(args); + if ("null".equals(message)) { + return null; + } else { + return message; + } + } + + @Inject(value = StrutsConstants.STRUTS_I18N_RELOAD, required = false) + public void setReloadBundles(String reloadBundles) { + this.reloadBundles = Boolean.parseBoolean(reloadBundles); + } + + @Inject(value = StrutsConstants.STRUTS_DEVMODE, required = false) + public void setDevMode(String devMode) { + this.devMode = Boolean.parseBoolean(devMode); + } + + /** + * Finds the given resource bundle by it's name. + *

+ * Will use Thread.currentThread().getContextClassLoader() as the classloader. + *

+ * + * @param aBundleName the name of the bundle (usually it's FQN classname). + * @param locale the locale. + * @return the bundle, null if not found. + */ + @Override + public ResourceBundle findResourceBundle(String aBundleName, Locale locale) { + ClassLoader classLoader = getCurrentThreadContextClassLoader(); + String key = createMissesKey(String.valueOf(classLoader.hashCode()), aBundleName, locale); + + if (missingBundles.contains(key)) { + return null; + } + + ResourceBundle bundle = null; + try { + if (bundlesMap.containsKey(key)) { + bundle = bundlesMap.get(key); + } else { + bundle = ResourceBundle.getBundle(aBundleName, locale, classLoader); + bundlesMap.putIfAbsent(key, bundle); + } + } catch (MissingResourceException ex) { + if (delegatedClassLoaderMap.containsKey(classLoader.hashCode())) { + try { + if (bundlesMap.containsKey(key)) { + bundle = bundlesMap.get(key); + } else { + bundle = ResourceBundle.getBundle(aBundleName, locale, delegatedClassLoaderMap.get(classLoader.hashCode())); + bundlesMap.putIfAbsent(key, bundle); + } + } catch (MissingResourceException e) { + LOG.debug("Missing resource bundle [{}]!", aBundleName, e); + missingBundles.add(key); + } + } else { + LOG.debug("Missing resource bundle [{}]!", aBundleName); + missingBundles.add(key); + } + } + return bundle; + } + + /** + * Creates a key to used for lookup/storing in the bundle misses cache. + * + * @param prefix the prefix for the returning String - it is supposed to be the ClassLoader hash code. + * @param aBundleName the name of the bundle (usually it's FQN classname). + * @param locale the locale. + * @return the key to use for lookup/storing in the bundle misses cache. + */ + private String createMissesKey(String prefix, String aBundleName, Locale locale) { + return prefix + aBundleName + "_" + locale.toString(); + } + + static class MessageFormatKey { + String pattern; + Locale locale; + + MessageFormatKey(String pattern, Locale locale) { + this.pattern = pattern; + this.locale = locale; + } + + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + MessageFormatKey that = (MessageFormatKey) o; + + if (pattern != null ? !pattern.equals(that.pattern) : that.pattern != null) return false; + return locale != null ? locale.equals(that.locale) : that.locale == null; + } + + @Override + public int hashCode() { + int result = pattern != null ? pattern.hashCode() : 0; + result = 31 * result + (locale != null ? locale.hashCode() : 0); + return result; + } + } + + static class GetDefaultMessageReturnArg { + String message; + boolean foundInBundle; + + public GetDefaultMessageReturnArg(String message, boolean foundInBundle) { + this.message = message; + this.foundInBundle = foundInBundle; + } + } + +} diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 78bf08dc81..3d03f9a542 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -23,52 +23,32 @@ 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.logging.log4j.message.ParameterizedMessage; 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; +import java.util.Locale; +import java.util.MissingResourceException; +import java.util.ResourceBundle; +import java.util.Set; +import java.util.StringTokenizer; +import java.util.TreeSet; /** * Provides support for localization in the framework, it can be used to read only default bundles, * or it can search the class hierarchy to find proper bundles. */ -public class StrutsLocalizedTextProvider implements LocalizedTextProvider { +public class StrutsLocalizedTextProvider extends AbstractLocalizedTextProvider { private static final Logger LOG = LogManager.getLogger(StrutsLocalizedTextProvider.class); - public static final String XWORK_MESSAGES_BUNDLE = "com/opensymphony/xwork2/xwork-messages"; - public static final String STRUTS_MESSAGES_BUNDLE = "org/apache/struts2/struts-messages"; - - 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"; - /** * Clears the internal list of resource bundles. * @@ -80,26 +60,10 @@ public static void clearDefaultResourceBundles() { } public StrutsLocalizedTextProvider() { - addDefaultResourceBundle(XWORK_MESSAGES_BUNDLE); addDefaultResourceBundle(STRUTS_MESSAGES_BUNDLE); } - /** - * Should resorce bundles be reloaded. - * - * @param reloadBundles reload bundles? - */ - @Inject(value = StrutsConstants.STRUTS_I18N_RELOAD, required = false) - public void setReloadBundles(String reloadBundles) { - this.reloadBundles = Boolean.parseBoolean(reloadBundles); - } - - @Inject(value = StrutsConstants.STRUTS_DEVMODE, required = false) - public void setDevMode(String devMode) { - this.devMode = Boolean.parseBoolean(devMode); - } - @Inject(value = StrutsConstants.STRUTS_CUSTOM_I18N_RESOURCES, required = false) public void setCustomI18NResources(String bundles) { if (bundles != null && bundles.length() > 0) { @@ -117,33 +81,6 @@ public void setCustomI18NResources(String bundles) { } } - /** - * Add's the bundle to the internal list of default bundles. - *

- * If the bundle already exists in the list it will be readded. - *

- * - * @param resourceBundleName the name of the bundle to add. - */ - @Override - public void addDefaultResourceBundle(String resourceBundleName) { - //make sure this doesn't get added more than once - final ClassLoader ccl = getCurrentThreadContextClassLoader(); - synchronized (XWORK_MESSAGES_BUNDLE) { - List bundles = classLoaderMap.get(ccl.hashCode()); - if (bundles == null) { - bundles = new CopyOnWriteArrayList<>(); - classLoaderMap.put(ccl.hashCode(), bundles); - } - bundles.remove(resourceBundleName); - bundles.add(0, resourceBundleName); - } - - if (LOG.isDebugEnabled()) { - LOG.debug("Added default resource bundle '{}' to default resource bundles for the following classloader '{}'", resourceBundleName, ccl.toString()); - } - } - /** * Builds a {@link java.util.Locale} from a String of the form en_US_foo into a Locale * with language "en", country "US" and variant "foo". This will parse the output of @@ -189,135 +126,6 @@ public static Locale localeFromString(String localeStr, Locale defaultLocale) { return new Locale(language, country, localeStr); } - /** - * Returns a localized message for the specified key, aTextName. Neither the key nor the - * message is evaluated. - * - * @param aTextName the message key - * @param locale the 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 - */ - @Override - public String findDefaultText(String aTextName, Locale locale) { - List localList = classLoaderMap.get(Thread.currentThread().getContextClassLoader().hashCode()); - - for (String bundleName : localList) { - ResourceBundle bundle = findResourceBundle(bundleName, locale); - if (bundle != null) { - reloadBundles(); - try { - return bundle.getString(aTextName); - } catch (MissingResourceException e) { - // will be logged when not found in any bundle - } - } - } - - if (devMode) { - LOG.warn("Missing key [{}] in bundles [{}]!", aTextName, localList); - } else { - LOG.debug("Missing key [{}] in bundles [{}]!", aTextName, localList); - } - - return null; - } - - /** - * Returns a localized message for the specified key, aTextName, substituting variables from the - * array of params into the message. Neither the key nor the message is evaluated. - * - * @param aTextName the message key - * @param locale the locale the message should be for - * @param params an 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 - */ - @Override - public String findDefaultText(String aTextName, Locale locale, Object[] params) { - String defaultText = findDefaultText(aTextName, locale); - if (defaultText != null) { - MessageFormat mf = buildMessageFormat(defaultText, locale); - return formatWithNullDetection(mf, params); - } - return null; - } - - /** - * Finds the given resource bundle by it's name. - *

- * Will use Thread.currentThread().getContextClassLoader() as the classloader. - *

- * - * @param aBundleName the name of the bundle (usually it's FQN classname). - * @param locale the locale. - * @return the bundle, null if not found. - */ - @Override - public ResourceBundle findResourceBundle(String aBundleName, Locale locale) { - ClassLoader classLoader = getCurrentThreadContextClassLoader(); - String key = createMissesKey(String.valueOf(classLoader.hashCode()), aBundleName, locale); - - if (missingBundles.contains(key)) { - return null; - } - - ResourceBundle bundle = null; - try { - if (bundlesMap.containsKey(key)) { - bundle = bundlesMap.get(key); - } else { - bundle = ResourceBundle.getBundle(aBundleName, locale, classLoader); - bundlesMap.putIfAbsent(key, bundle); - } - } catch (MissingResourceException ex) { - if (delegatedClassLoaderMap.containsKey(classLoader.hashCode())) { - try { - if (bundlesMap.containsKey(key)) { - bundle = bundlesMap.get(key); - } else { - bundle = ResourceBundle.getBundle(aBundleName, locale, delegatedClassLoaderMap.get(classLoader.hashCode())); - bundlesMap.putIfAbsent(key, bundle); - } - } catch (MissingResourceException e) { - LOG.debug("Missing resource bundle [{}]!", aBundleName, e); - missingBundles.add(key); - } - } else { - LOG.debug("Missing resource bundle [{}]!", aBundleName); - missingBundles.add(key); - } - } - return bundle; - } - - /** - * @param classLoader a {@link ClassLoader} to look up the bundle from if none can be found on the current thread's classloader - */ - public void setDelegatedClassLoader(final ClassLoader classLoader) { - synchronized (bundlesMap) { - delegatedClassLoaderMap.put(getCurrentThreadContextClassLoader().hashCode(), classLoader); - } - } - - /** - * @param bundleName Removes the bundle from any cached "misses" - */ - public void clearBundle(final String bundleName) { - bundlesMap.remove(getCurrentThreadContextClassLoader().hashCode() + bundleName); - } - - - /** - * Creates a key to used for lookup/storing in the bundle misses cache. - * - * @param prefix the prefix for the returning String - it is supposed to be the ClassLoader hash code. - * @param aBundleName the name of the bundle (usually it's FQN classname). - * @param locale the locale. - * @return the key to use for lookup/storing in the bundle misses cache. - */ - private String createMissesKey(String prefix, String aBundleName, Locale locale) { - return prefix + aBundleName + "_" + locale.toString(); - } - /** * Calls {@link #findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args)} * with aTextName as the default message. @@ -759,28 +567,6 @@ private String getMessage(String bundleName, Locale locale, String key, ValueSta } } - private String formatWithNullDetection(MessageFormat mf, Object[] args) { - String message = mf.format(args); - if ("null".equals(message)) { - return null; - } else { - return message; - } - } - - private MessageFormat buildMessageFormat(String pattern, Locale locale) { - MessageFormatKey key = new MessageFormatKey(pattern, locale); - MessageFormat format = messageFormats.get(key); - if (format == null) { - format = new MessageFormat(pattern); - format.setLocale(locale); - format.applyPattern(pattern); - messageFormats.put(key, format); - } - - return format; - } - /** * Traverse up class hierarchy looking for message. Looks at class, then implemented interface, * before going up hierarchy. @@ -790,7 +576,7 @@ private MessageFormat buildMessageFormat(String pattern, Locale locale) { private String findMessage(Class clazz, String key, String indexedKey, Locale locale, Object[] args, Set checked, ValueStack valueStack) { if (checked == null) { - checked = new TreeSet(); + checked = new TreeSet<>(); } else if (checked.contains(clazz.getName())) { return null; } @@ -849,85 +635,6 @@ private String findMessage(Class clazz, String key, String indexedKey, Locale lo return null; } - private void reloadBundles() { - reloadBundles(ActionContext.getContext() != null ? ActionContext.getContext().getContextMap() : null); - } - - private void reloadBundles(Map context) { - if (reloadBundles) { - try { - Boolean reloaded; - if (context != null) { - reloaded = (Boolean) ObjectUtils.defaultIfNull(context.get(RELOADED), Boolean.FALSE); - }else { - reloaded = Boolean.FALSE; - } - if (!reloaded) { - bundlesMap.clear(); - try { - clearMap(ResourceBundle.class, null, "cacheList"); - } catch (NoSuchFieldException e) { - // happens in IBM JVM, that has a different ResourceBundle impl - // it has a 'cache' member - clearMap(ResourceBundle.class, null, "cache"); - } - - // now, for the true and utter hack, if we're running in tomcat, clear - // it's class loader resource cache as well. - clearTomcatCache(); - if(context!=null) { - context.put(RELOADED, true); - } - LOG.debug("Resource bundles reloaded"); - } - } catch (Exception e) { - LOG.error("Could not reload resource bundles", e); - } - } - } - - - private void clearTomcatCache() { - ClassLoader loader = getCurrentThreadContextClassLoader(); - // no need for compilation here. - Class cl = loader.getClass(); - - try { - if ("org.apache.catalina.loader.WebappClassLoader".equals(cl.getName())) { - clearMap(cl, loader, TOMCAT_RESOURCE_ENTRIES_FIELD); - } else { - LOG.debug("Class loader {} is not tomcat loader.", cl.getName()); - } - } catch (NoSuchFieldException nsfe) { - if ("org.apache.catalina.loader.WebappClassLoaderBase".equals(cl.getSuperclass().getName())) { - LOG.debug("Base class {} doesn't contain '{}' field, trying with parent!", cl.getName(), TOMCAT_RESOURCE_ENTRIES_FIELD, nsfe); - try { - clearMap(cl.getSuperclass(), loader, TOMCAT_RESOURCE_ENTRIES_FIELD); - } catch (Exception e) { - LOG.warn("Couldn't clear tomcat cache using {}", cl.getSuperclass().getName(), e); - } - } - } catch (Exception e) { - LOG.warn("Couldn't clear tomcat cache", cl.getName(), e); - } - } - - - private void clearMap(Class cl, Object obj, String name) - throws NoSuchFieldException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { - - Field field = cl.getDeclaredField(name); - field.setAccessible(true); - - Object cache = field.get(obj); - - synchronized (cache) { - Class ccl = cache.getClass(); - Method clearMethod = ccl.getMethod("clear"); - clearMethod.invoke(cache); - } - } - /** * Clears all the internal lists. * @@ -938,63 +645,4 @@ public void reset() { // no-op } - static class MessageFormatKey { - String pattern; - Locale locale; - - MessageFormatKey(String pattern, Locale locale) { - this.pattern = pattern; - this.locale = locale; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (!(o instanceof MessageFormatKey)) return false; - - final MessageFormatKey messageFormatKey = (MessageFormatKey) o; - - if (locale != null ? !locale.equals(messageFormatKey.locale) : messageFormatKey.locale != null) - return false; - if (pattern != null ? !pattern.equals(messageFormatKey.pattern) : messageFormatKey.pattern != null) - return false; - - return true; - } - - @Override - public int hashCode() { - int result; - result = (pattern != null ? pattern.hashCode() : 0); - result = 29 * result + (locale != null ? locale.hashCode() : 0); - return result; - } - } - - private static ClassLoader getCurrentThreadContextClassLoader() { - return Thread.currentThread().getContextClassLoader(); - } - - static class GetDefaultMessageReturnArg { - String message; - boolean foundInBundle; - - public GetDefaultMessageReturnArg(String message, boolean foundInBundle) { - this.message = message; - this.foundInBundle = foundInBundle; - } - } - - private static class EmptyResourceBundle extends ResourceBundle { - @Override - public Enumeration getKeys() { - return null; // dummy - } - - @Override - protected Object handleGetObject(String key) { - return null; // dummy - } - } - } From bb19a6209886795b76385e48fd86424c144ee029 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 20:28:11 +0200 Subject: [PATCH 0073/2288] WW-4762 Introduces default provider which only uses default bundles --- .../util/AbstractLocalizedTextProvider.java | 145 +++++++- .../util/DefaultLocalizedTextProvider.java | 310 ++++++++++++++++++ .../util/StrutsLocalizedTextProvider.java | 161 +-------- 3 files changed, 461 insertions(+), 155 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java index a2578bcba1..8c377c17e2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -20,11 +20,12 @@ import java.util.MissingResourceException; import java.util.ResourceBundle; import java.util.Set; +import java.util.TreeSet; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.CopyOnWriteArrayList; -public abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider { +abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider { private static final Logger LOG = LogManager.getLogger(AbstractLocalizedTextProvider.class); @@ -301,6 +302,26 @@ public ResourceBundle findResourceBundle(String aBundleName, Locale locale) { return bundle; } + /** + * Determines if we found the text in the bundles. + * + * @param result the result so far + * @return true if we could not find the text, false if the text was found (=success). + */ + protected boolean unableToFindTextForKey(GetDefaultMessageReturnArg result) { + if (result == null || result.message == null) { + return true; + } + + // did we find it in the bundle, then no problem? + if (result.foundInBundle) { + return false; + } + + // not found in bundle + return true; + } + /** * Creates a key to used for lookup/storing in the bundle misses cache. * @@ -313,6 +334,128 @@ private String createMissesKey(String prefix, String aBundleName, Locale locale) return prefix + aBundleName + "_" + locale.toString(); } + /** + * @return the default message. + */ + protected GetDefaultMessageReturnArg getDefaultMessage(String key, Locale locale, ValueStack valueStack, Object[] args, + String defaultMessage) { + GetDefaultMessageReturnArg result = null; + boolean found = true; + + if (key != null) { + String message = findDefaultText(key, locale); + + if (message == null) { + message = defaultMessage; + found = false; // not found in bundles + } + + // defaultMessage may be null + if (message != null) { + MessageFormat mf = buildMessageFormat(TextParseUtil.translateVariables(message, valueStack), locale); + + String msg = formatWithNullDetection(mf, args); + result = new GetDefaultMessageReturnArg(msg, found); + } + } + + return result; + } + + /** + * @return the message from the named resource bundle. + */ + protected String getMessage(String bundleName, Locale locale, String key, ValueStack valueStack, Object[] args) { + ResourceBundle bundle = findResourceBundle(bundleName, locale); + if (bundle == null) { + return null; + } + if (valueStack != null) + reloadBundles(valueStack.getContext()); + try { + String message = bundle.getString(key); + if (valueStack != null) + message = TextParseUtil.translateVariables(bundle.getString(key), valueStack); + MessageFormat mf = buildMessageFormat(message, locale); + return formatWithNullDetection(mf, args); + } catch (MissingResourceException e) { + if (devMode) { + LOG.warn("Missing key [{}] in bundle [{}]!", key, bundleName); + } else { + LOG.debug("Missing key [{}] in bundle [{}]!", key, bundleName); + } + return null; + } + } + + /** + * Traverse up class hierarchy looking for message. Looks at class, then implemented interface, + * before going up hierarchy. + * + * @return the message + */ + protected String findMessage(Class clazz, String key, String indexedKey, Locale locale, Object[] args, Set checked, + ValueStack valueStack) { + if (checked == null) { + checked = new TreeSet<>(); + } else if (checked.contains(clazz.getName())) { + return null; + } + + // look in properties of this class + String msg = getMessage(clazz.getName(), locale, key, valueStack, args); + + if (msg != null) { + return msg; + } + + if (indexedKey != null) { + msg = getMessage(clazz.getName(), locale, indexedKey, valueStack, args); + + if (msg != null) { + return msg; + } + } + + // look in properties of implemented interfaces + Class[] interfaces = clazz.getInterfaces(); + + for (Class anInterface : interfaces) { + msg = getMessage(anInterface.getName(), locale, key, valueStack, args); + + if (msg != null) { + return msg; + } + + if (indexedKey != null) { + msg = getMessage(anInterface.getName(), locale, indexedKey, valueStack, args); + + if (msg != null) { + return msg; + } + } + } + + // traverse up hierarchy + if (clazz.isInterface()) { + interfaces = clazz.getInterfaces(); + + for (Class anInterface : interfaces) { + msg = findMessage(anInterface, key, indexedKey, locale, args, checked, valueStack); + + if (msg != null) { + return msg; + } + } + } else { + if (!clazz.equals(Object.class) && !clazz.isPrimitive()) { + return findMessage(clazz.getSuperclass(), key, indexedKey, locale, args, checked, valueStack); + } + } + + return null; + } + static class MessageFormatKey { String pattern; Locale locale; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java new file mode 100644 index 0000000000..acd394351a --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -0,0 +1,310 @@ +/* + * $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.ModelDriven; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.text.MessageFormat; +import java.util.Locale; +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +/** + * Provides support for localization in the framework, it can be used to read only default bundles, + * or it can search the class hierarchy to find proper bundles. + */ +public class DefaultLocalizedTextProvider extends AbstractLocalizedTextProvider { + + private static final Logger LOG = LogManager.getLogger(DefaultLocalizedTextProvider.class); + + public DefaultLocalizedTextProvider() { + addDefaultResourceBundle(XWORK_MESSAGES_BUNDLE); + addDefaultResourceBundle(STRUTS_MESSAGES_BUNDLE); + } + + /** + * Calls {@link #findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args)} + * with aTextName as the default message. + * + * @param aClass class name + * @param aTextName text name + * @param locale the locale + * @return the localized text, or null if none can be found and no defaultMessage is provided + * @see #findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args) + */ + @Override + public String findText(Class aClass, String aTextName, Locale locale) { + return findText(aClass, aTextName, locale, aTextName, new Object[0]); + } + + /** + *

+ * Finds a localized text message for the given key, aTextName. Both the key and the message + * itself is evaluated as required. The following algorithm is used to find the requested + * message: + *

+ * + *
    + *
  1. Look for message in aClass' class hierarchy. + *
      + *
    1. Look for the message in a resource bundle for aClass
    2. + *
    3. If not found, look for the message in a resource bundle for any implemented interface
    4. + *
    5. If not found, traverse up the Class' hierarchy and repeat from the first sub-step
    6. + *
  2. + *
  3. If not found and aClass is a {@link ModelDriven} Action, then look for message in + * the model's class hierarchy (repeat sub-steps listed above).
  4. + *
  5. If not found, look for message in child property. This is determined by evaluating + * the message key as an OGNL expression. For example, if the key is + * user.address.state, then it will attempt to see if "user" can be resolved into an + * object. If so, repeat the entire process fromthe beginning with the object's class as + * aClass and "address.state" as the message key.
  6. + *
  7. If not found, look for the message in aClass' package hierarchy.
  8. + *
  9. If still not found, look for the message in the default resource bundles.
  10. + *
  11. Return defaultMessage
  12. + *
+ * + *

+ * When looking for the message, if the key indexes a collection (e.g. user.phone[0]) and a + * message for that specific key cannot be found, the general form will also be looked up + * (i.e. user.phone[*]). + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + * @param aClass the class whose name to use as the start point for the search + * @param aTextName the key to find the text message for + * @param locale the locale the message should be for + * @param defaultMessage the message to be returned if no text message can be found in any + * resource bundle + * @param args arguments + * resource bundle + * @return the localized text, or null if none can be found and no defaultMessage is provided + */ + @Override + public String findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args) { + ValueStack valueStack = ActionContext.getContext().getValueStack(); + return findText(aClass, aTextName, locale, defaultMessage, args, valueStack); + + } + + /** + *

+ * Finds a localized text message for the given key, aTextName. Both the key and the message + * itself is evaluated as required. The following algorithm is used to find the requested + * message: + *

+ * + *
    + *
  1. Look for message in aClass' class hierarchy. + *
      + *
    1. Look for the message in a resource bundle for aClass
    2. + *
    3. If not found, look for the message in a resource bundle for any implemented interface
    4. + *
    5. If not found, traverse up the Class' hierarchy and repeat from the first sub-step
    6. + *
  2. + *
  3. If not found and aClass is a {@link ModelDriven} Action, then look for message in + * the model's class hierarchy (repeat sub-steps listed above).
  4. + *
  5. If not found, look for message in child property. This is determined by evaluating + * the message key as an OGNL expression. For example, if the key is + * user.address.state, then it will attempt to see if "user" can be resolved into an + * object. If so, repeat the entire process fromthe beginning with the object's class as + * aClass and "address.state" as the message key.
  6. + *
  7. If not found, look for the message in aClass' package hierarchy.
  8. + *
  9. If still not found, look for the message in the default resource bundles.
  10. + *
  11. Return defaultMessage
  12. + *
+ * + *

+ * When looking for the message, if the key indexes a collection (e.g. user.phone[0]) and a + * message for that specific key cannot be found, the general form will also be looked up + * (i.e. user.phone[*]). + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + *

+ * If a message is not found a WARN log will be logged. + *

+ * + * @param aClass the class whose name to use as the start point for the search + * @param aTextName the key to find the text message for + * @param locale the locale the message should be for + * @param defaultMessage the message to be returned if no text message can be found in any + * resource bundle + * @param args arguments + * @param valueStack the value stack to use to evaluate expressions instead of the + * one in the ActionContext ThreadLocal + * @return the localized text, or null if none can be found and no defaultMessage is provided + */ + @Override + public String findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args, ValueStack valueStack) { + String indexedTextName = null; + if (aTextName == null) { + LOG.warn("Trying to find text with null key!"); + aTextName = ""; + } + // calculate indexedTextName (collection[*]) if applicable + if (aTextName.contains("[")) { + int i = -1; + + indexedTextName = aTextName; + + while ((i = indexedTextName.indexOf("[", i + 1)) != -1) { + int j = indexedTextName.indexOf("]", i); + String a = indexedTextName.substring(0, i); + String b = indexedTextName.substring(j); + indexedTextName = a + "[*" + b; + } + } + + // get default + GetDefaultMessageReturnArg result; + if (indexedTextName == null) { + result = getDefaultMessage(aTextName, locale, valueStack, args, defaultMessage); + } else { + result = getDefaultMessage(aTextName, locale, valueStack, args, null); + if (result != null && result.message != null) { + return result.message; + } + result = getDefaultMessage(indexedTextName, locale, valueStack, args, defaultMessage); + } + + // could we find the text, if not log a warn + if (unableToFindTextForKey(result) && LOG.isDebugEnabled()) { + String warn = "Unable to find text for key '" + aTextName + "' "; + if (indexedTextName != null) { + warn += " or indexed key '" + indexedTextName + "' "; + } + warn += "in class '" + aClass.getName() + "' and locale '" + locale + "'"; + LOG.debug(warn); + } + + return result != null ? result.message : null; + } + + /** + *

+ * Finds a localized text message for the given key, aTextName, in the specified resource bundle + * with aTextName as the default message. + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + * @param bundle a resource bundle name + * @param aTextName text name + * @param locale the locale + * @return the localized text, or null if none can be found and no defaultMessage is provided + * @see #findText(ResourceBundle, String, Locale, String, Object[]) + */ + @Override + public String findText(ResourceBundle bundle, String aTextName, Locale locale) { + return findText(bundle, aTextName, locale, aTextName, new Object[0]); + } + + /** + *

+ * Finds a localized text message for the given key, aTextName, in the specified resource + * bundle. + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + *

+ * If a message is not found a WARN log will be logged. + *

+ * + * @param bundle the bundle + * @param aTextName the key + * @param locale the locale + * @param defaultMessage the default message to use if no message was found in the bundle + * @param args arguments for the message formatter. + * @return the localized text, or null if none can be found and no defaultMessage is provided + */ + @Override + public String findText(ResourceBundle bundle, String aTextName, Locale locale, String defaultMessage, Object[] args) { + ValueStack valueStack = ActionContext.getContext().getValueStack(); + return findText(bundle, aTextName, locale, defaultMessage, args, valueStack); + } + + /** + *

+ * Finds a localized text message for the given key, aTextName, in the specified resource + * bundle. + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + *

+ * If a message is not found a WARN log will be logged. + *

+ * + * @param bundle the bundle + * @param aTextName the key + * @param locale the locale + * @param defaultMessage the default message to use if no message was found in the bundle + * @param args arguments for the message formatter. + * @param valueStack the OGNL value stack. + * @return the localized text, or null if none can be found and no defaultMessage is provided + */ + @Override + public String findText(ResourceBundle bundle, String aTextName, Locale locale, String defaultMessage, Object[] args, + ValueStack valueStack) { + try { + reloadBundles(valueStack.getContext()); + + String message = TextParseUtil.translateVariables(bundle.getString(aTextName), valueStack); + MessageFormat mf = buildMessageFormat(message, locale); + + return formatWithNullDetection(mf, args); + } catch (MissingResourceException ex) { + if (devMode) { + LOG.warn("Missing key [{}] in bundle [{}]!", aTextName, bundle); + } else { + LOG.debug("Missing key [{}] in bundle [{}]!", aTextName, bundle); + } + } + + GetDefaultMessageReturnArg result = getDefaultMessage(aTextName, locale, valueStack, args, defaultMessage); + if (unableToFindTextForKey(result)) { + LOG.warn("Unable to find text for key '{}' in ResourceBundles for locale '{}'", aTextName, locale); + } + return result != null ? result.message : null; + } + +} diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 3d03f9a542..9552869321 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -37,9 +37,7 @@ import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; -import java.util.Set; import java.util.StringTokenizer; -import java.util.TreeSet; /** * Provides support for localization in the framework, it can be used to read only default bundles, @@ -89,7 +87,6 @@ public void setCustomI18NResources(String bundles) { * @param localeStr The locale String to parse. * @param defaultLocale The locale to use if localeStr is null. * @return requested Locale - * * @deprecated please use {@link org.apache.commons.lang3.LocaleUtils#toLocale(String)} */ @Deprecated @@ -130,10 +127,9 @@ public static Locale localeFromString(String localeStr, Locale defaultLocale) { * Calls {@link #findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args)} * with aTextName as the default message. * - * @param aClass class name - * @param aTextName text name - * @param locale the locale - * + * @param aClass class name + * @param aTextName text name + * @param locale the locale * @return the localized text, or null if none can be found and no defaultMessage is provided * @see #findText(Class aClass, String aTextName, Locale locale, String defaultMessage, Object[] args) */ @@ -251,7 +247,7 @@ public String findText(Class aClass, String aTextName, Locale locale, String def ValueStack valueStack) { String indexedTextName = null; if (aTextName == null) { - LOG.warn("Trying to find text with null key!"); + LOG.warn("Trying to find text with null key!"); aTextName = ""; } // calculate indexedTextName (collection[*]) if applicable @@ -394,26 +390,6 @@ public String findText(Class aClass, String aTextName, Locale locale, String def return result != null ? result.message : null; } - /** - * Determines if we found the text in the bundles. - * - * @param result the result so far - * @return true if we could not find the text, false if the text was found (=success). - */ - private boolean unableToFindTextForKey(GetDefaultMessageReturnArg result) { - if (result == null || result.message == null) { - return true; - } - - // did we find it in the bundle, then no problem? - if (result.foundInBundle) { - return false; - } - - // not found in bundle - return true; - } - /** *

* Finds a localized text message for the given key, aTextName, in the specified resource bundle @@ -425,10 +401,9 @@ private boolean unableToFindTextForKey(GetDefaultMessageReturnArg result) { * will be treated as an OGNL expression and evaluated as such. *

* - * @param bundle a resource bundle name - * @param aTextName text name - * @param locale the locale - * + * @param bundle a resource bundle name + * @param aTextName text name + * @param locale the locale * @return the localized text, or null if none can be found and no defaultMessage is provided * @see #findText(java.util.ResourceBundle, String, java.util.Locale, String, Object[]) */ @@ -513,128 +488,6 @@ public String findText(ResourceBundle bundle, String aTextName, Locale locale, S return result != null ? result.message : null; } - /** - * @return the default message. - */ - private GetDefaultMessageReturnArg getDefaultMessage(String key, Locale locale, ValueStack valueStack, Object[] args, - String defaultMessage) { - GetDefaultMessageReturnArg result = null; - boolean found = true; - - if (key != null) { - String message = findDefaultText(key, locale); - - if (message == null) { - message = defaultMessage; - found = false; // not found in bundles - } - - // defaultMessage may be null - if (message != null) { - MessageFormat mf = buildMessageFormat(TextParseUtil.translateVariables(message, valueStack), locale); - - String msg = formatWithNullDetection(mf, args); - result = new GetDefaultMessageReturnArg(msg, found); - } - } - - return result; - } - - /** - * @return the message from the named resource bundle. - */ - private String getMessage(String bundleName, Locale locale, String key, ValueStack valueStack, Object[] args) { - ResourceBundle bundle = findResourceBundle(bundleName, locale); - if (bundle == null) { - return null; - } - if (valueStack != null) - reloadBundles(valueStack.getContext()); - try { - String message = bundle.getString(key); - if (valueStack != null) - message = TextParseUtil.translateVariables(bundle.getString(key), valueStack); - MessageFormat mf = buildMessageFormat(message, locale); - return formatWithNullDetection(mf, args); - } catch (MissingResourceException e) { - if (devMode) { - LOG.warn("Missing key [{}] in bundle [{}]!", key, bundleName); - } else { - LOG.debug("Missing key [{}] in bundle [{}]!", key, bundleName); - } - return null; - } - } - - /** - * Traverse up class hierarchy looking for message. Looks at class, then implemented interface, - * before going up hierarchy. - * - * @return the message - */ - private String findMessage(Class clazz, String key, String indexedKey, Locale locale, Object[] args, Set checked, - ValueStack valueStack) { - if (checked == null) { - checked = new TreeSet<>(); - } else if (checked.contains(clazz.getName())) { - return null; - } - - // look in properties of this class - String msg = getMessage(clazz.getName(), locale, key, valueStack, args); - - if (msg != null) { - return msg; - } - - if (indexedKey != null) { - msg = getMessage(clazz.getName(), locale, indexedKey, valueStack, args); - - if (msg != null) { - return msg; - } - } - - // look in properties of implemented interfaces - Class[] interfaces = clazz.getInterfaces(); - - for (Class anInterface : interfaces) { - msg = getMessage(anInterface.getName(), locale, key, valueStack, args); - - if (msg != null) { - return msg; - } - - if (indexedKey != null) { - msg = getMessage(anInterface.getName(), locale, indexedKey, valueStack, args); - - if (msg != null) { - return msg; - } - } - } - - // traverse up hierarchy - if (clazz.isInterface()) { - interfaces = clazz.getInterfaces(); - - for (Class anInterface : interfaces) { - msg = findMessage(anInterface, key, indexedKey, locale, args, checked, valueStack); - - if (msg != null) { - return msg; - } - } - } else { - if (!clazz.equals(Object.class) && !clazz.isPrimitive()) { - return findMessage(clazz.getSuperclass(), key, indexedKey, locale, args, checked, valueStack); - } - } - - return null; - } - /** * Clears all the internal lists. * From bbd4a9e8c567265c0eb376c0f8a3445f4d9a5fdf Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 26 Apr 2017 20:29:33 +0200 Subject: [PATCH 0074/2288] WW-4792 Marks XWork constants as deprecated --- .../opensymphony/xwork2/XWorkConstants.java | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java index bc532d0d5d..2499ab9d20 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java @@ -3,29 +3,46 @@ /** * Constants used across framework */ +@Deprecated public final class XWorkConstants { + @Deprecated public static final String COLLECTION_CONVERTER = "collectionConverter"; + @Deprecated public static final String DATE_CONVERTER = "dateConverter"; + @Deprecated public static final String NUMBER_CONVERTER = "numberConverter"; + @Deprecated public static final String STRING_CONVERTER = "stringConverter"; + @Deprecated public static final String ARRAY_CONVERTER = "arrayConverter"; + @Deprecated public static final String DEV_MODE = "devMode"; + @Deprecated public static final String LOG_MISSING_PROPERTIES = "logMissingProperties"; + @Deprecated public static final String ENABLE_OGNL_EXPRESSION_CACHE = "enableOGNLExpressionCache"; + @Deprecated public static final String ENABLE_OGNL_EVAL_EXPRESSION = "enableOGNLEvalExpression"; + @Deprecated public static final String RELOAD_XML_CONFIGURATION = "reloadXmlConfiguration"; + @Deprecated public static final String ALLOW_STATIC_METHOD_ACCESS = "allowStaticMethodAccess"; + @Deprecated public static final String XWORK_LOGGER_FACTORY = "xwork.loggerFactory"; - + @Deprecated public static final String OGNL_EXCLUDED_CLASSES = "ognlExcludedClasses"; + @Deprecated public static final String OGNL_EXCLUDED_PACKAGE_NAME_PATTERNS = "ognlExcludedPackageNamePatterns"; + @Deprecated public static final String OGNL_EXCLUDED_PACKAGE_NAMES = "ognlExcludedPackageNames"; - + @Deprecated public static final String ADDITIONAL_EXCLUDED_PATTERNS = "additionalExcludedPatterns"; + @Deprecated public static final String ADDITIONAL_ACCEPTED_PATTERNS = "additionalAcceptedPatterns"; - + @Deprecated public static final String OVERRIDE_EXCLUDED_PATTERNS = "overrideExcludedPatterns"; + @Deprecated public static final String OVERRIDE_ACCEPTED_PATTERNS = "overrideAcceptedPatterns"; } From 1df89792f93fa71f374eef8a2b1a72b43cc28eab Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Apr 2017 09:32:47 +0200 Subject: [PATCH 0075/2288] WW-4749 Drops writeIfCompleted and uses Boolean instead String --- .../views/freemarker/FreemarkerResult.java | 28 +++---------------- 1 file changed, 4 insertions(+), 24 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index 7ea7fe368f..4ff393deef 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -60,8 +60,7 @@ public class FreemarkerResult extends StrutsResultSupport { protected ObjectWrapper wrapper; protected FreemarkerManager freemarkerManager; private Writer writer; - private boolean writeIfCompleted = false; - private String useBufferedWriter; + private Boolean useBufferedWriter = null; /* * Struts results are constructed for each result execution @@ -145,12 +144,7 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO // Give subclasses a chance to hook into preprocessing if (preTemplateProcess(template, model)) { try { - final boolean willUseBufferedWriter; - if (useBufferedWriter != null) { - willUseBufferedWriter = isUseBufferedWriter(); - } else { - willUseBufferedWriter = isWriteIfCompleted() || template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; - } + final boolean willUseBufferedWriter = isUseBufferedWriter() || template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; // Process the template Writer writer = getWriter(); @@ -357,28 +351,14 @@ private boolean isInsideActionTag() { return (Boolean) ObjectUtils.defaultIfNull(attribute, Boolean.FALSE); } - /** - * @return true write to the stream only when template processing completed successfully (false by default) - */ - public boolean isWriteIfCompleted() { - return writeIfCompleted; - } - - /** - * @param writeIfCompleted Writes to the stream only when template processing completed successfully - */ - public void setWriteIfCompleted(boolean writeIfCompleted) { - this.writeIfCompleted = writeIfCompleted; - } - public boolean isUseBufferedWriter() { - return useBufferedWriter != null && Boolean.parseBoolean(useBufferedWriter); + return useBufferedWriter != null && useBufferedWriter; } /** * @param useBufferedWriter template is processed and flushed according to freemarker library policies */ - public void setUseBufferedWriter(String useBufferedWriter) { + public void setUseBufferedWriter(Boolean useBufferedWriter) { this.useBufferedWriter = useBufferedWriter; } } From bbcd9dc2514b286065a16657d58418aa9ef4be75 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Apr 2017 09:33:56 +0200 Subject: [PATCH 0076/2288] WW-4749 Uses ordinary boolean instead of Boolean --- .../apache/struts2/views/freemarker/FreemarkerResult.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index 4ff393deef..c9683b859d 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -60,7 +60,7 @@ public class FreemarkerResult extends StrutsResultSupport { protected ObjectWrapper wrapper; protected FreemarkerManager freemarkerManager; private Writer writer; - private Boolean useBufferedWriter = null; + private boolean useBufferedWriter = false; /* * Struts results are constructed for each result execution @@ -352,13 +352,13 @@ private boolean isInsideActionTag() { } public boolean isUseBufferedWriter() { - return useBufferedWriter != null && useBufferedWriter; + return useBufferedWriter; } /** * @param useBufferedWriter template is processed and flushed according to freemarker library policies */ - public void setUseBufferedWriter(Boolean useBufferedWriter) { + public void setUseBufferedWriter(boolean useBufferedWriter) { this.useBufferedWriter = useBufferedWriter; } } From 6dad53c5e316b3be2551a1bab47ee71b64ac3542 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Apr 2017 10:01:27 +0200 Subject: [PATCH 0077/2288] WW-4749 Fixes test --- .../apache/struts2/views/freemarker/FreeMarkerResultTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java b/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java index 060b927254..ec8ec055f4 100644 --- a/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java +++ b/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java @@ -70,7 +70,7 @@ public void testWriteIfCompleted() throws Exception { FreemarkerResult result = new FreemarkerResult(); result.setLocation("someFreeMarkerFile.ftl"); result.setFreemarkerManager(mgr); - result.setWriteIfCompleted(true); + result.setUseBufferedWriter(true); try { result.execute(invocation); From 3034b3a97050bcb24e34f39b203a960a0ddca93e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Apr 2017 13:00:09 +0200 Subject: [PATCH 0078/2288] WW-4749 Uses Boolean to allow define behaviour per result --- .../struts2/views/freemarker/FreemarkerResult.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index c9683b859d..b083796916 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -60,7 +60,7 @@ public class FreemarkerResult extends StrutsResultSupport { protected ObjectWrapper wrapper; protected FreemarkerManager freemarkerManager; private Writer writer; - private boolean useBufferedWriter = false; + private Boolean useBufferedWriter = null; /* * Struts results are constructed for each result execution @@ -144,7 +144,12 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO // Give subclasses a chance to hook into preprocessing if (preTemplateProcess(template, model)) { try { - final boolean willUseBufferedWriter = isUseBufferedWriter() || template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; + final boolean willUseBufferedWriter; + if (useBufferedWriter != null) { + willUseBufferedWriter = isUseBufferedWriter(); + } else { + willUseBufferedWriter = template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; + } // Process the template Writer writer = getWriter(); @@ -352,13 +357,13 @@ private boolean isInsideActionTag() { } public boolean isUseBufferedWriter() { - return useBufferedWriter; + return useBufferedWriter != null && useBufferedWriter; } /** * @param useBufferedWriter template is processed and flushed according to freemarker library policies */ - public void setUseBufferedWriter(boolean useBufferedWriter) { + public void setUseBufferedWriter(Boolean useBufferedWriter) { this.useBufferedWriter = useBufferedWriter; } } From 38a2ebb72abd90c74bd52d6a81e3a0d967965c7b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Apr 2017 13:14:30 +0200 Subject: [PATCH 0079/2288] WW-4749 Uses writeIfCompleted to keep backward compatibility --- .../views/freemarker/FreemarkerResult.java | 16 ++++++++-------- .../views/freemarker/FreeMarkerResultTest.java | 14 +------------- 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index b083796916..da631d9ff0 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -60,7 +60,7 @@ public class FreemarkerResult extends StrutsResultSupport { protected ObjectWrapper wrapper; protected FreemarkerManager freemarkerManager; private Writer writer; - private Boolean useBufferedWriter = null; + private Boolean writeIfCompleted = null; /* * Struts results are constructed for each result execution @@ -145,8 +145,8 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO if (preTemplateProcess(template, model)) { try { final boolean willUseBufferedWriter; - if (useBufferedWriter != null) { - willUseBufferedWriter = isUseBufferedWriter(); + if (writeIfCompleted != null) { + willUseBufferedWriter = isWriteIfCompleted(); } else { willUseBufferedWriter = template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; } @@ -356,14 +356,14 @@ private boolean isInsideActionTag() { return (Boolean) ObjectUtils.defaultIfNull(attribute, Boolean.FALSE); } - public boolean isUseBufferedWriter() { - return useBufferedWriter != null && useBufferedWriter; + public boolean isWriteIfCompleted() { + return writeIfCompleted != null && writeIfCompleted; } /** - * @param useBufferedWriter template is processed and flushed according to freemarker library policies + * @param writeIfCompleted template is processed and flushed according to freemarker library policies */ - public void setUseBufferedWriter(Boolean useBufferedWriter) { - this.useBufferedWriter = useBufferedWriter; + public void setWriteIfCompleted(Boolean writeIfCompleted) { + this.writeIfCompleted = writeIfCompleted; } } diff --git a/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java b/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java index ec8ec055f4..1d8cb8f8b6 100644 --- a/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java +++ b/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java @@ -22,32 +22,20 @@ package org.apache.struts2.views.freemarker; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.mock.MockActionInvocation; import com.opensymphony.xwork2.mock.MockActionProxy; -import com.opensymphony.xwork2.util.ClassLoaderUtil; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.fs.DefaultFileManagerFactory; -import freemarker.template.Configuration; -import freemarker.template.TemplateExceptionHandler; import org.apache.struts2.ServletActionContext; import org.apache.struts2.StrutsInternalTestCase; import org.apache.struts2.StrutsStatics; -import org.apache.struts2.dispatcher.Dispatcher; -import org.apache.struts2.dispatcher.mapper.ActionMapper; -import org.apache.struts2.dispatcher.mapper.ActionMapping; import org.apache.struts2.views.jsp.StrutsMockHttpServletResponse; import org.apache.struts2.views.jsp.StrutsMockServletContext; -import org.easymock.EasyMock; import org.springframework.mock.web.MockHttpServletRequest; -import javax.servlet.ServletContext; import java.io.File; import java.io.PrintWriter; import java.io.StringWriter; -import java.net.MalformedURLException; -import java.net.URISyntaxException; -import java.util.HashMap; import static org.apache.struts2.views.jsp.AbstractUITagTest.normalize; @@ -70,7 +58,7 @@ public void testWriteIfCompleted() throws Exception { FreemarkerResult result = new FreemarkerResult(); result.setLocation("someFreeMarkerFile.ftl"); result.setFreemarkerManager(mgr); - result.setUseBufferedWriter(true); + result.setWriteIfCompleted(true); try { result.execute(invocation); From c2f2de06ce3c5545878a3b421fdde3ca5495d3cc Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 30 Apr 2017 09:20:57 +0430 Subject: [PATCH 0080/2288] WW-4105 Unwraps Spring proxy in actions chain --- .../interceptor/ChainingInterceptor.java | 7 +- .../xwork2/spring/SpringUtils.java | 89 +++++++++++++++++++ .../com/opensymphony/xwork2/TestSubBean.java | 14 +++ .../xwork2/spring/ActionsFromSpringTest.java | 17 ++++ .../xwork2/spring/SpringUtilsTest.java | 84 +++++++++++++++++ .../xwork2/spring/actionContext-spring.xml | 26 +++++- .../xwork2/spring/actionContext-xwork.xml | 19 ++++ 7 files changed, 254 insertions(+), 2 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java create mode 100644 core/src/test/java/com/opensymphony/xwork2/TestSubBean.java create mode 100644 core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index 27a0f6861f..b90e2b6627 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -20,6 +20,7 @@ import com.opensymphony.xwork2.Result; import com.opensymphony.xwork2.Unchainable; import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.spring.SpringUtils; import com.opensymphony.xwork2.util.CompoundRoot; import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; @@ -161,7 +162,11 @@ private void copyStack(ActionInvocation invocation, CompoundRoot root) { Map ctxMap = invocation.getInvocationContext().getContextMap(); for (Object object : list) { if (shouldCopy(object)) { - reflectionProvider.copy(object, invocation.getAction(), ctxMap, prepareExcludes(), includes); + Object action = invocation.getAction(); + if(SpringUtils.isAopProxy(action)) { + action = SpringUtils.getUltimateTargetObject(action); + } + reflectionProvider.copy(object, action, ctxMap, prepareExcludes(), includes); } } } diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java new file mode 100644 index 0000000000..bb6584d242 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java @@ -0,0 +1,89 @@ +/* + * Copyright 2017 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.spring; + +import com.opensymphony.xwork2.util.ClassLoaderUtil; +import org.apache.commons.lang3.reflect.MethodUtils; + +import java.lang.reflect.Proxy; + +/** + * SpringUtils + *

+ * Various utility methods dealing with spring framework + *

+ * + */ +public class SpringUtils { + /** + * Get the ultimate target object of the supplied {@code candidate} + * object, unwrapping not only a top-level proxy but also any number of + * nested proxies. + *

If the supplied {@code candidate} is a Spring proxy, the ultimate target of all + * nested proxies will be returned; otherwise, the {@code candidate} + * will be returned as is. + * @param candidate the instance to check (potentially a Spring AOP proxy; + * never {@code null}) + * @return the target object or the {@code candidate} (never {@code null}) + * @throws IllegalStateException if an error occurs while unwrapping a proxy + */ + public static T getUltimateTargetObject(Object candidate) { + try { + if (isAopProxy(candidate) && + implementsInterface(candidate.getClass(), "org.springframework.aop.framework.Advised")) { + Object targetSource = MethodUtils.invokeMethod(candidate, "getTargetSource"); + Object target = MethodUtils.invokeMethod(targetSource, "getTarget"); + return getUltimateTargetObject(target); + } + } + catch (Throwable ex) { + throw new IllegalStateException("Failed to unwrap proxied object", ex); + } + return (T) candidate; + } + + /** + * Check whether the given object is a Spring proxy. + * @param object the object to check + */ + public static boolean isAopProxy(Object object) { + Class clazz = object.getClass(); + return (implementsInterface(clazz, "org.springframework.aop.SpringProxy") && + (Proxy.isProxyClass(clazz) || isCglibProxyClass(clazz))); + } + + /** + * Check whether the specified class is a CGLIB-generated class. + * @param clazz the class to check + */ + private static boolean isCglibProxyClass(Class clazz) { + return (clazz != null && clazz.getName().contains("$$")); + } + + /** + * Check whether the given class implements an interface with a given class name. + * @param clazz the class to check + * @param ifaceClassName the interface class name to check + */ + private static boolean implementsInterface(Class clazz, String ifaceClassName) { + try { + Class ifaceClass = ClassLoaderUtil.loadClass(ifaceClassName, SpringUtils.class); + return ifaceClass.isAssignableFrom(clazz); + } catch (ClassNotFoundException e) { + return false; + } + } +} diff --git a/core/src/test/java/com/opensymphony/xwork2/TestSubBean.java b/core/src/test/java/com/opensymphony/xwork2/TestSubBean.java new file mode 100644 index 0000000000..5006876c34 --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/TestSubBean.java @@ -0,0 +1,14 @@ +package com.opensymphony.xwork2; + +public class TestSubBean extends TestBean { + + private String issueId; + + public String getIssueId() { + return issueId; + } + + public void setIssueId(String issueId) { + this.issueId = issueId; + } +} diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java index fcb79a137d..4bbe42926c 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java @@ -77,4 +77,21 @@ public void testActionWithSpringResult() throws Exception { assertTrue(springResult.isInitialize()); assertNotNull(springResult.getStringParameter()); } + + public void testChainingProxiedActions() throws Exception { + ActionProxy proxy = actionProxyFactory.createActionProxy(null, "chainedAOPedTestBeanAction", + null, null); + + proxy.execute(); + + TestSubBean chaintoAOPedAction = (TestSubBean) appContext.getBean("pointcutted-test-sub-bean"); + TestSubBean aspectState = (TestSubBean) appContext.getBean("aspected-test-sub-bean"); + + assertEquals(1, chaintoAOPedAction.getCount()); //check if chain + assertEquals("WW-4105", chaintoAOPedAction.getName()); + assertNotNull(aspectState.getIssueId()); //and AOP proxied actions + assertNotNull(aspectState.getName()); + assertEquals(aspectState.getName(), aspectState.getIssueId()); + assertEquals("WW-4105", aspectState.getIssueId()); //work together without any problem + } } diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java new file mode 100644 index 0000000000..7a1e0d7b47 --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java @@ -0,0 +1,84 @@ +/* + * Copyright 2017 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.spring; + +import com.opensymphony.xwork2.*; +import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; +import org.springframework.context.ApplicationContext; + +/** + * Test various utility methods dealing with spring framework. + * + */ +public class SpringUtilsTest extends XWorkTestCase { + private ApplicationContext appContext; + + @Override public void setUp() throws Exception { + super.setUp(); + + // Set up XWork + XmlConfigurationProvider provider = new XmlConfigurationProvider("com/opensymphony/xwork2/spring/actionContext-xwork.xml"); + container.inject(provider); + loadConfigurationProviders(provider); + appContext = ((SpringObjectFactory)container.getInstance(ObjectFactory.class)).appContext; + } + + public void testIsAopProxy() throws Exception { + Object simpleAction = appContext.getBean("simple-action"); + assertFalse(SpringUtils.isAopProxy(simpleAction)); + + Object proxiedAction = appContext.getBean("proxied-action"); + assertTrue(SpringUtils.isAopProxy(proxiedAction)); + + Object autoProxiedAction = appContext.getBean("auto-proxied-action"); + assertTrue(SpringUtils.isAopProxy(autoProxiedAction)); + + Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); + assertTrue(SpringUtils.isAopProxy(pointcuttedTestBean)); + + Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); + assertTrue(SpringUtils.isAopProxy(pointcuttedTestSubBean)); + + Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); + assertFalse(SpringUtils.isAopProxy(aspectedTestSubBean)); + } + + public void testGetUltimateTargetObject() throws Exception { + Object simpleAction = appContext.getBean("simple-action"); + Object simpleActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(simpleAction); + assertEquals(simpleAction, simpleActionUltimateTargetObject); + + Object proxiedAction = appContext.getBean("proxied-action"); + Object proxiedActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(proxiedAction); + assertEquals(SimpleAction.class, proxiedActionUltimateTargetObject.getClass()); + + Object autoProxiedAction = appContext.getBean("auto-proxied-action"); + Object autoProxiedActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(autoProxiedAction); + assertEquals(SimpleAction.class, autoProxiedActionUltimateTargetObject.getClass()); + + Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); + Object pointcuttedTestBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(pointcuttedTestBean); + assertEquals(TestBean.class, pointcuttedTestBeanUltimateTargetObject.getClass()); + + Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); + Object pointcuttedTestSubBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(pointcuttedTestSubBean); + assertEquals(TestSubBean.class, pointcuttedTestSubBeanUltimateTargetObject.getClass()); + + Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); + Object aspectedTestSubBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(aspectedTestSubBean); + assertEquals(aspectedTestSubBean, aspectedTestSubBeanUltimateTargetObject); + } +} diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml index 02a4f33e3e..5c18f6ecae 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml @@ -1,8 +1,11 @@ + http://www.springframework.org/schema/beans/spring-beans.xsd + http://www.springframework.org/schema/aop + http://www.springframework.org/schema/aop/spring-aop.xsd"> @@ -40,4 +43,25 @@ + + + WW-4105 + 1 + + + WW-4105 + + + + + + + + + + diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml index 988956f2e7..0cacc8d1e6 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml @@ -6,8 +6,15 @@ + + + + + @@ -19,5 +26,17 @@ + + + + chaintoAOPedTestSubBeanAction + + + + + + From 0314ddcb5c8badb8c216735f318fe75ffe56d6b5 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 9 May 2017 10:33:35 +0200 Subject: [PATCH 0081/2288] WW-4795 Implements @LongRangeFieldValidator annotation --- ...otationValidationConfigurationBuilder.java | 52 +++++ .../annotations/LongRangeFieldValidator.java | 194 ++++++++++++++++++ .../validator/annotations/Validations.java | 4 + .../xwork2/validator/validators/default.xml | 1 + .../template/xhtml/form-close-validate.ftl | 2 +- .../validator/AnnotationValidationAction.java | 3 + ...ionValidationConfigurationBuilderTest.java | 15 +- core/src/test/resources/validators.xml | 2 + 8 files changed, 271 insertions(+), 2 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java index b2764cadea..f0f3e12b9b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java @@ -146,6 +146,14 @@ else if (a instanceof IntRangeFieldValidator) { result.add(temp); } } + // Process LongRangeFieldValidator + else if (a instanceof LongRangeFieldValidator) { + LongRangeFieldValidator v = (LongRangeFieldValidator) a; + ValidatorConfig temp = processLongRangeFieldValidatorAnnotation(v, fieldName, methodName); + if (temp != null) { + result.add(temp); + } + } // Process ShortRangeFieldValidator else if (a instanceof ShortRangeFieldValidator) { ShortRangeFieldValidator v = (ShortRangeFieldValidator) a; @@ -298,6 +306,15 @@ private void processValidationAnnotation(Annotation a, String fieldName, String } } } + LongRangeFieldValidator[] lrfv = validations.longRangeFields(); + if (irfv != null) { + for (LongRangeFieldValidator v : lrfv) { + ValidatorConfig temp = processLongRangeFieldValidatorAnnotation(v, fieldName, methodName); + if (temp != null) { + result.add(temp); + } + } + } RegexFieldValidator[] rfv = validations.regexFields(); if (rfv != null) { for (RegexFieldValidator v : rfv) { @@ -672,6 +689,41 @@ private ValidatorConfig processIntRangeFieldValidatorAnnotation(IntRangeFieldVal .build(); } + private ValidatorConfig processLongRangeFieldValidatorAnnotation(LongRangeFieldValidator v, String fieldName, String methodName) { + String validatorType = "long"; + + Map params = new HashMap<>(); + + if (fieldName != null) { + params.put("fieldName", fieldName); + } else if (StringUtils.isNotEmpty(v.fieldName())) { + params.put("fieldName", v.fieldName()); + } + + if (v.min() != null && v.min().length() > 0) { + params.put("min", v.min()); + } + if (v.max() != null && v.max().length() > 0) { + params.put("max", v.max()); + } + if (StringUtils.isNotEmpty(v.maxExpression())) { + params.put("maxExpression", v.maxExpression()); + } + if (StringUtils.isNotEmpty(v.minExpression())) { + params.put("minExpression", v.minExpression()); + } + + validatorFactory.lookupRegisteredValidatorType(validatorType); + return new ValidatorConfig.Builder(validatorType) + .addParams(params) + .addParam("methodName", methodName) + .shortCircuit(v.shortCircuit()) + .defaultMessage(v.message()) + .messageKey(v.key()) + .messageParams(v.messageParams()) + .build(); + } + private ValidatorConfig processShortRangeFieldValidatorAnnotation(ShortRangeFieldValidator v, String fieldName, String methodName) { String validatorType = "short"; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java new file mode 100644 index 0000000000..18861646c5 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java @@ -0,0 +1,194 @@ +/* + * 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.validator.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * + * This validator checks that a numeric field has a value within a specified range. + * If neither min nor max is set, nothing will be done. + * + * + *

Annotation usage:

+ * + * + *

The annotation must be applied at method level.

+ * + * + *

Annotation parameters:

+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Parameter Required Default Notes
messageyes field error message
keyno i18n key from language specific properties file.
messageParamsno Additional params to be used to customize message - will be evaluated against the Value Stack
fieldNameno  
shortCircuitnofalseIf this validator should be used as shortCircuit.
typeyesValidatorType.FIELDEnum value from ValidatorType. Either FIELD or SIMPLE can be used here.
min no   Integer property. The minimum the number must be.
minExpression no  OGNL expression used to obtain the minimum the number must be.
max no   Integer property. The maximum number can be. Can be an expression.!
maxExpression no  OGNL expression used to obtain the maximum number can be.
parsenofalseEnable parsing of min/max value.
+ * + *

If neither min nor max is set, nothing will be done.

+ * + *

The values for min and max must be inserted as String values so that "0" can be handled as a possible value.

+ * + * + *

Example code:

+ * + *
+ * 
+ * @LongRangeFieldValidator(message = "Default message", key = "i18n.key", shortCircuit = true, min = "0", max = "42")
+ *
+ * @LongRangeFieldValidator(message = "Default message", key = "i18n.key", shortCircuit = true, minExpression = "${minValue}", maxExpression = "${maxValue}")
+ * 
+ * 
+ * + * + * @author Rainer Hermanns + */ +@Target({ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface LongRangeFieldValidator { + + /** + * Long property. + * + * @return The minimum the number must be. + */ + String min() default ""; + + /** + * @return The minimum number can be defined as an expression + */ + String minExpression() default ""; + + /** + * Long property. + * + * @return The maximum number can be. + */ + String max() default ""; + + /** + * @return The maximum number can be defined as an expression + */ + String maxExpression() default ""; + + /** + * @return The default error message for this validator. + * NOTE: It is required to set a message, if you are not using the message key for 18n lookup! + */ + String message() default ""; + + /** + * @return The message key to lookup for i18n. + */ + String key() default ""; + + /** + * @return Additional params to be used to customize message - will be evaluated against the Value Stack + */ + String[] messageParams() default {}; + + /** + * @return The optional fieldName for SIMPLE validator types. + */ + String fieldName() default ""; + + /** + * If this is activated, the validator will be used as short-circuit. + * + * Adds the short-circuit='true' attribute value if true. + * + * @return true if validator will be used as short-circuit. Default is false. + */ + boolean shortCircuit() default false; + + /** + * @return The validation type for this field/method. + */ + ValidatorType type() default ValidatorType.FIELD; +} diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java index bdf5a75dc2..2b5c0b9569 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java @@ -129,6 +129,8 @@ * {@StringLengthFieldValidator(type = ValidatorType.SIMPLE, trim = true, minLength="10" , maxLength = "12", fieldName = "needstringlength", message = "You must enter a stringlength.")}, * intRangeFields = * { @IntRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = "intfield", min = "6", max = "10", message = "bar must be between ${min} and ${max}, current value is ${bar}.")}, + * longRangeFields = + * { @LongRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = "intfield", min = "6", max = "10", message = "bar must be between ${min} and ${max}, current value is ${bar}.")}, * shortRangeFields = * { @ShortRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = "shortfield", min = "1", max = "128", message = "bar must be between ${min} and ${max}, current value is ${bar}.")}, * dateRangeFields = @@ -173,6 +175,8 @@ IntRangeFieldValidator[] intRangeFields() default {}; + LongRangeFieldValidator[] longRangeFields() default {}; + RequiredFieldValidator[] requiredFields() default {}; RequiredStringValidator[] requiredStrings() default {}; diff --git a/core/src/main/resources/com/opensymphony/xwork2/validator/validators/default.xml b/core/src/main/resources/com/opensymphony/xwork2/validator/validators/default.xml index fa8e7429a0..ed7f2f8137 100644 --- a/core/src/main/resources/com/opensymphony/xwork2/validator/validators/default.xml +++ b/core/src/main/resources/com/opensymphony/xwork2/validator/validators/default.xml @@ -15,6 +15,7 @@ + diff --git a/core/src/main/resources/template/xhtml/form-close-validate.ftl b/core/src/main/resources/template/xhtml/form-close-validate.ftl index 3ffc3bf0bc..cc42cfa187 100644 --- a/core/src/main/resources/template/xhtml/form-close-validate.ftl +++ b/core/src/main/resources/template/xhtml/form-close-validate.ftl @@ -125,7 +125,7 @@ END SNIPPET: supported-validators errors = true; <#if validator.shortCircuit>continueValidation = false; } - <#elseif validator.validatorType = "int" || validator.validatorType = "short"> + <#elseif validator.validatorType = "int" || validator.validatorType = "short" || validator.validatorType = "long"> if (continueValidation && fieldValue !== null) { if (<#if validator.min??>parseInt(fieldValue) < ${validator.min?c}<#else>false || diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java index 9e95ddee0e..0bc44cd367 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationAction.java @@ -11,6 +11,7 @@ import com.opensymphony.xwork2.validator.annotations.ExpressionValidator; import com.opensymphony.xwork2.validator.annotations.FieldExpressionValidator; import com.opensymphony.xwork2.validator.annotations.IntRangeFieldValidator; +import com.opensymphony.xwork2.validator.annotations.LongRangeFieldValidator; import com.opensymphony.xwork2.validator.annotations.RegexFieldValidator; import com.opensymphony.xwork2.validator.annotations.RequiredFieldValidator; import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator; @@ -54,6 +55,8 @@ public class AnnotationValidationAction extends ActionSupport { messageParams = {"one", "two", "three"}, shortCircuit = true) @IntRangeFieldValidator(fieldName = "foo", key = "int.key", message = "Foo is out of range!", max = "10", min = "1", messageParams = {"one", "two", "three"}, shortCircuit = true) + @LongRangeFieldValidator(fieldName = "foo", key = "int.key", message = "Foo is out of range!", max = "10", min = "1", + messageParams = {"one", "two", "three"}, shortCircuit = true) @RequiredFieldValidator(fieldName = "foo", key = "required.key", message = "Foo is required!", messageParams = {"one", "two", "three"}, shortCircuit = true) @RequiredStringValidator(fieldName = "foo", key = "requiredstring.key", message = "Foo is required!", diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java index 1bc05648b4..5ac49ab71d 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilderTest.java @@ -24,6 +24,7 @@ import com.opensymphony.xwork2.validator.validators.ExpressionValidator; import com.opensymphony.xwork2.validator.validators.FieldExpressionValidator; import com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator; +import com.opensymphony.xwork2.validator.validators.LongRangeFieldValidator; import com.opensymphony.xwork2.validator.validators.RegexFieldValidator; import com.opensymphony.xwork2.validator.validators.RequiredFieldValidator; import com.opensymphony.xwork2.validator.validators.RequiredStringValidator; @@ -51,7 +52,7 @@ public void testValidationAnnotation() throws Exception { List validators = manager.getValidators(AnnotationValidationAction.class, null); // then - assertEquals(validators.size(), 17); + assertEquals(validators.size(), 18); for (Validator validator : validators) { validate(validator); } @@ -98,6 +99,8 @@ private void validate(Validator validator) throws Exception { validateFieldExpressionValidator((FieldExpressionValidator) validator); } else if (validator.getValidatorType().equals("int")) { validateIntRangeFieldValidator((IntRangeFieldValidator) validator); + } else if (validator.getValidatorType().equals("long")) { + validateLongRangeFieldValidator((LongRangeFieldValidator) validator); } else if (validator.getValidatorType().equals("required")) { validateRequiredFieldValidator((RequiredFieldValidator) validator); } else if (validator.getValidatorType().equals("requiredstring")) { @@ -178,6 +181,16 @@ private void validateIntRangeFieldValidator(IntRangeFieldValidator validator) { assertEquals(Integer.valueOf(1), validator.getMin()); } + private void validateLongRangeFieldValidator(LongRangeFieldValidator validator) { + assertEquals("foo", validator.getFieldName()); + assertEquals("int.key", validator.getMessageKey()); + assertEquals("Foo is out of range!", validator.getDefaultMessage()); + assertTrue(Arrays.equals(new String[]{"one", "two", "three"}, validator.getMessageParameters())); + assertEquals(true, validator.isShortCircuit()); + assertEquals(Long.valueOf(10), validator.getMax()); + assertEquals(Long.valueOf(1), validator.getMin()); + } + private void validateFieldExpressionValidator(FieldExpressionValidator validator) { assertEquals("foo", validator.getFieldName()); assertEquals("It is not true!", validator.getDefaultMessage()); diff --git a/core/src/test/resources/validators.xml b/core/src/test/resources/validators.xml index 5eff925d9c..96242beb29 100644 --- a/core/src/test/resources/validators.xml +++ b/core/src/test/resources/validators.xml @@ -6,6 +6,8 @@ + + From b842a4c779e45e1193e6319970c2dc6f52ec6bf1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 10 May 2017 10:08:48 +0200 Subject: [PATCH 0082/2288] WW-4749 Renames local variable to better express its meaning --- .../apache/struts2/views/freemarker/FreemarkerResult.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index da631d9ff0..c9130aceb3 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -144,16 +144,16 @@ public void doExecute(String locationArg, ActionInvocation invocation) throws IO // Give subclasses a chance to hook into preprocessing if (preTemplateProcess(template, model)) { try { - final boolean willUseBufferedWriter; + final boolean willWriteIfCompleted; if (writeIfCompleted != null) { - willUseBufferedWriter = isWriteIfCompleted(); + willWriteIfCompleted = isWriteIfCompleted(); } else { - willUseBufferedWriter = template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; + willWriteIfCompleted = template.getTemplateExceptionHandler() == TemplateExceptionHandler.RETHROW_HANDLER; } // Process the template Writer writer = getWriter(); - if (willUseBufferedWriter){ + if (willWriteIfCompleted){ CharArrayWriter parentCharArrayWriter = (CharArrayWriter) req.getAttribute(PARENT_TEMPLATE_WRITER); boolean isTopTemplate; if (isTopTemplate = (parentCharArrayWriter == null)) { From 7360b5e1956f415866c189d7adda861456d4d069 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 10 May 2017 13:59:20 +0200 Subject: [PATCH 0083/2288] WW-4762 Moves common method up --- .../util/AbstractLocalizedTextProvider.java | 19 +++++++++++++++++ .../util/StrutsLocalizedTextProvider.java | 21 ------------------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java index 8c377c17e2..1c11fece86 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -6,6 +6,7 @@ import org.apache.commons.lang3.ObjectUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.ParameterizedMessage; import org.apache.struts2.StrutsConstants; import java.lang.reflect.Field; @@ -20,6 +21,7 @@ import java.util.MissingResourceException; import java.util.ResourceBundle; import java.util.Set; +import java.util.StringTokenizer; import java.util.TreeSet; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; @@ -77,6 +79,23 @@ protected ClassLoader getCurrentThreadContextClassLoader() { return Thread.currentThread().getContextClassLoader(); } + @Inject(value = StrutsConstants.STRUTS_CUSTOM_I18N_RESOURCES, required = false) + public void setCustomI18NResources(String bundles) { + if (bundles != null && bundles.length() > 0) { + StringTokenizer customBundles = new StringTokenizer(bundles, ", "); + + while (customBundles.hasMoreTokens()) { + String name = customBundles.nextToken(); + try { + LOG.trace("Loading global messages from [{}]", name); + addDefaultResourceBundle(name); + } catch (Exception e) { + LOG.error(new ParameterizedMessage("Could not find messages file {}.properties. Skipping", name), e); + } + } + } + } + /** * Returns a localized message for the specified key, aTextName. Neither the key nor the * message is evaluated. diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 9552869321..0b9727901f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -25,19 +25,15 @@ 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.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.message.ParameterizedMessage; -import org.apache.struts2.StrutsConstants; import java.beans.PropertyDescriptor; import java.text.MessageFormat; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; -import java.util.StringTokenizer; /** * Provides support for localization in the framework, it can be used to read only default bundles, @@ -62,23 +58,6 @@ public StrutsLocalizedTextProvider() { addDefaultResourceBundle(STRUTS_MESSAGES_BUNDLE); } - @Inject(value = StrutsConstants.STRUTS_CUSTOM_I18N_RESOURCES, required = false) - public void setCustomI18NResources(String bundles) { - if (bundles != null && bundles.length() > 0) { - StringTokenizer customBundles = new StringTokenizer(bundles, ", "); - - while (customBundles.hasMoreTokens()) { - String name = customBundles.nextToken(); - try { - LOG.trace("Loading global messages from [{}]", name); - addDefaultResourceBundle(name); - } catch (Exception e) { - LOG.error(new ParameterizedMessage("Could not find messages file {}.properties. Skipping", name), e); - } - } - } - } - /** * Builds a {@link java.util.Locale} from a String of the form en_US_foo into a Locale * with language "en", country "US" and variant "foo". This will parse the output of From fd168c423f70383a6240cba9809a87b661ef39de Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 10 May 2017 14:12:39 +0200 Subject: [PATCH 0084/2288] WW-4762 Extracts common method --- .../util/AbstractLocalizedTextProvider.java | 59 +++++++++++++++++++ .../util/DefaultLocalizedTextProvider.java | 48 --------------- .../util/StrutsLocalizedTextProvider.java | 58 ------------------ 3 files changed, 59 insertions(+), 106 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java index 1c11fece86..fcef47e9e6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -148,6 +148,55 @@ public String findDefaultText(String aTextName, Locale locale, Object[] params) return null; } + + /** + *

+ * Finds a localized text message for the given key, aTextName, in the specified resource + * bundle. + *

+ * + *

+ * If a message is found, it will also be interpolated. Anything within ${...} + * will be treated as an OGNL expression and evaluated as such. + *

+ * + *

+ * If a message is not found a WARN log will be logged. + *

+ * + * @param bundle the bundle + * @param aTextName the key + * @param locale the locale + * @param defaultMessage the default message to use if no message was found in the bundle + * @param args arguments for the message formatter. + * @param valueStack the OGNL value stack. + * @return the localized text, or null if none can be found and no defaultMessage is provided + */ + @Override + public String findText(ResourceBundle bundle, String aTextName, Locale locale, String defaultMessage, Object[] args, + ValueStack valueStack) { + try { + reloadBundles(valueStack.getContext()); + + String message = TextParseUtil.translateVariables(bundle.getString(aTextName), valueStack); + MessageFormat mf = buildMessageFormat(message, locale); + + return formatWithNullDetection(mf, args); + } catch (MissingResourceException ex) { + if (devMode) { + LOG.warn("Missing key [{}] in bundle [{}]!", aTextName, bundle); + } else { + LOG.debug("Missing key [{}] in bundle [{}]!", aTextName, bundle); + } + } + + GetDefaultMessageReturnArg result = getDefaultMessage(aTextName, locale, valueStack, args, defaultMessage); + if (unableToFindTextForKey(result)) { + LOG.warn("Unable to find text for key '{}' in ResourceBundles for locale '{}'", aTextName, locale); + } + return result != null ? result.message : null; + } + /** * @param classLoader a {@link ClassLoader} to look up the bundle from if none can be found on the current thread's classloader */ @@ -320,6 +369,16 @@ public ResourceBundle findResourceBundle(String aBundleName, Locale locale) { } return bundle; } + + /** + * Clears all the internal lists. + * + * @deprecated used only in tests + */ + @Deprecated + public void reset() { + // no-op + } /** * Determines if we found the text in the bundles. 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 acd394351a..a709180a33 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java @@ -259,52 +259,4 @@ public String findText(ResourceBundle bundle, String aTextName, Locale locale, S return findText(bundle, aTextName, locale, defaultMessage, args, valueStack); } - /** - *

- * Finds a localized text message for the given key, aTextName, in the specified resource - * bundle. - *

- * - *

- * If a message is found, it will also be interpolated. Anything within ${...} - * will be treated as an OGNL expression and evaluated as such. - *

- * - *

- * If a message is not found a WARN log will be logged. - *

- * - * @param bundle the bundle - * @param aTextName the key - * @param locale the locale - * @param defaultMessage the default message to use if no message was found in the bundle - * @param args arguments for the message formatter. - * @param valueStack the OGNL value stack. - * @return the localized text, or null if none can be found and no defaultMessage is provided - */ - @Override - public String findText(ResourceBundle bundle, String aTextName, Locale locale, String defaultMessage, Object[] args, - ValueStack valueStack) { - try { - reloadBundles(valueStack.getContext()); - - String message = TextParseUtil.translateVariables(bundle.getString(aTextName), valueStack); - MessageFormat mf = buildMessageFormat(message, locale); - - return formatWithNullDetection(mf, args); - } catch (MissingResourceException ex) { - if (devMode) { - LOG.warn("Missing key [{}] in bundle [{}]!", aTextName, bundle); - } else { - LOG.debug("Missing key [{}] in bundle [{}]!", aTextName, bundle); - } - } - - GetDefaultMessageReturnArg result = getDefaultMessage(aTextName, locale, valueStack, args, defaultMessage); - if (unableToFindTextForKey(result)) { - LOG.warn("Unable to find text for key '{}' in ResourceBundles for locale '{}'", aTextName, locale); - } - return result != null ? result.message : null; - } - } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 0b9727901f..a31c4aed36 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -419,62 +419,4 @@ public String findText(ResourceBundle bundle, String aTextName, Locale locale, S return findText(bundle, aTextName, locale, defaultMessage, args, valueStack); } - /** - *

- * Finds a localized text message for the given key, aTextName, in the specified resource - * bundle. - *

- * - *

- * If a message is found, it will also be interpolated. Anything within ${...} - * will be treated as an OGNL expression and evaluated as such. - *

- * - *

- * If a message is not found a WARN log will be logged. - *

- * - * @param bundle the bundle - * @param aTextName the key - * @param locale the locale - * @param defaultMessage the default message to use if no message was found in the bundle - * @param args arguments for the message formatter. - * @param valueStack the OGNL value stack. - * @return the localized text, or null if none can be found and no defaultMessage is provided - */ - @Override - public String findText(ResourceBundle bundle, String aTextName, Locale locale, String defaultMessage, Object[] args, - ValueStack valueStack) { - try { - reloadBundles(valueStack.getContext()); - - String message = TextParseUtil.translateVariables(bundle.getString(aTextName), valueStack); - MessageFormat mf = buildMessageFormat(message, locale); - - return formatWithNullDetection(mf, args); - } catch (MissingResourceException ex) { - if (devMode) { - LOG.warn("Missing key [{}] in bundle [{}]!", aTextName, bundle); - } else { - LOG.debug("Missing key [{}] in bundle [{}]!", aTextName, bundle); - } - } - - GetDefaultMessageReturnArg result = getDefaultMessage(aTextName, locale, valueStack, args, defaultMessage); - if (unableToFindTextForKey(result)) { - LOG.warn("Unable to find text for key '{}' in ResourceBundles for locale '{}'", aTextName, locale); - } - return result != null ? result.message : null; - } - - /** - * Clears all the internal lists. - * - * @deprecated used only in tests - */ - @Deprecated - public void reset() { - // no-op - } - } From 4604333649a0060421c07cd5520c8285ca0c135f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 10 May 2017 15:48:35 +0200 Subject: [PATCH 0085/2288] WW-4762 Defines default-only bean --- core/src/main/resources/struts-default.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index ead2954005..bf2c1f72eb 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,8 +130,10 @@ - + + + From 9a8b4f4ebcb3787bef76198a7374bb5dcb69908e Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Thu, 11 May 2017 12:49:46 +0430 Subject: [PATCH 0086/2288] WW-4105 Removes SpringUtils to ProxyUtil --- .../interceptor/ChainingInterceptor.java | 6 ++-- .../SpringUtils.java => util/ProxyUtil.java} | 27 +++++++-------- ...tilsTest.java => SpringProxyUtilTest.java} | 33 ++++++++++--------- 3 files changed, 34 insertions(+), 32 deletions(-) rename core/src/main/java/com/opensymphony/xwork2/{spring/SpringUtils.java => util/ProxyUtil.java} (76%) rename core/src/test/java/com/opensymphony/xwork2/spring/{SpringUtilsTest.java => SpringProxyUtilTest.java} (66%) diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index b90e2b6627..59b1d8819b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -20,7 +20,7 @@ import com.opensymphony.xwork2.Result; import com.opensymphony.xwork2.Unchainable; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.spring.SpringUtils; +import com.opensymphony.xwork2.util.ProxyUtil; import com.opensymphony.xwork2.util.CompoundRoot; import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; @@ -163,8 +163,8 @@ private void copyStack(ActionInvocation invocation, CompoundRoot root) { for (Object object : list) { if (shouldCopy(object)) { Object action = invocation.getAction(); - if(SpringUtils.isAopProxy(action)) { - action = SpringUtils.getUltimateTargetObject(action); + if(ProxyUtil.isSpringAopProxy(action)) { + action = ProxyUtil.getSpringUltimateTargetObject(action); } reflectionProvider.copy(object, action, ctxMap, prepareExcludes(), includes); } diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java similarity index 76% rename from core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java rename to core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index bb6584d242..6a8ac53e0c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -13,21 +13,23 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.opensymphony.xwork2.spring; +package com.opensymphony.xwork2.util; -import com.opensymphony.xwork2.util.ClassLoaderUtil; import org.apache.commons.lang3.reflect.MethodUtils; import java.lang.reflect.Proxy; /** - * SpringUtils + * ProxyUtil *

- * Various utility methods dealing with spring framework + * Various utility methods dealing with proxies *

* */ -public class SpringUtils { +public class ProxyUtil { + private static final String SPRING_ADVISED_CLASS_NAME = "org.springframework.aop.framework.Advised"; + private static final String SPRING_SPRINGPROXY_CLASS_NAME = "org.springframework.aop.SpringProxy"; + /** * Get the ultimate target object of the supplied {@code candidate} * object, unwrapping not only a top-level proxy but also any number of @@ -40,13 +42,12 @@ public class SpringUtils { * @return the target object or the {@code candidate} (never {@code null}) * @throws IllegalStateException if an error occurs while unwrapping a proxy */ - public static T getUltimateTargetObject(Object candidate) { + public static T getSpringUltimateTargetObject(Object candidate) { try { - if (isAopProxy(candidate) && - implementsInterface(candidate.getClass(), "org.springframework.aop.framework.Advised")) { + if (isSpringAopProxy(candidate) && implementsInterface(candidate.getClass(), SPRING_ADVISED_CLASS_NAME)) { Object targetSource = MethodUtils.invokeMethod(candidate, "getTargetSource"); Object target = MethodUtils.invokeMethod(targetSource, "getTarget"); - return getUltimateTargetObject(target); + return getSpringUltimateTargetObject(target); } } catch (Throwable ex) { @@ -59,10 +60,10 @@ public static T getUltimateTargetObject(Object candidate) { * Check whether the given object is a Spring proxy. * @param object the object to check */ - public static boolean isAopProxy(Object object) { + public static boolean isSpringAopProxy(Object object) { Class clazz = object.getClass(); - return (implementsInterface(clazz, "org.springframework.aop.SpringProxy") && - (Proxy.isProxyClass(clazz) || isCglibProxyClass(clazz))); + return (implementsInterface(clazz, SPRING_SPRINGPROXY_CLASS_NAME) && (Proxy.isProxyClass(clazz) + || isCglibProxyClass(clazz))); } /** @@ -80,7 +81,7 @@ private static boolean isCglibProxyClass(Class clazz) { */ private static boolean implementsInterface(Class clazz, String ifaceClassName) { try { - Class ifaceClass = ClassLoaderUtil.loadClass(ifaceClassName, SpringUtils.class); + Class ifaceClass = ClassLoaderUtil.loadClass(ifaceClassName, ProxyUtil.class); return ifaceClass.isAssignableFrom(clazz); } catch (ClassNotFoundException e) { return false; diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java similarity index 66% rename from core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java rename to core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java index 7a1e0d7b47..9c047b842f 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/SpringUtilsTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java @@ -17,13 +17,14 @@ import com.opensymphony.xwork2.*; import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; +import com.opensymphony.xwork2.util.ProxyUtil; import org.springframework.context.ApplicationContext; /** - * Test various utility methods dealing with spring framework. + * Test various utility methods dealing with spring proxies. * */ -public class SpringUtilsTest extends XWorkTestCase { +public class SpringProxyUtilTest extends XWorkTestCase { private ApplicationContext appContext; @Override public void setUp() throws Exception { @@ -36,49 +37,49 @@ public class SpringUtilsTest extends XWorkTestCase { appContext = ((SpringObjectFactory)container.getInstance(ObjectFactory.class)).appContext; } - public void testIsAopProxy() throws Exception { + public void testIsSpringAopProxy() throws Exception { Object simpleAction = appContext.getBean("simple-action"); - assertFalse(SpringUtils.isAopProxy(simpleAction)); + assertFalse(ProxyUtil.isSpringAopProxy(simpleAction)); Object proxiedAction = appContext.getBean("proxied-action"); - assertTrue(SpringUtils.isAopProxy(proxiedAction)); + assertTrue(ProxyUtil.isSpringAopProxy(proxiedAction)); Object autoProxiedAction = appContext.getBean("auto-proxied-action"); - assertTrue(SpringUtils.isAopProxy(autoProxiedAction)); + assertTrue(ProxyUtil.isSpringAopProxy(autoProxiedAction)); Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); - assertTrue(SpringUtils.isAopProxy(pointcuttedTestBean)); + assertTrue(ProxyUtil.isSpringAopProxy(pointcuttedTestBean)); Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); - assertTrue(SpringUtils.isAopProxy(pointcuttedTestSubBean)); + assertTrue(ProxyUtil.isSpringAopProxy(pointcuttedTestSubBean)); Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); - assertFalse(SpringUtils.isAopProxy(aspectedTestSubBean)); + assertFalse(ProxyUtil.isSpringAopProxy(aspectedTestSubBean)); } - public void testGetUltimateTargetObject() throws Exception { + public void testGetSpringUltimateTargetObject() throws Exception { Object simpleAction = appContext.getBean("simple-action"); - Object simpleActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(simpleAction); + Object simpleActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(simpleAction); assertEquals(simpleAction, simpleActionUltimateTargetObject); Object proxiedAction = appContext.getBean("proxied-action"); - Object proxiedActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(proxiedAction); + Object proxiedActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(proxiedAction); assertEquals(SimpleAction.class, proxiedActionUltimateTargetObject.getClass()); Object autoProxiedAction = appContext.getBean("auto-proxied-action"); - Object autoProxiedActionUltimateTargetObject = SpringUtils.getUltimateTargetObject(autoProxiedAction); + Object autoProxiedActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(autoProxiedAction); assertEquals(SimpleAction.class, autoProxiedActionUltimateTargetObject.getClass()); Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); - Object pointcuttedTestBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(pointcuttedTestBean); + Object pointcuttedTestBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(pointcuttedTestBean); assertEquals(TestBean.class, pointcuttedTestBeanUltimateTargetObject.getClass()); Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); - Object pointcuttedTestSubBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(pointcuttedTestSubBean); + Object pointcuttedTestSubBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(pointcuttedTestSubBean); assertEquals(TestSubBean.class, pointcuttedTestSubBeanUltimateTargetObject.getClass()); Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); - Object aspectedTestSubBeanUltimateTargetObject = SpringUtils.getUltimateTargetObject(aspectedTestSubBean); + Object aspectedTestSubBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(aspectedTestSubBean); assertEquals(aspectedTestSubBean, aspectedTestSubBeanUltimateTargetObject); } } From 7fa41f1885cdde9487714c8170f090dc9d27c8ce Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 08:28:56 +0200 Subject: [PATCH 0087/2288] WW-4110 Marks AOP support as deprecated --- .../java/com/opensymphony/xwork2/spring/SpringObjectFactory.java | 1 + core/src/main/java/org/apache/struts2/StrutsConstants.java | 1 + 2 files changed, 2 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java index ebe08c206a..51a47518a2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java @@ -57,6 +57,7 @@ public class SpringObjectFactory extends ObjectFactory implements ApplicationCon * This is temporary solution, after validating can be removed * @since 2.3.18 */ + @Deprecated private boolean enableAopSupport = false; @Inject(value="applicationContextPath",required=false) diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index f9d9b24f4d..87902cc96d 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -159,6 +159,7 @@ public final class StrutsConstants { public static final String STRUTS_OBJECTFACTORY_SPRING_USE_CLASS_CACHE = "struts.objectFactory.spring.useClassCache"; /** Uses different logic to construct beans, see https://issues.apache.org/jira/browse/WW-4110 */ + @Deprecated public static final String STRUTS_OBJECTFACTORY_SPRING_ENABLE_AOP_SUPPORT = "struts.objectFactory.spring.enableAopSupport"; /** Whether or not XSLT templates should not be cached */ From 5a6c336947e0340ec88639b2e0f5feb3d3516f1d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 09:28:03 +0200 Subject: [PATCH 0088/2288] Uses proper package --- .../java/org/apache/struts2/interceptor/I18nInterceptor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java index 61a158c11a..bf528e510b 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java @@ -25,7 +25,7 @@ import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; -import org.apache.commons.lang.LocaleUtils; +import org.apache.commons.lang3.LocaleUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.message.ParameterizedMessage; From f874f9cde56f74c5161b17e645f779805c51a04b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 12:19:48 +0200 Subject: [PATCH 0089/2288] WW-4581 Uses proper logic to convert String to BigDecimal --- .../conversion/impl/NumberConverter.java | 40 +++++++++++++++++- .../conversion/impl/NumberConverterTest.java | 42 +++++++++++++++++++ 2 files changed, 81 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index ab6efc0c35..16bbd499e0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -1,20 +1,31 @@ package com.opensymphony.xwork2.conversion.impl; import com.opensymphony.xwork2.XWorkException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.ParameterizedMessage; import java.lang.reflect.Member; import java.math.BigDecimal; import java.math.BigInteger; +import java.math.RoundingMode; +import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; import java.text.NumberFormat; +import java.text.ParseException; import java.text.ParsePosition; +import java.util.Formatter; +import java.util.Locale; import java.util.Map; public class NumberConverter extends DefaultTypeConverter { + private static final Logger LOG = LogManager.getLogger(NumberConverter.class); + public Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType) { if (value instanceof String) { if (toType == BigDecimal.class) { - return new BigDecimal((String) value); + return convertToBigDecimal(context, value); } else if (toType == BigInteger.class) { return new BigInteger((String) value); } else if (toType.isPrimitive()) { @@ -59,6 +70,33 @@ public Object convertValue(Map context, Object target, Member me return super.convertValue(context, value, toType); } + protected Object convertToBigDecimal(Map context, Object value) { + Locale locale = getLocale(context); + String strValue = String.valueOf(value); + + NumberFormat format = NumberFormat.getNumberInstance(locale); + format.setGroupingUsed(true); + if (format instanceof DecimalFormat) { + ((DecimalFormat) format).setParseBigDecimal(true); + char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); + + // this is a hack as \160 isn't the same as " " (an empty space) + if (separator == 160) { + strValue = strValue.replaceAll(" ", ""); + } else { + strValue = strValue.replaceAll(String.valueOf(separator), ""); + } + } + + try { + LOG.info("Trying parse value {} with locale {}", strValue, locale); + return format.parse(strValue); + } catch (ParseException e) { + LOG.warn(new ParameterizedMessage("Cannot convert value {} to BigDecimal, trying with default converter", value, e)); + return super.convertValue(context, value, BigDecimal.class); + } + } + protected boolean isInRange(Number value, String stringValue, Class toType) { Number bigValue = null; Number lowerBound = null; diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java index 76be6e1113..ca87aae7bf 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java @@ -4,6 +4,8 @@ import com.opensymphony.xwork2.SimpleFooAction; import com.opensymphony.xwork2.XWorkTestCase; +import java.math.BigDecimal; +import java.math.BigInteger; import java.util.HashMap; import java.util.Locale; import java.util.Map; @@ -39,4 +41,44 @@ public void testStringToNumberConversionUS() throws Exception { // then assertEquals(1234, value); } + + public void testStringToBigDecimalConversionPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1234,4567", BigDecimal.class); + + // then + assertEquals(BigDecimal.valueOf(1234.4567), value); + } + + public void testStringToBigDecimalConversionWithDotsPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1 234,4", BigDecimal.class); + + // then + assertEquals(BigDecimal.valueOf(1234.4), value); + } + + public void testStringToBigDecimalConversionWithCommasEN() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("en", "US")); + + // when + Object value = converter.convertValue(context, null, null, null, "100,234.4", BigDecimal.class); + + // then + assertEquals(BigDecimal.valueOf(100234.4), value); + } + } From 266d78d32c786276f37ae701267f6719ea9f8a75 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 13:48:14 +0200 Subject: [PATCH 0090/2288] WW-3650 Supports double conversion for different locale --- .../conversion/impl/NumberConverter.java | 69 +++++++++++++++---- .../conversion/impl/NumberConverterTest.java | 27 ++++++++ .../conversion/impl/XWorkConverterTest.java | 24 +++---- 3 files changed, 94 insertions(+), 26 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index 16bbd499e0..c4a2a1de27 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -1,6 +1,7 @@ package com.opensymphony.xwork2.conversion.impl; import com.opensymphony.xwork2.XWorkException; +import com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.message.ParameterizedMessage; @@ -28,6 +29,8 @@ public Object convertValue(Map context, Object target, Member me return convertToBigDecimal(context, value); } else if (toType == BigInteger.class) { return new BigInteger((String) value); + } else if (toType == Double.class || toType == double.class) { + return convertToDouble(context, value); } else if (toType.isPrimitive()) { Object convertedValue = super.convertValue(context, value, toType); String stringValue = (String) value; @@ -74,27 +77,65 @@ protected Object convertToBigDecimal(Map context, Object value) Locale locale = getLocale(context); String strValue = String.valueOf(value); - NumberFormat format = NumberFormat.getNumberInstance(locale); - format.setGroupingUsed(true); + NumberFormat format = getNumberFormat(locale); if (format instanceof DecimalFormat) { ((DecimalFormat) format).setParseBigDecimal(true); char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); + strValue = normalize(strValue, separator); + } - // this is a hack as \160 isn't the same as " " (an empty space) - if (separator == 160) { - strValue = strValue.replaceAll(" ", ""); - } else { - strValue = strValue.replaceAll(String.valueOf(separator), ""); - } + LOG.debug("Trying to convert a value {} with locale {} to BigDecimal", strValue, locale); + ParsePosition parsePosition = new ParsePosition(0); + Number number = format.parse(strValue, parsePosition); + + if (parsePosition.getIndex() != strValue.length()) { + throw new XWorkException("Unparseable number: \"" + strValue + "\" at position " + parsePosition.getIndex()); } - try { - LOG.info("Trying parse value {} with locale {}", strValue, locale); - return format.parse(strValue); - } catch (ParseException e) { - LOG.warn(new ParameterizedMessage("Cannot convert value {} to BigDecimal, trying with default converter", value, e)); - return super.convertValue(context, value, BigDecimal.class); + return number; + } + + protected Object convertToDouble(Map context, Object value) { + Locale locale = getLocale(context); + String strValue = String.valueOf(value); + + NumberFormat format = getNumberFormat(locale); + if (format instanceof DecimalFormat) { + char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); + strValue = normalize(strValue, separator); + } + + LOG.debug("Trying to convert a value {} with locale {} to Double", strValue, locale); + ParsePosition parsePosition = new ParsePosition(0); + Number number = format.parse(strValue, parsePosition); + + if (parsePosition.getIndex() != strValue.length()) { + throw new XWorkException("Unparseable number: \"" + strValue + "\" at position " + parsePosition.getIndex()); + } + + if (!isInRange(number, strValue, Double.class)) { + throw new XWorkException("Overflow or underflow converting: \"" + strValue + "\" into class " + number.getClass().getName()); + } + + if (number != null) { + return number.doubleValue(); + } + + return null; + } + + protected NumberFormat getNumberFormat(Locale locale) { + NumberFormat format = NumberFormat.getNumberInstance(locale); + format.setGroupingUsed(true); + return format; + } + + protected String normalize(String strValue, char separator) { + // this is a hack as \160 isn't the same as " " (an empty space) + if (separator == 160) { + strValue = strValue.replaceAll(" ", String.valueOf(separator)); } + return strValue; } protected boolean isInRange(Number value, String stringValue, Class toType) { diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java index ca87aae7bf..8143b00dbc 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java @@ -81,4 +81,31 @@ public void testStringToBigDecimalConversionWithCommasEN() throws Exception { assertEquals(BigDecimal.valueOf(100234.4), value); } + public void testStringToDoubleConversionPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1234,4567", Double.class); + + // then + assertEquals(1234.4567, value); + } + + public void testStringToDoubleConversionWithDotsPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1 234,4", Double.class); + + // then + assertEquals(1234.4, value); + } + + } diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/XWorkConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/XWorkConverterTest.java index be964164b4..4607805231 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/XWorkConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/XWorkConverterTest.java @@ -519,30 +519,30 @@ public void testStringToInteger() { } public void testStringToPrimitiveDouble() { - assertEquals(new Double(123), converter.convertValue(context, null, null, null, "123", double.class)); + assertEquals(123d, converter.convertValue(context, null, null, null, "123", double.class)); context.put(ActionContext.LOCALE, Locale.US); - assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", double.class)); + assertEquals(123.12, converter.convertValue(context, null, null, null, "123.12", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", double.class)); - assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1.234", double.class)); + assertEquals(1234d, converter.convertValue(context, null, null, null, "1,234", double.class)); + assertEquals(1234.12, converter.convertValue(context, null, null, null, "1,234.12", double.class)); + assertEquals(123d, converter.convertValue(context, null, null, null, "1,23", double.class)); + assertEquals(1.234, converter.convertValue(context, null, null, null, "1.234", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", double.class)); context.put(ActionContext.LOCALE, Locale.GERMANY); - assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", double.class)); + assertEquals(12312d, converter.convertValue(context, null, null, null, "123.12", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", double.class)); + assertEquals(1.234, converter.convertValue(context, null, null, null, "1,234", double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", double.class)); - assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1.234", double.class)); - assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", double.class)); + assertEquals(1.23, converter.convertValue(context, null, null, null, "1,23", double.class)); + assertEquals(1234d, converter.convertValue(context, null, null, null, "1.234", double.class)); + assertEquals(1234.12, converter.convertValue(context, null, null, null, "1.234,12", double.class)); } public void testStringToDouble() { - assertEquals(new Double(123), converter.convertValue(context, null, null, null, "123", Double.class)); + assertEquals(123d, converter.convertValue(context, null, null, null, "123", Double.class)); context.put(ActionContext.LOCALE, Locale.US); assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", Double.class)); assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", Double.class)); From 20eced95008a9e08a20a59f287115ede00268897 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 14:40:20 +0200 Subject: [PATCH 0091/2288] WW-3171 Converts numbers to strings using locale --- .../conversion/impl/StringConverter.java | 67 +++++++++---------- 1 file changed, 33 insertions(+), 34 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 9c6cc8f185..5ffa18e3c2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -2,58 +2,47 @@ import org.apache.commons.lang3.StringUtils; +import java.lang.reflect.Array; import java.lang.reflect.Member; import java.text.DateFormat; +import java.text.Format; +import java.text.MessageFormat; +import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Collection; import java.util.Date; import java.util.List; +import java.util.Locale; import java.util.Map; public class StringConverter extends DefaultTypeConverter { @Override public Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType) { - String result = null; + String result; - if (value instanceof int[]) { - int[] x = (int[]) value; - List intArray = new ArrayList<>(x.length); + if (value.getClass().isArray()) { + int length = Array.getLength(value); + List converted = new ArrayList<>(length); - for (int aX : x) { - intArray.add(Integer.valueOf(aX)); + for (int i = 0; i < length; i++) { + Object o = Array.get(value, i); + converted.add(convertToString(getLocale(context), o)); } - result = StringUtils.join(intArray, ", "); - } else if (value instanceof long[]) { - long[] x = (long[]) value; - List longArray = new ArrayList<>(x.length); + result = StringUtils.join(converted, ", "); + } else if(value.getClass().isAssignableFrom(Collection.class)) { + Collection colValue = (Collection) value; + List converted = new ArrayList<>(colValue.hashCode()); - for (long aX : x) { - longArray.add(Long.valueOf(aX)); + for (Object o : colValue) { + converted.add(convertToString(getLocale(context), o)); } - result = StringUtils.join(longArray, ", "); - } else if (value instanceof double[]) { - double[] x = (double[]) value; - List doubleArray = new ArrayList<>(x.length); - - for (double aX : x) { - doubleArray.add(new Double(aX)); - } - - result = StringUtils.join(doubleArray, ", "); - } else if (value instanceof boolean[]) { - boolean[] x = (boolean[]) value; - List booleanArray = new ArrayList<>(x.length); - - for (boolean aX : x) { - booleanArray.add(new Boolean(aX)); - } - - result = StringUtils.join(booleanArray, ", "); + result = StringUtils.join(converted, ", "); } else if (value instanceof Date) { - DateFormat df = null; + DateFormat df; if (value instanceof java.sql.Time) { df = DateFormat.getTimeInstance(DateFormat.MEDIUM, getLocale(context)); } else if (value instanceof java.sql.Timestamp) { @@ -65,9 +54,19 @@ public Object convertValue(Map context, Object target, Member me df = DateFormat.getDateInstance(DateFormat.SHORT, getLocale(context)); } result = df.format(value); - } else if (value instanceof String[]) { - result = StringUtils.join((String[]) value, ", "); + } else { + result = convertToString(getLocale(context), value); } + return result; } + + protected String convertToString(Locale locale, Object value) { + if (value.getClass().isAssignableFrom(Number.class)) { + NumberFormat format = NumberFormat.getNumberInstance(locale); + return format.format(value); + } else { + return String.valueOf(value); + } + } } From 229afea64e77c2dba9eec62b2c339e9fc92c9ec7 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 15:58:54 +0200 Subject: [PATCH 0092/2288] WW-3171 Uses proper number of digits when formatting double --- .../conversion/impl/StringConverter.java | 10 ++-- .../conversion/impl/StringConverterTest.java | 52 +++++++++++++++++++ .../DoubleRangeFieldValidatorTest.java | 12 ++--- .../apache/struts2/views/jsp/ui/Select-3.txt | 4 +- 4 files changed, 67 insertions(+), 11 deletions(-) create mode 100644 core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 5ffa18e3c2..61d2516afb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -4,9 +4,8 @@ import java.lang.reflect.Array; import java.lang.reflect.Member; +import java.math.BigDecimal; import java.text.DateFormat; -import java.text.Format; -import java.text.MessageFormat; import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -62,11 +61,16 @@ public Object convertValue(Map context, Object target, Member me } protected String convertToString(Locale locale, Object value) { - if (value.getClass().isAssignableFrom(Number.class)) { + if (Number.class.isInstance(value)) { NumberFormat format = NumberFormat.getNumberInstance(locale); + format.setGroupingUsed(false); + if (Double.class.isInstance(value) || BigDecimal.class.isInstance(value)) { + format.setMinimumFractionDigits(1); + } return format.format(value); } else { return String.valueOf(value); } } + } diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java new file mode 100644 index 0000000000..c275669825 --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -0,0 +1,52 @@ +package com.opensymphony.xwork2.conversion.impl; + +import com.opensymphony.xwork2.ActionContext; +import org.apache.struts2.StrutsInternalTestCase; + +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.Locale; +import java.util.Map; + +public class StringConverterTest extends StrutsInternalTestCase { + + public void testIntegerToStringConversionPL() throws Exception { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, 234, null); + + // then + assertEquals("234", value); + } + + public void testDoubleToStringConversionPL() throws Exception { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, 234.12, null); + + // then + assertEquals("234,12", value); + } + + public void testBigDecimalToStringConversionPL() throws Exception { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, BigDecimal.valueOf(234.12), null); + + // then + assertEquals("234,12", value); + } + +} \ No newline at end of file diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java index 68b1a82d32..8969696c46 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DoubleRangeFieldValidatorTest.java @@ -36,7 +36,7 @@ public void testRangeValidationWithError() throws Exception { //Explicitly set an out-of-range double for DoubleRangeValidatorTest Map context = new HashMap<>(); HashMap params = new HashMap<>(); - params.put("percentage", 100.0123d); + params.put("percentage", 100.12); context.put(ActionContext.PARAMETERS, HttpParameters.create(params).build()); ActionProxy proxy = actionProxyFactory.createActionProxy("", MockConfigurationProvider.VALIDATION_ACTION_NAME, null, context); @@ -50,8 +50,8 @@ public void testRangeValidationWithError() throws Exception { assertEquals(1, errorMessages.size()); String errorMessage = errorMessages.get(0); - assertNotNull("Expecting: percentage must be between 0.1 and 10.1, current value is 100.0123.", errorMessage); - assertEquals("percentage must be between 0.1 and 10.1, current value is 100.0123.", errorMessage); + assertNotNull("Expecting: percentage must be between 0.1 and 10.1, current value is 100.12.", errorMessage); + assertEquals("percentage must be between 0.1 and 10.1, current value is 100.12.", errorMessage); } public void testRangeValidationNoError() throws Exception { @@ -192,7 +192,7 @@ public void testRangeValidationWithExpressionsFail() throws Exception { //Explicitly set an out-of-range double for DoubleRangeValidatorTest Map context = new HashMap<>(); HashMap params = new HashMap<>(); - params.put("percentage", 100.0123d); + params.put("percentage", 100.12); context.put(ActionContext.PARAMETERS, HttpParameters.create(params).build()); ActionProxy proxy = actionProxyFactory.createActionProxy("", MockConfigurationProvider.EXPRESSION_VALIDATION_ACTION, null, context); @@ -205,8 +205,8 @@ public void testRangeValidationWithExpressionsFail() throws Exception { assertEquals(1, errorMessages.size()); String errorMessage = errorMessages.get(0); - assertNotNull("Expecting: percentage must be between 0.1 and 10.1, current value is 100.0123.", errorMessage); - assertEquals("percentage must be between 0.1 and 10.1, current value is 100.0123.", errorMessage); + assertNotNull("Expecting: percentage must be between 0.1 and 10.1, current value is 100.12.", errorMessage); + assertEquals("percentage must be between 0.1 and 10.1, current value is 100.12.", errorMessage); } public void testExpressionParams() throws Exception { diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-3.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-3.txt index 91f11f6218..4ebbd30331 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-3.txt +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-3.txt @@ -1,8 +1,8 @@ From 45aae9cd8094eb9df6ca61b6c0c948756c6f5046 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 12 May 2017 16:36:30 +0200 Subject: [PATCH 0093/2288] Cleans up imports and simplifies if clause --- .../xwork2/conversion/impl/NumberConverter.java | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index c4a2a1de27..6e7d23114d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -1,21 +1,15 @@ package com.opensymphony.xwork2.conversion.impl; import com.opensymphony.xwork2.XWorkException; -import com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.message.ParameterizedMessage; import java.lang.reflect.Member; import java.math.BigDecimal; import java.math.BigInteger; -import java.math.RoundingMode; import java.text.DecimalFormat; -import java.text.DecimalFormatSymbols; import java.text.NumberFormat; -import java.text.ParseException; import java.text.ParsePosition; -import java.util.Formatter; import java.util.Locale; import java.util.Map; @@ -40,7 +34,7 @@ public Object convertValue(Map context, Object target, Member me return convertedValue; } else { String stringValue = (String) value; - if (!toType.isPrimitive() && (stringValue == null || stringValue.length() == 0)) { + if (!toType.isPrimitive() && stringValue.isEmpty()) { return null; } NumberFormat numFormat = NumberFormat.getInstance(getLocale(context)); @@ -182,7 +176,7 @@ protected boolean isInRange(Number value, String stringValue, Class toType) { return true; } - return ((Comparable)bigValue).compareTo(lowerBound) >= 0 && ((Comparable)bigValue).compareTo(upperBound) <= 0; + return ((Comparable) bigValue).compareTo(lowerBound) >= 0 && ((Comparable) bigValue).compareTo(upperBound) <= 0; } private boolean isIntegerType(Class type) { From 51afa631835ac603da7bce234aeff0b0154e6296 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 17 May 2017 07:18:22 +0200 Subject: [PATCH 0094/2288] Supports string to float conversion based on locale --- .../conversion/impl/NumberConverter.java | 71 +++++++++++++------ .../conversion/impl/NumberConverterTest.java | 26 +++++++ 2 files changed, 76 insertions(+), 21 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index 6e7d23114d..1fa2512fe6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -19,21 +19,24 @@ public class NumberConverter extends DefaultTypeConverter { public Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType) { if (value instanceof String) { + String stringValue = String.valueOf(value); + if (toType == BigDecimal.class) { - return convertToBigDecimal(context, value); + return convertToBigDecimal(context, stringValue); } else if (toType == BigInteger.class) { - return new BigInteger((String) value); + return new BigInteger(stringValue); } else if (toType == Double.class || toType == double.class) { - return convertToDouble(context, value); + return convertToDouble(context, stringValue); + } else if (toType == Float.class || toType == float.class) { + return convertToFloat(context, stringValue); } else if (toType.isPrimitive()) { Object convertedValue = super.convertValue(context, value, toType); - String stringValue = (String) value; + if (!isInRange((Number) convertedValue, stringValue, toType)) throw new XWorkException("Overflow or underflow casting: \"" + stringValue + "\" into class " + convertedValue.getClass().getName()); return convertedValue; } else { - String stringValue = (String) value; if (!toType.isPrimitive() && stringValue.isEmpty()) { return null; } @@ -67,48 +70,46 @@ public Object convertValue(Map context, Object target, Member me return super.convertValue(context, value, toType); } - protected Object convertToBigDecimal(Map context, Object value) { + protected Object convertToBigDecimal(Map context, String stringValue) { Locale locale = getLocale(context); - String strValue = String.valueOf(value); NumberFormat format = getNumberFormat(locale); if (format instanceof DecimalFormat) { ((DecimalFormat) format).setParseBigDecimal(true); char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); - strValue = normalize(strValue, separator); + stringValue = normalize(stringValue, separator); } - LOG.debug("Trying to convert a value {} with locale {} to BigDecimal", strValue, locale); + LOG.debug("Trying to convert a value {} with locale {} to BigDecimal", stringValue, locale); ParsePosition parsePosition = new ParsePosition(0); - Number number = format.parse(strValue, parsePosition); + Number number = format.parse(stringValue, parsePosition); - if (parsePosition.getIndex() != strValue.length()) { - throw new XWorkException("Unparseable number: \"" + strValue + "\" at position " + parsePosition.getIndex()); + if (parsePosition.getIndex() != stringValue.length()) { + throw new XWorkException("Unparseable number: \"" + stringValue + "\" at position " + parsePosition.getIndex()); } return number; } - protected Object convertToDouble(Map context, Object value) { + protected Object convertToDouble(Map context, String stringValue) { Locale locale = getLocale(context); - String strValue = String.valueOf(value); NumberFormat format = getNumberFormat(locale); if (format instanceof DecimalFormat) { char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); - strValue = normalize(strValue, separator); + stringValue = normalize(stringValue, separator); } - LOG.debug("Trying to convert a value {} with locale {} to Double", strValue, locale); + LOG.debug("Trying to convert a value {} with locale {} to Double", stringValue, locale); ParsePosition parsePosition = new ParsePosition(0); - Number number = format.parse(strValue, parsePosition); + Number number = format.parse(stringValue, parsePosition); - if (parsePosition.getIndex() != strValue.length()) { - throw new XWorkException("Unparseable number: \"" + strValue + "\" at position " + parsePosition.getIndex()); + if (parsePosition.getIndex() != stringValue.length()) { + throw new XWorkException("Unparseable number: \"" + stringValue + "\" at position " + parsePosition.getIndex()); } - if (!isInRange(number, strValue, Double.class)) { - throw new XWorkException("Overflow or underflow converting: \"" + strValue + "\" into class " + number.getClass().getName()); + if (!isInRange(number, stringValue, Double.class)) { + throw new XWorkException("Overflow or underflow converting: \"" + stringValue + "\" into class " + number.getClass().getName()); } if (number != null) { @@ -118,6 +119,34 @@ protected Object convertToDouble(Map context, Object value) { return null; } + protected Object convertToFloat(Map context, String stringValue) { + Locale locale = getLocale(context); + + NumberFormat format = getNumberFormat(locale); + if (format instanceof DecimalFormat) { + char separator = ((DecimalFormat) format).getDecimalFormatSymbols().getGroupingSeparator(); + stringValue = normalize(stringValue, separator); + } + + LOG.debug("Trying to convert a value {} with locale {} to Float", stringValue, locale); + ParsePosition parsePosition = new ParsePosition(0); + Number number = format.parse(stringValue, parsePosition); + + if (parsePosition.getIndex() != stringValue.length()) { + throw new XWorkException("Unparseable number: \"" + stringValue + "\" at position " + parsePosition.getIndex()); + } + + if (!isInRange(number, stringValue, Float.class)) { + throw new XWorkException("Overflow or underflow converting: \"" + stringValue + "\" into class " + number.getClass().getName()); + } + + if (number != null) { + return number.floatValue(); + } + + return null; + } + protected NumberFormat getNumberFormat(Locale locale) { NumberFormat format = NumberFormat.getNumberInstance(locale); format.setGroupingUsed(true); diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java index 8143b00dbc..4ffa684acf 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java @@ -107,5 +107,31 @@ public void testStringToDoubleConversionWithDotsPL() throws Exception { assertEquals(1234.4, value); } + public void testStringToFloatConversionPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1234,4567", Float.class); + + // then + assertEquals(1234.4567F, value); + } + + public void testStringToFloatConversionWithDotsPL() throws Exception { + // given + NumberConverter converter = new NumberConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, "1 234,4", Float.class); + + // then + assertEquals(1234.4F, value); + } + } From 3a9f86a605354c80ded30b3f47524dff1456d3a1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 18 May 2017 10:18:07 +0200 Subject: [PATCH 0095/2288] WW-4762 Uses global to better express the meaning --- ...TextProvider.java => GlobalLocalizedTextProvider.java} | 8 +++----- core/src/main/resources/struts-default.xml | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) rename core/src/main/java/com/opensymphony/xwork2/util/{DefaultLocalizedTextProvider.java => GlobalLocalizedTextProvider.java} (97%) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java similarity index 97% rename from core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java rename to core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java index a709180a33..dff5cbf290 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DefaultLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java @@ -26,20 +26,18 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import java.text.MessageFormat; import java.util.Locale; -import java.util.MissingResourceException; import java.util.ResourceBundle; /** * Provides support for localization in the framework, it can be used to read only default bundles, * or it can search the class hierarchy to find proper bundles. */ -public class DefaultLocalizedTextProvider extends AbstractLocalizedTextProvider { +public class GlobalLocalizedTextProvider extends AbstractLocalizedTextProvider { - private static final Logger LOG = LogManager.getLogger(DefaultLocalizedTextProvider.class); + private static final Logger LOG = LogManager.getLogger(GlobalLocalizedTextProvider.class); - public DefaultLocalizedTextProvider() { + public GlobalLocalizedTextProvider() { addDefaultResourceBundle(XWORK_MESSAGES_BUNDLE); addDefaultResourceBundle(STRUTS_MESSAGES_BUNDLE); } diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index bf2c1f72eb..e1b52667cd 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -130,7 +130,7 @@ - + From 8e9f9fb89ff84e3f383d0aef73443af919c271d7 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 29 May 2017 18:56:10 +0430 Subject: [PATCH 0096/2288] WW-4800 Executes aspects when chaining AOPed actions --- .../interceptor/ChainingInterceptor.java | 5 +- .../xwork2/ognl/OgnlReflectionProvider.java | 7 ++- .../opensymphony/xwork2/ognl/OgnlUtil.java | 25 +++++++- .../opensymphony/xwork2/util/ProxyUtil.java | 61 +++++++++++++------ .../util/reflection/ReflectionProvider.java | 18 +++++- .../xwork2/ognl/OgnlUtilTest.java | 26 ++++++++ .../xwork2/spring/ActionsFromSpringTest.java | 20 +++--- .../xwork2/spring/SpringProxyUtilTest.java | 32 +++++----- .../xwork2/spring/TestAspect.java | 46 ++++++++++++++ .../xwork2/spring/actionContext-spring.xml | 16 +++-- 10 files changed, 204 insertions(+), 52 deletions(-) create mode 100644 core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index 59b1d8819b..430edcc1ad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -163,10 +163,11 @@ private void copyStack(ActionInvocation invocation, CompoundRoot root) { for (Object object : list) { if (shouldCopy(object)) { Object action = invocation.getAction(); + Class editable = null; if(ProxyUtil.isSpringAopProxy(action)) { - action = ProxyUtil.getSpringUltimateTargetObject(action); + editable = ProxyUtil.springUltimateTargetClass(action); } - reflectionProvider.copy(object, action, ctxMap, prepareExcludes(), includes); + reflectionProvider.copy(object, action, ctxMap, prepareExcludes(), includes, editable); } } } diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java index 34f304343c..b1cd339709 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java @@ -70,7 +70,12 @@ public PropertyDescriptor getPropertyDescriptor(Class targetClass, public void copy(Object from, Object to, Map context, Collection exclusions, Collection inclusions) { - ognlUtil.copy(from, to, context, exclusions, inclusions); + copy(from, to, context, exclusions, inclusions, null); + } + + public void copy(Object from, Object to, Map context, + Collection exclusions, Collection inclusions, Class editable) { + ognlUtil.copy(from, to, context, exclusions, inclusions, editable); } public Object getRealTarget(String property, Map context, Object root) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index fe64d8f876..ced8eff9b1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -450,6 +450,24 @@ private void checkSimpleMethod(Object tree, Map context) throws * note if exclusions AND inclusions are supplied and not null nothing will get copied. */ public void copy(final Object from, final Object to, final Map context, Collection exclusions, Collection inclusions) { + copy(from, to, context, exclusions, inclusions, null); + } + + /** + * Copies the properties in the object "from" and sets them in the object "to" + * only setting properties defined in the given "editable" class (or interface) + * using specified type converter, or {@link com.opensymphony.xwork2.conversion.impl.XWorkConverter} if none + * is specified. + * + * @param from the source object + * @param to the target object + * @param context the action context we're running under + * @param exclusions collection of method names to excluded from copying ( can be null) + * @param inclusions collection of method names to included copying (can be null) + * note if exclusions AND inclusions are supplied and not null nothing will get copied. + * @param editable the class (or interface) to restrict property setting to + */ + public void copy(final Object from, final Object to, final Map context, Collection exclusions, Collection inclusions, Class editable) { if (from == null || to == null) { LOG.warn("Attempting to copy from or to a null source. This is illegal and is bein skipped. This may be due to an error in an OGNL expression, action chaining, or some other event."); return; @@ -466,7 +484,12 @@ public void copy(final Object from, final Object to, final Map c try { fromPds = getPropertyDescriptors(from); - toPds = getPropertyDescriptors(to); + if (editable != null) { + toPds = getPropertyDescriptors(editable); + } + else { + toPds = getPropertyDescriptors(to); + } } catch (IntrospectionException e) { LOG.error("An error occurred", e); return; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index 6a8ac53e0c..a3f8740548 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -29,31 +29,32 @@ public class ProxyUtil { private static final String SPRING_ADVISED_CLASS_NAME = "org.springframework.aop.framework.Advised"; private static final String SPRING_SPRINGPROXY_CLASS_NAME = "org.springframework.aop.SpringProxy"; + private static final String SPRING_SINGLETONTARGETSOURCE_CLASS_NAME = "org.springframework.aop.target.SingletonTargetSource"; + private static final String SPRING_TARGETCLASSAWARE_CLASS_NAME = "org.springframework.aop.TargetClassAware"; /** - * Get the ultimate target object of the supplied {@code candidate} - * object, unwrapping not only a top-level proxy but also any number of - * nested proxies. - *

If the supplied {@code candidate} is a Spring proxy, the ultimate target of all - * nested proxies will be returned; otherwise, the {@code candidate} - * will be returned as is. - * @param candidate the instance to check (potentially a Spring AOP proxy; - * never {@code null}) - * @return the target object or the {@code candidate} (never {@code null}) - * @throws IllegalStateException if an error occurs while unwrapping a proxy + * Determine the ultimate target class of the given spring bean instance, traversing + * not only a top-level spring proxy but any number of nested spring proxies as well — + * as long as possible without side effects, that is, just for singleton targets. + * @param candidate the instance to check (might be a spring AOP proxy) + * @return the ultimate target class (or the plain class of the given + * object as fallback; never {@code null}) */ - public static T getSpringUltimateTargetObject(Object candidate) { - try { - if (isSpringAopProxy(candidate) && implementsInterface(candidate.getClass(), SPRING_ADVISED_CLASS_NAME)) { - Object targetSource = MethodUtils.invokeMethod(candidate, "getTargetSource"); - Object target = MethodUtils.invokeMethod(targetSource, "getTarget"); - return getSpringUltimateTargetObject(target); + public static Class springUltimateTargetClass(Object candidate) { + Object current = candidate; + Class result = null; + while (null != current && implementsInterface(current.getClass(), SPRING_TARGETCLASSAWARE_CLASS_NAME)) { + try { + result = (Class) MethodUtils.invokeMethod(current, "getTargetClass"); + } catch (Throwable ignored) { } + current = getSingletonTarget(current); } - catch (Throwable ex) { - throw new IllegalStateException("Failed to unwrap proxied object", ex); + if (result == null) { + Class clazz = candidate.getClass(); + result = (isCglibProxyClass(clazz) ? clazz.getSuperclass() : candidate.getClass()); } - return (T) candidate; + return result; } /** @@ -66,6 +67,26 @@ public static boolean isSpringAopProxy(Object object) { || isCglibProxyClass(clazz))); } + /** + * Obtain the singleton target object behind the given spring proxy, if any. + * @param candidate the (potential) spring proxy to check + * @return the singleton target object, or {@code null} in any other case + * (not a spring proxy, not an existing singleton target) + */ + private static Object getSingletonTarget(Object candidate) { + try { + if (implementsInterface(candidate.getClass(), SPRING_ADVISED_CLASS_NAME)) { + Object targetSource = MethodUtils.invokeMethod(candidate, "getTargetSource"); + if (implementsInterface(targetSource.getClass(), SPRING_SINGLETONTARGETSOURCE_CLASS_NAME)) { + return MethodUtils.invokeMethod(targetSource, "getTarget"); + } + } + } catch (Throwable ignored) { + } + + return null; + } + /** * Check whether the specified class is a CGLIB-generated class. * @param clazz the class to check @@ -81,7 +102,7 @@ private static boolean isCglibProxyClass(Class clazz) { */ private static boolean implementsInterface(Class clazz, String ifaceClassName) { try { - Class ifaceClass = ClassLoaderUtil.loadClass(ifaceClassName, ProxyUtil.class); + Class ifaceClass = ClassLoaderUtil.loadClass(ifaceClassName, ProxyUtil.class); return ifaceClass.isAssignableFrom(clazz); } catch (ClassNotFoundException e) { return false; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java index 029163ee25..72211ec771 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java @@ -72,7 +72,23 @@ public interface ReflectionProvider { * note if exclusions AND inclusions are supplied and not null nothing will get copied. */ void copy(Object from, Object to, Map context, Collection exclusions, Collection inclusions); - + + /** + * Copies the properties in the object "from" and sets them in the object "to" + * only setting properties defined in the given "editable" class (or interface) + * using specified type converter, or {@link com.opensymphony.xwork2.conversion.impl.XWorkConverter} if none + * is specified. + * + * @param from the source object + * @param to the target object + * @param context the action context we're running under + * @param exclusions collection of method names to excluded from copying ( can be null) + * @param inclusions collection of method names to included copying (can be null) + * note if exclusions AND inclusions are supplied and not null nothing will get copied. + * @param editable the class (or interface) to restrict property setting to + */ + void copy(Object from, Object to, Map context, Collection exclusions, Collection inclusions, Class editable); + /** * Looks for the real target with the specified property given a root Object which may be a * CompoundRoot. diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java index a8bc7da83a..c0b0107225 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/OgnlUtilTest.java @@ -209,6 +209,32 @@ public void testIncudeExcludes() { } + public void testCopyEditable() { + Foo foo1 = new Foo(); + Foo foo2 = new Foo(); + + Map context = ognlUtil.createDefaultContext(foo1); + + Calendar cal = Calendar.getInstance(); + cal.clear(); + cal.set(Calendar.MONTH, Calendar.MAY); + cal.set(Calendar.DAY_OF_MONTH, 29); + cal.set(Calendar.YEAR, 2017); + + foo1.setTitle("blah"); + foo1.setNumber(1); + foo1.setPoints(new long[]{1, 2, 3}); + foo1.setBirthday(cal.getTime()); + foo1.setUseful(false); + + ognlUtil.copy(foo1, foo2, context, null, null, Bar.class); + + assertEquals(foo1.getTitle(), foo2.getTitle()); + assertEquals(0, foo2.getNumber()); + assertNull(foo2.getPoints()); + assertNull(foo2.getBirthday()); + } + public void testCopyUnevenObjects() { Foo foo = new Foo(); diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java index 4bbe42926c..f31a614048 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java @@ -84,14 +84,20 @@ public void testChainingProxiedActions() throws Exception { proxy.execute(); - TestSubBean chaintoAOPedAction = (TestSubBean) appContext.getBean("pointcutted-test-sub-bean"); - TestSubBean aspectState = (TestSubBean) appContext.getBean("aspected-test-sub-bean"); + // check if AOP works + TestAspect aspectState = (TestAspect) appContext.getBean("test-aspect"); + // chainedAction.actionMethodName sets name then chainedAction.getCount sets count + // then chaintoAction.setCount sets count2 then chainedAction.getName sets name again + // then chaintoAction.actionMethodName sets issueId of the aspect object. + assertEquals("setName(WW-4105)-setCount(1)-setCount2(1)-setName(WW-4105)-setIssueId(WW-4105)-", aspectState.log); + assertEquals(aspectState.getName(), aspectState.getIssueId()); + assertEquals("WW-4105", aspectState.getIssueId()); + assertEquals(aspectState.getCount(), aspectState.getCount2()); + assertEquals(1, aspectState.getCount()); - assertEquals(1, chaintoAOPedAction.getCount()); //check if chain + // check if chain works + TestSubBean chaintoAOPedAction = (TestSubBean) appContext.getBean("pointcutted-test-sub-bean"); + assertEquals(1, chaintoAOPedAction.getCount()); assertEquals("WW-4105", chaintoAOPedAction.getName()); - assertNotNull(aspectState.getIssueId()); //and AOP proxied actions - assertNotNull(aspectState.getName()); - assertEquals(aspectState.getName(), aspectState.getIssueId()); - assertEquals("WW-4105", aspectState.getIssueId()); //work together without any problem } } diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java index 9c047b842f..7ae98833ea 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java @@ -53,33 +53,33 @@ public void testIsSpringAopProxy() throws Exception { Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); assertTrue(ProxyUtil.isSpringAopProxy(pointcuttedTestSubBean)); - Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); - assertFalse(ProxyUtil.isSpringAopProxy(aspectedTestSubBean)); + Object testAspect = appContext.getBean("test-aspect"); + assertFalse(ProxyUtil.isSpringAopProxy(testAspect)); } - public void testGetSpringUltimateTargetObject() throws Exception { + public void testSpringUltimateTargetClass() throws Exception { Object simpleAction = appContext.getBean("simple-action"); - Object simpleActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(simpleAction); - assertEquals(simpleAction, simpleActionUltimateTargetObject); + Class simpleActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(simpleAction); + assertEquals(SimpleAction.class, simpleActionUltimateTargetClass); Object proxiedAction = appContext.getBean("proxied-action"); - Object proxiedActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(proxiedAction); - assertEquals(SimpleAction.class, proxiedActionUltimateTargetObject.getClass()); + Class proxiedActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(proxiedAction); + assertEquals(SimpleAction.class, proxiedActionUltimateTargetClass); Object autoProxiedAction = appContext.getBean("auto-proxied-action"); - Object autoProxiedActionUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(autoProxiedAction); - assertEquals(SimpleAction.class, autoProxiedActionUltimateTargetObject.getClass()); + Class autoProxiedActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(autoProxiedAction); + assertEquals(SimpleAction.class, autoProxiedActionUltimateTargetClass); Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); - Object pointcuttedTestBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(pointcuttedTestBean); - assertEquals(TestBean.class, pointcuttedTestBeanUltimateTargetObject.getClass()); + Class pointcuttedTestBeanUltimateTargetClass = ProxyUtil.springUltimateTargetClass(pointcuttedTestBean); + assertEquals(TestBean.class, pointcuttedTestBeanUltimateTargetClass); Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); - Object pointcuttedTestSubBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(pointcuttedTestSubBean); - assertEquals(TestSubBean.class, pointcuttedTestSubBeanUltimateTargetObject.getClass()); + Class pointcuttedTestSubBeanUltimateTargetClass = ProxyUtil.springUltimateTargetClass(pointcuttedTestSubBean); + assertEquals(TestSubBean.class, pointcuttedTestSubBeanUltimateTargetClass); - Object aspectedTestSubBean = appContext.getBean("aspected-test-sub-bean"); - Object aspectedTestSubBeanUltimateTargetObject = ProxyUtil.getSpringUltimateTargetObject(aspectedTestSubBean); - assertEquals(aspectedTestSubBean, aspectedTestSubBeanUltimateTargetObject); + Object testAspect = appContext.getBean("test-aspect"); + Class testAspectUltimateTargetClass = ProxyUtil.springUltimateTargetClass(testAspect); + assertEquals(TestAspect.class, testAspectUltimateTargetClass); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java b/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java new file mode 100644 index 0000000000..a428c6588e --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java @@ -0,0 +1,46 @@ +package com.opensymphony.xwork2.spring; + +public class TestAspect { + protected String log = ""; + + private String issueId; + private int count; + private String name; + private int count2; + + String getIssueId() { + return issueId; + } + + public void setIssueId(String issueId) { + log = log + "setIssueId(" + issueId + ")-"; + this.issueId = issueId; + } + + public int getCount() { + return count; + } + + public void setCount(int count) { + log = log + "setCount(" + count + ")-"; + this.count = count; + } + + public String getName() { + return name; + } + + public void setName(String name) { + log = log + "setName(" + name + ")-"; + this.name = name; + } + + int getCount2() { + return count2; + } + + public void setCount2(int count2) { + log = log + "setCount2(" + count2 + ")-"; + this.count2 = count2; + } +} diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml index 5c18f6ecae..078107e57a 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-spring.xml @@ -51,17 +51,25 @@ WW-4105 - + - + + method="setName" returning="name" /> + + + method="setIssueId" returning="issueId" /> + + From 46153e78da63c7da40d0dbd410de1e5f25b462ab Mon Sep 17 00:00:00 2001 From: gregh Date: Tue, 30 May 2017 15:02:23 +0100 Subject: [PATCH 0097/2288] WW-4801 Only one hidden field per checkboxlist. --- .../java/simple/CheckboxListHandler.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java index 3914b30742..9240938cd9 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java @@ -84,22 +84,22 @@ public void generate() throws IOException { characters(itemValueStr); super.end("label"); - // Hidden input section - a = new Attributes(); - a.add("type", "hidden") - .add("id", - "__multiselect_" - + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(id))) - .add("name", - "__multiselect_" - + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(name))) - .add("value", "").addIfTrue("disabled", disabled); - start("input", a); - end("input"); - stack.pop(); cnt++; } + + // Hidden input section + Attributes a = new Attributes(); + a.add("type", "hidden") + .add("id", + "__multiselect_" + + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(id))) + .add("name", + "__multiselect_" + + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(name))) + .add("value", "").addIfTrue("disabled", disabled); + start("input", a); + end("input"); } } From 843693fdd4e53347636872ab881c770e7cc3b6e0 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Mon, 5 Jun 2017 23:20:26 +0300 Subject: [PATCH 0098/2288] fix confusing debug message --- .../java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 530be65215..234fb5bd11 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -53,7 +53,7 @@ public boolean getAllowStaticMethodAccess() { @Override public boolean isAccessible(Map context, Object target, Member member, String propertyName) { - LOG.debug("Checking access for [target: {}, member: {}, property: {}] is deprecated!", target, member, propertyName); + LOG.debug("Checking access for [target: {}, member: {}, property: {}]", target, member, propertyName); if (checkEnumAccess(target, member)) { LOG.trace("Allowing access to enum: {}", target); From 2a8a6869d0d8ed5c9a4a49d036a5e3c6d837fada Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 13 Jun 2017 18:48:23 +0430 Subject: [PATCH 0099/2288] Blocks ognl access to class members of Spring proxy --- .../xwork2/ognl/SecurityMemberAccess.java | 28 +++++++++++++++++-- .../xwork2/spring/ActionsFromSpringTest.java | 27 ++++++++++++++++++ .../xwork2/spring/actionContext-xwork.xml | 6 +++- 3 files changed, 58 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 234fb5bd11..9b03881b25 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -15,12 +15,14 @@ */ package com.opensymphony.xwork2.ognl; +import com.opensymphony.xwork2.util.ProxyUtil; import ognl.DefaultMemberAccess; +import org.apache.commons.lang3.reflect.FieldUtils; +import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import java.lang.reflect.Member; -import java.lang.reflect.Modifier; +import java.lang.reflect.*; import java.util.Collections; import java.util.Map; import java.util.Set; @@ -85,6 +87,11 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return false; } + if (isProxyAccess(target, member)) { + LOG.warn("Access to proxy [{}] is blocked!", member); + return false; + } + boolean allow = true; if (!checkStaticMethodAccess(member)) { LOG.warn("Access to static [{}] is blocked!", member); @@ -100,6 +107,23 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return super.isAccessible(context, target, member, propertyName) && isAcceptableProperty(propertyName); } + protected boolean isProxyAccess(Object target, Member member) { + if (!ProxyUtil.isSpringAopProxy(target)) + return false; + Class clazz = ProxyUtil.springUltimateTargetClass(target); + if (member instanceof Method) { + return null == MethodUtils.getMatchingMethod(clazz, member.getName(), ((Method) member).getParameterTypes()); + } + if (member instanceof Field) { + return null == FieldUtils.getField(clazz, member.getName(), true); + } + if (member instanceof Constructor) { + return false; + } + + return true; + } + protected boolean checkStaticMethodAccess(Member member) { int modifiers = member.getModifiers(); if (Modifier.isStatic(modifiers)) { diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java index f31a614048..84d000cd20 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/ActionsFromSpringTest.java @@ -5,8 +5,13 @@ import com.opensymphony.xwork2.*; import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; +import org.apache.commons.lang3.reflect.MethodUtils; +import org.apache.struts2.dispatcher.HttpParameters; import org.springframework.context.ApplicationContext; +import java.util.HashMap; +import java.util.Map; + /** * Test loading actions from the Spring Application Context. * @@ -100,4 +105,26 @@ public void testChainingProxiedActions() throws Exception { assertEquals(1, chaintoAOPedAction.getCount()); assertEquals("WW-4105", chaintoAOPedAction.getName()); } + + public void testProxiedActionIsNotAccessible() throws Exception { + // given + Map params = new HashMap<>(); + params.put("exposeProxy", "true"); + params.put("issueId", "S2-047"); + + HashMap extraContext = new HashMap<>(); + extraContext.put(ActionContext.PARAMETERS, HttpParameters.create(params).build()); + + ActionProxy proxy = actionProxyFactory.createActionProxy(null, + "chaintoAOPedTestSubBeanAction", null, extraContext); + + // when + proxy.execute(); + Object action = proxy.getAction(); + + //then + assertEquals("S2-047", ((TestSubBean) action).getIssueId()); + assertFalse("proxied action is accessible!", + (boolean) MethodUtils.invokeMethod(action, "isExposeProxy")); + } } diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml index 0cacc8d1e6..4457d1500b 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml @@ -12,7 +12,9 @@ + class="com.opensymphony.xwork2.interceptor.ChainingInterceptor"/> + @@ -36,7 +38,9 @@ + + From 56f31bec42365c31788739a14c89343b9db65605 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 14 Jun 2017 15:35:29 +0430 Subject: [PATCH 0100/2288] Hides Spring concepts behind ProxyUtil --- .../interceptor/ChainingInterceptor.java | 4 +-- .../xwork2/ognl/SecurityMemberAccess.java | 4 +-- .../opensymphony/xwork2/util/ProxyUtil.java | 32 +++++++++++++++++-- .../xwork2/spring/SpringProxyUtilTest.java | 28 ++++++++-------- 4 files changed, 48 insertions(+), 20 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index 430edcc1ad..67f5939550 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -164,8 +164,8 @@ private void copyStack(ActionInvocation invocation, CompoundRoot root) { if (shouldCopy(object)) { Object action = invocation.getAction(); Class editable = null; - if(ProxyUtil.isSpringAopProxy(action)) { - editable = ProxyUtil.springUltimateTargetClass(action); + if(ProxyUtil.isProxy(action)) { + editable = ProxyUtil.ultimateTargetClass(action); } reflectionProvider.copy(object, action, ctxMap, prepareExcludes(), includes, editable); } diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 9b03881b25..02c53d8404 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -108,9 +108,9 @@ public boolean isAccessible(Map context, Object target, Member member, String pr } protected boolean isProxyAccess(Object target, Member member) { - if (!ProxyUtil.isSpringAopProxy(target)) + if (!ProxyUtil.isProxy(target)) return false; - Class clazz = ProxyUtil.springUltimateTargetClass(target); + Class clazz = ProxyUtil.ultimateTargetClass(target); if (member instanceof Method) { return null == MethodUtils.getMatchingMethod(clazz, member.getName(), ((Method) member).getParameterTypes()); } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index a3f8740548..afda508244 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -32,6 +32,34 @@ public class ProxyUtil { private static final String SPRING_SINGLETONTARGETSOURCE_CLASS_NAME = "org.springframework.aop.target.SingletonTargetSource"; private static final String SPRING_TARGETCLASSAWARE_CLASS_NAME = "org.springframework.aop.TargetClassAware"; + /** + * Determine the ultimate target class of the given instance, traversing + * not only a top-level proxy but any number of nested proxies as well — + * as long as possible without side effects. + * @param candidate the instance to check (might be a proxy) + * @return the ultimate target class (or the plain class of the given + * object as fallback; never {@code null}) + */ + public static Class ultimateTargetClass(Object candidate) { + Class result = null; + if (isSpringAopProxy(candidate)) + result = springUltimateTargetClass(candidate); + + if (result == null) { + result = candidate.getClass(); + } + + return result; + } + + /** + * Check whether the given object is a proxy. + * @param object the object to check + */ + public static boolean isProxy(Object object) { + return isSpringAopProxy(object); + } + /** * Determine the ultimate target class of the given spring bean instance, traversing * not only a top-level spring proxy but any number of nested spring proxies as well — @@ -40,7 +68,7 @@ public class ProxyUtil { * @return the ultimate target class (or the plain class of the given * object as fallback; never {@code null}) */ - public static Class springUltimateTargetClass(Object candidate) { + private static Class springUltimateTargetClass(Object candidate) { Object current = candidate; Class result = null; while (null != current && implementsInterface(current.getClass(), SPRING_TARGETCLASSAWARE_CLASS_NAME)) { @@ -61,7 +89,7 @@ public static Class springUltimateTargetClass(Object candidate) { * Check whether the given object is a Spring proxy. * @param object the object to check */ - public static boolean isSpringAopProxy(Object object) { + private static boolean isSpringAopProxy(Object object) { Class clazz = object.getClass(); return (implementsInterface(clazz, SPRING_SPRINGPROXY_CLASS_NAME) && (Proxy.isProxyClass(clazz) || isCglibProxyClass(clazz))); diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java index 7ae98833ea..106e62d4af 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java @@ -37,49 +37,49 @@ public class SpringProxyUtilTest extends XWorkTestCase { appContext = ((SpringObjectFactory)container.getInstance(ObjectFactory.class)).appContext; } - public void testIsSpringAopProxy() throws Exception { + public void testIsProxy() throws Exception { Object simpleAction = appContext.getBean("simple-action"); - assertFalse(ProxyUtil.isSpringAopProxy(simpleAction)); + assertFalse(ProxyUtil.isProxy(simpleAction)); Object proxiedAction = appContext.getBean("proxied-action"); - assertTrue(ProxyUtil.isSpringAopProxy(proxiedAction)); + assertTrue(ProxyUtil.isProxy(proxiedAction)); Object autoProxiedAction = appContext.getBean("auto-proxied-action"); - assertTrue(ProxyUtil.isSpringAopProxy(autoProxiedAction)); + assertTrue(ProxyUtil.isProxy(autoProxiedAction)); Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); - assertTrue(ProxyUtil.isSpringAopProxy(pointcuttedTestBean)); + assertTrue(ProxyUtil.isProxy(pointcuttedTestBean)); Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); - assertTrue(ProxyUtil.isSpringAopProxy(pointcuttedTestSubBean)); + assertTrue(ProxyUtil.isProxy(pointcuttedTestSubBean)); Object testAspect = appContext.getBean("test-aspect"); - assertFalse(ProxyUtil.isSpringAopProxy(testAspect)); + assertFalse(ProxyUtil.isProxy(testAspect)); } - public void testSpringUltimateTargetClass() throws Exception { + public void testUltimateTargetClass() throws Exception { Object simpleAction = appContext.getBean("simple-action"); - Class simpleActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(simpleAction); + Class simpleActionUltimateTargetClass = ProxyUtil.ultimateTargetClass(simpleAction); assertEquals(SimpleAction.class, simpleActionUltimateTargetClass); Object proxiedAction = appContext.getBean("proxied-action"); - Class proxiedActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(proxiedAction); + Class proxiedActionUltimateTargetClass = ProxyUtil.ultimateTargetClass(proxiedAction); assertEquals(SimpleAction.class, proxiedActionUltimateTargetClass); Object autoProxiedAction = appContext.getBean("auto-proxied-action"); - Class autoProxiedActionUltimateTargetClass = ProxyUtil.springUltimateTargetClass(autoProxiedAction); + Class autoProxiedActionUltimateTargetClass = ProxyUtil.ultimateTargetClass(autoProxiedAction); assertEquals(SimpleAction.class, autoProxiedActionUltimateTargetClass); Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); - Class pointcuttedTestBeanUltimateTargetClass = ProxyUtil.springUltimateTargetClass(pointcuttedTestBean); + Class pointcuttedTestBeanUltimateTargetClass = ProxyUtil.ultimateTargetClass(pointcuttedTestBean); assertEquals(TestBean.class, pointcuttedTestBeanUltimateTargetClass); Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); - Class pointcuttedTestSubBeanUltimateTargetClass = ProxyUtil.springUltimateTargetClass(pointcuttedTestSubBean); + Class pointcuttedTestSubBeanUltimateTargetClass = ProxyUtil.ultimateTargetClass(pointcuttedTestSubBean); assertEquals(TestSubBean.class, pointcuttedTestSubBeanUltimateTargetClass); Object testAspect = appContext.getBean("test-aspect"); - Class testAspectUltimateTargetClass = ProxyUtil.springUltimateTargetClass(testAspect); + Class testAspectUltimateTargetClass = ProxyUtil.ultimateTargetClass(testAspect); assertEquals(TestAspect.class, testAspectUltimateTargetClass); } } From 7987c38d5a65700501eddd1fb0cb1a288921ecd2 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 14 Jun 2017 18:14:19 +0430 Subject: [PATCH 0101/2288] Improves two previous commit, by performance and bug safety --- .../xwork2/ognl/SecurityMemberAccess.java | 21 +------ .../opensymphony/xwork2/util/ProxyUtil.java | 56 ++++++++++++++++++- .../xwork2/spring/SpringProxyUtilTest.java | 26 +++++++++ .../xwork2/spring/TestAspect.java | 5 ++ 4 files changed, 87 insertions(+), 21 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 02c53d8404..cce09cbacb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -17,8 +17,6 @@ import com.opensymphony.xwork2.util.ProxyUtil; import ognl.DefaultMemberAccess; -import org.apache.commons.lang3.reflect.FieldUtils; -import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -87,7 +85,7 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return false; } - if (isProxyAccess(target, member)) { + if (ProxyUtil.isProxyMember(member, target)) { LOG.warn("Access to proxy [{}] is blocked!", member); return false; } @@ -107,23 +105,6 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return super.isAccessible(context, target, member, propertyName) && isAcceptableProperty(propertyName); } - protected boolean isProxyAccess(Object target, Member member) { - if (!ProxyUtil.isProxy(target)) - return false; - Class clazz = ProxyUtil.ultimateTargetClass(target); - if (member instanceof Method) { - return null == MethodUtils.getMatchingMethod(clazz, member.getName(), ((Method) member).getParameterTypes()); - } - if (member instanceof Field) { - return null == FieldUtils.getField(clazz, member.getName(), true); - } - if (member instanceof Constructor) { - return false; - } - - return true; - } - protected boolean checkStaticMethodAccess(Member member) { int modifiers = member.getModifiers(); if (Modifier.isStatic(modifiers)) { diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index afda508244..83e727cd31 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -15,9 +15,11 @@ */ package com.opensymphony.xwork2.util; +import org.apache.commons.lang3.reflect.ConstructorUtils; +import org.apache.commons.lang3.reflect.FieldUtils; import org.apache.commons.lang3.reflect.MethodUtils; -import java.lang.reflect.Proxy; +import java.lang.reflect.*; /** * ProxyUtil @@ -60,6 +62,18 @@ public static boolean isProxy(Object object) { return isSpringAopProxy(object); } + /** + * Check whether the given member is a proxy member of a proxy object. + * @param member the member to check + * @param object the object to check + */ + public static boolean isProxyMember(Member member, Object object) { + if (!isProxy(object)) + return false; + + return isSpringProxyMember(member); + } + /** * Determine the ultimate target class of the given spring bean instance, traversing * not only a top-level spring proxy but any number of nested spring proxies as well — @@ -95,6 +109,27 @@ private static boolean isSpringAopProxy(Object object) { || isCglibProxyClass(clazz))); } + /** + * Check whether the given member is a member of a spring proxy. + * @param member the member to check + */ + private static boolean isSpringProxyMember(Member member) { + try { + Class clazz = ClassLoaderUtil.loadClass(SPRING_ADVISED_CLASS_NAME, ProxyUtil.class); + if (hasMember(clazz, member)) + return true; + clazz = ClassLoaderUtil.loadClass(SPRING_TARGETCLASSAWARE_CLASS_NAME, ProxyUtil.class); + if (hasMember(clazz, member)) + return true; + clazz = ClassLoaderUtil.loadClass(SPRING_SPRINGPROXY_CLASS_NAME, ProxyUtil.class); + if (hasMember(clazz, member)) + return true; + } catch (ClassNotFoundException ignored) { + } + + return false; + } + /** * Obtain the singleton target object behind the given spring proxy, if any. * @param candidate the (potential) spring proxy to check @@ -136,4 +171,23 @@ private static boolean implementsInterface(Class clazz, String ifaceClassName return false; } } + + /** + * Check whether the given class has a given member. + * @param clazz the class to check + * @param member the member to check + */ + private static boolean hasMember(Class clazz, Member member) { + if (member instanceof Method) { + return null != MethodUtils.getMatchingMethod(clazz, member.getName(), ((Method) member).getParameterTypes()); + } + if (member instanceof Field) { + return null != FieldUtils.getField(clazz, member.getName(), true); + } + if (member instanceof Constructor) { + return null != ConstructorUtils.getMatchingAccessibleConstructor(clazz, ((Constructor) member).getParameterTypes()); + } + + return false; + } } diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java index 106e62d4af..42aee89dee 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringProxyUtilTest.java @@ -82,4 +82,30 @@ public void testUltimateTargetClass() throws Exception { Class testAspectUltimateTargetClass = ProxyUtil.ultimateTargetClass(testAspect); assertEquals(TestAspect.class, testAspectUltimateTargetClass); } + + public void testIsProxyMember() throws Exception { + Object simpleAction = appContext.getBean("simple-action"); + assertFalse(ProxyUtil.isProxyMember( + simpleAction.getClass().getMethod("setName", String.class), simpleAction)); + + Object proxiedAction = appContext.getBean("proxied-action"); + assertTrue(ProxyUtil.isProxyMember( + proxiedAction.getClass().getMethod("setExposeProxy", boolean.class), proxiedAction)); + + Object autoProxiedAction = appContext.getBean("auto-proxied-action"); + assertTrue(ProxyUtil.isProxyMember( + autoProxiedAction.getClass().getMethod("getTargetClass"), autoProxiedAction)); + + Object pointcuttedTestBean = appContext.getBean("pointcutted-test-bean"); + assertTrue(ProxyUtil.isProxyMember( + pointcuttedTestBean.getClass().getMethod("getTargetSource"), pointcuttedTestBean)); + + Object pointcuttedTestSubBean = appContext.getBean("pointcutted-test-sub-bean"); + assertFalse(ProxyUtil.isProxyMember( + pointcuttedTestSubBean.getClass().getConstructor(), pointcuttedTestSubBean)); + + Object testAspect = appContext.getBean("test-aspect"); + assertFalse(ProxyUtil.isProxyMember( + testAspect.getClass().getMethod("setExposeProxy", boolean.class), testAspect)); + } } diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java b/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java index a428c6588e..ef2ec7c276 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/TestAspect.java @@ -7,6 +7,7 @@ public class TestAspect { private int count; private String name; private int count2; + private boolean exposeProxy; String getIssueId() { return issueId; @@ -43,4 +44,8 @@ public void setCount2(int count2) { log = log + "setCount2(" + count2 + ")-"; this.count2 = count2; } + + public void setExposeProxy(boolean exposeProxy) { + this.exposeProxy = exposeProxy; + } } From 64788152910a84e7755a8302896a1fa2d5ecef7d Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 18 Jun 2017 13:15:53 +0430 Subject: [PATCH 0102/2288] WW-4805 Improves ProxyUtil performance via caching --- .../opensymphony/xwork2/util/ProxyUtil.java | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index 83e727cd31..b275bad531 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -20,6 +20,8 @@ import org.apache.commons.lang3.reflect.MethodUtils; import java.lang.reflect.*; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; /** * ProxyUtil @@ -34,6 +36,11 @@ public class ProxyUtil { private static final String SPRING_SINGLETONTARGETSOURCE_CLASS_NAME = "org.springframework.aop.target.SingletonTargetSource"; private static final String SPRING_TARGETCLASSAWARE_CLASS_NAME = "org.springframework.aop.TargetClassAware"; + private static final Map, Boolean> isProxyCache = + new ConcurrentHashMap<>(256); + private static final Map isProxyMemberCache = + new ConcurrentHashMap<>(256); + /** * Determine the ultimate target class of the given instance, traversing * not only a top-level proxy but any number of nested proxies as well — @@ -59,7 +66,16 @@ public static Class ultimateTargetClass(Object candidate) { * @param object the object to check */ public static boolean isProxy(Object object) { - return isSpringAopProxy(object); + Class clazz = object.getClass(); + Boolean flag = isProxyCache.get(clazz); + if (flag != null) { + return flag; + } + + boolean isProxy = isSpringAopProxy(object); + + isProxyCache.put(clazz, isProxy); + return isProxy; } /** @@ -71,7 +87,15 @@ public static boolean isProxyMember(Member member, Object object) { if (!isProxy(object)) return false; - return isSpringProxyMember(member); + Boolean flag = isProxyMemberCache.get(member); + if (flag != null) { + return flag; + } + + boolean isProxyMember = isSpringProxyMember(member); + + isProxyMemberCache.put(member, isProxyMember); + return isProxyMember; } /** From 216c52095ecabbe87ff4c121d7602ec35ce65123 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 18 Jun 2017 11:07:25 +0200 Subject: [PATCH 0103/2288] Cleans up code --- .../apache/struts2/tiles/StrutsTilesAnnotationProcessor.java | 4 ++-- .../org/apache/struts2/tiles/StrutsTilesLocaleResolver.java | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesAnnotationProcessor.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesAnnotationProcessor.java index fa5f7352f0..e36b75d16c 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesAnnotationProcessor.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesAnnotationProcessor.java @@ -54,14 +54,14 @@ public class StrutsTilesAnnotationProcessor { * @return {@link TilesDefinition} */ public TilesDefinition findAnnotation(Object action, String tileName) { - Class clazz = action.getClass(); + Class clazz = action.getClass(); TilesDefinition tilesDefinition = clazz.getAnnotation(TilesDefinition.class); TilesDefinitions tilesDefinitions = clazz.getAnnotation(TilesDefinitions.class); if (tilesDefinition == null && tilesDefinitions != null) { if (!StringUtils.isEmpty(tileName)) { for (TilesDefinition i : tilesDefinitions.value()) { - if (i.name() != null && i.name().equals(tileName)) { + if (i.name().equals(tileName)) { tilesDefinition = i; break; } diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java index e75cd48411..90b9fa002e 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java @@ -20,7 +20,6 @@ package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.config.ConfigurationException; import org.apache.logging.log4j.LogManager; From 93dba5bce22e9e7e539e3e631166d6510efca023 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 18 Jun 2017 11:11:11 +0200 Subject: [PATCH 0104/2288] WW-4758 Uses ObjectFactory to create Tiles' ViewPrepare --- .../struts2/tiles/StrutsPreparerFactory.java | 53 +++++++++++++++++++ .../tiles/StrutsTilesContainerFactory.java | 6 +++ 2 files changed, 59 insertions(+) create mode 100644 plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java new file mode 100644 index 0000000000..d231786520 --- /dev/null +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java @@ -0,0 +1,53 @@ +/* + * 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 org.apache.struts2.tiles; + +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.ObjectFactory; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.ParameterizedMessage; +import org.apache.tiles.preparer.ViewPreparer; +import org.apache.tiles.preparer.factory.BasicPreparerFactory; + +/** + * This is a basic ViewPreparer factory that uses {@link ObjectFactory} to create the ViewPreparer + */ +public class StrutsPreparerFactory extends BasicPreparerFactory { + + private static final Logger LOG = LogManager.getLogger(StrutsPreparerFactory.class); + + @Override + protected ViewPreparer createPreparer(String name) { + ActionContext actionContext = ActionContext.getContext(); + if (actionContext == null) { + LOG.warn("Action context not initialised, request has omitted an action? Fallback to super.createPreparer!"); + return super.createPreparer(name); + } + + try { + ObjectFactory factory = actionContext.getContainer().getInstance(ObjectFactory.class); + return (ViewPreparer) factory.buildBean(name, ActionContext.getContext().getContextMap()); + } catch (Exception e) { + LOG.error(new ParameterizedMessage("Cannot create a ViewPreparer [{}], fallback to super.createPreparer!", name), e); + return super.createPreparer(name); + } + } +} diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java index b7564a9437..99a259ddc0 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java @@ -52,6 +52,7 @@ import org.apache.tiles.ognl.ScopePropertyAccessor; import org.apache.tiles.ognl.TilesApplicationContextNestedObjectExtractor; import org.apache.tiles.ognl.TilesContextPropertyAccessorDelegateFactory; +import org.apache.tiles.preparer.factory.PreparerFactory; import org.apache.tiles.request.ApplicationContext; import org.apache.tiles.request.ApplicationResource; import org.apache.tiles.request.Request; @@ -204,6 +205,11 @@ protected List getSources(ApplicationContext applicationCon return filteredResources; } + @Override + protected PreparerFactory createPreparerFactory(ApplicationContext applicationContext) { + return new StrutsPreparerFactory(); + } + protected Set getTilesDefinitions(Map params) { if (params.containsKey(DefinitionsFactory.DEFINITIONS_CONFIG)) { return TextParseUtil.commaDelimitedStringToSet(params.get(DefinitionsFactory.DEFINITIONS_CONFIG)); From 05f3b7a9b9623b1e2c1378fa37c55b1d64bad20d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 20 Jun 2017 09:30:51 +0200 Subject: [PATCH 0105/2288] WW-4793 Reduces overhead with looking for a FileManager --- .../com/opensymphony/xwork2/FileManager.java | 2 +- .../util/fs/DefaultFileManagerFactory.java | 25 +++++++++++++++++-- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/FileManager.java b/core/src/main/java/com/opensymphony/xwork2/FileManager.java index 5c6806b8c4..ef4656716c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/FileManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/FileManager.java @@ -13,7 +13,7 @@ public interface FileManager { /** * Enables configs reloading when config file changed * - * @param reloadingConfigs {@link XWorkConstants#RELOAD_XML_CONFIGURATION} + * @param reloadingConfigs {@link org.apache.struts2.StrutsConstants#STRUTS_CONFIGURATION_XML_RELOAD} */ void setReloadingConfigs(boolean reloadingConfigs); diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java index c19385fd17..60512caa5a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java @@ -2,11 +2,11 @@ import com.opensymphony.xwork2.FileManager; import com.opensymphony.xwork2.FileManagerFactory; -import com.opensymphony.xwork2.XWorkConstants; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.struts2.StrutsConstants; import java.util.HashSet; import java.util.Set; @@ -19,6 +19,7 @@ public class DefaultFileManagerFactory implements FileManagerFactory { private static final Logger LOG = LogManager.getLogger(DefaultFileManagerFactory.class); private boolean reloadingConfigs; + private FileManagerHolder fileManagerHolder; private FileManager systemFileManager; private Container container; @@ -32,20 +33,27 @@ public void setContainer(Container container) { this.container = container; } - @Inject(value = XWorkConstants.RELOAD_XML_CONFIGURATION, required = false) + @Inject(value = StrutsConstants.STRUTS_CONFIGURATION_XML_RELOAD, required = false) public void setReloadingConfigs(String reloadingConfigs) { this.reloadingConfigs = Boolean.parseBoolean(reloadingConfigs); } public FileManager getFileManager() { + if (fileManagerHolder != null) { + return fileManagerHolder.getFileManager(); + } + FileManager fileManager = lookupFileManager(); if (fileManager != null) { LOG.debug("Using FileManager implementation [{}]", fileManager.getClass().getSimpleName()); fileManager.setReloadingConfigs(reloadingConfigs); + fileManagerHolder = new FileManagerHolder(fileManager); return fileManager; } + LOG.debug("Using default implementation of FileManager provided under name [system]: {}", systemFileManager.getClass().getSimpleName()); systemFileManager.setReloadingConfigs(reloadingConfigs); + fileManagerHolder = new FileManagerHolder(systemFileManager); return systemFileManager; } @@ -77,4 +85,17 @@ private FileManager lookupFileManager() { return null; } + private static class FileManagerHolder { + + private final FileManager fileManager; + + public FileManagerHolder(FileManager fileManager) { + this.fileManager = fileManager; + } + + public FileManager getFileManager() { + return fileManager; + } + } + } From 31f0252e60dabaec0fef77112c464b768c877f52 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 20 Jun 2017 09:45:55 +0200 Subject: [PATCH 0106/2288] Marks class as deprecated --- .../main/java/com/opensymphony/xwork2/inject/util/Strings.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java index a15291ae2c..d138e21fdd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java @@ -21,6 +21,7 @@ * * @author crazybob@google.com (Bob Lee) */ +@Deprecated public class Strings { /** @@ -43,6 +44,7 @@ public class Strings { * converted to uppercase * @throws NullPointerException if s is null */ + @Deprecated public static String capitalize(String s) { if (s.length() == 0) return s; From fa20b71fc2b7764e9f5bb1ed14fb356ab6fb3258 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 20 Jun 2017 16:42:08 +0430 Subject: [PATCH 0107/2288] WW-4794 Fixes wrapField's where clause --- .../struts2/views/jasperreports/ValueStackDataSource.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java index c39b34e8f9..d875d2e4fc 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java @@ -97,7 +97,7 @@ public Object getFieldValue(JRField field) throws JRException { Object value = valueStack.findValue(expression); LOG.debug("Field [{}] = [{}]", field.getName(), value); - if (!wrapField && MakeIterator.isIterable(value) && !field.getValueClass().isInstance(value)) { + if (!wrapField && MakeIterator.isIterable(value) && field.getValueClass().isInstance(value)) { return value; } else if (MakeIterator.isIterable(value)) { // wrap value with ValueStackDataSource if not already wrapped From 33e1eeb386c98beeaeff51504a2ff156098f2c01 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 21 Jun 2017 13:28:45 +0430 Subject: [PATCH 0108/2288] WW-4744 WW-4694 Removes annotation search to commons lang 3.6 --- .../DefaultWorkflowInterceptor.java | 5 +- .../AnnotationWorkflowInterceptor.java | 25 ++-- .../xwork2/util/AnnotationUtils.java | 113 ------------------ .../apache/struts2/components/Component.java | 5 +- .../AnnotationValidationInterceptor.java | 4 +- .../xwork2/util/AnnotationUtilsTest.java | 53 -------- .../xwork2/util/annotation/DummyClass.java | 10 +- .../xwork2/util/annotation/DummyClassExt.java | 4 - .../util/annotation/DummyInterface.java | 6 - .../xwork2/util/annotation/MyAnnotationI.java | 8 -- .../BeanValidationInterceptor.java | 5 +- pom.xml | 2 +- 12 files changed, 27 insertions(+), 213 deletions(-) delete mode 100644 core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java delete mode 100644 core/src/test/java/com/opensymphony/xwork2/util/annotation/MyAnnotationI.java diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java index f9bcbd8f9e..d88d6f84ff 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java @@ -22,8 +22,6 @@ import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import com.opensymphony.xwork2.util.AnnotationUtils; -import java.lang.reflect.Method; /** * @@ -208,7 +206,8 @@ private String processValidationWorkflowAware(final Object action, final String */ protected String processInputConfig(final Object action, final String method, final String currentResultName) throws Exception { String resultName = currentResultName; - InputConfig annotation = AnnotationUtils.findAnnotation(action.getClass().getMethod(method, EMPTY_CLASS_ARRAY), InputConfig.class); + InputConfig annotation = MethodUtils.getAnnotation(action.getClass().getMethod(method, EMPTY_CLASS_ARRAY), + InputConfig.class ,true,true); if (annotation != null) { if (StringUtils.isNotEmpty(annotation.methodName())) { resultName = (String) MethodUtils.invokeMethod(action, true, annotation.methodName()); diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java index 38e3503389..36faa09088 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java @@ -19,7 +19,6 @@ import com.opensymphony.xwork2.XWorkException; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.opensymphony.xwork2.interceptor.PreResultListener; -import com.opensymphony.xwork2.util.AnnotationUtils; import org.apache.commons.lang3.reflect.MethodUtils; import java.lang.reflect.Method; @@ -113,13 +112,15 @@ public class AnnotationWorkflowInterceptor extends AbstractInterceptor implement public String intercept(ActionInvocation invocation) throws Exception { final Object action = invocation.getAction(); invocation.addPreResultListener(this); - List methods = new ArrayList<>(AnnotationUtils.getAnnotatedMethods(action.getClass(), Before.class)); + List methods = new ArrayList<>(MethodUtils.getMethodsListWithAnnotation(action.getClass(), Before.class, + true, true)); if (methods.size() > 0) { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(AnnotationUtils.findAnnotation(method1, Before.class).priority(), - AnnotationUtils.findAnnotation(method2, Before.class).priority()); + return comparePriorities(MethodUtils.getAnnotation(method1, Before.class, true, + true).priority(), MethodUtils.getAnnotation(method2, Before.class, true, + true).priority()); } }); for (Method m : methods) { @@ -134,14 +135,16 @@ public int compare(Method method1, Method method2) { String invocationResult = invocation.invoke(); // invoke any @After methods - methods = new ArrayList(AnnotationUtils.getAnnotatedMethods(action.getClass(), After.class)); + methods = new ArrayList(MethodUtils.getMethodsListWithAnnotation(action.getClass(), After.class, + true, true)); if (methods.size() > 0) { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(AnnotationUtils.findAnnotation(method1, After.class).priority(), - AnnotationUtils.findAnnotation(method2, After.class).priority()); + return comparePriorities(MethodUtils.getAnnotation(method1, After.class, true, + true).priority(), MethodUtils.getAnnotation(method2, After.class, true, + true).priority()); } }); for (Method m : methods) { @@ -169,14 +172,16 @@ protected static int comparePriorities(int val1, int val2) { */ public void beforeResult(ActionInvocation invocation, String resultCode) { Object action = invocation.getAction(); - List methods = new ArrayList(AnnotationUtils.getAnnotatedMethods(action.getClass(), BeforeResult.class)); + List methods = new ArrayList(MethodUtils.getMethodsListWithAnnotation(action.getClass(), + BeforeResult.class, true, true)); if (methods.size() > 0) { // methods are only sorted by priority Collections.sort(methods, new Comparator() { public int compare(Method method1, Method method2) { - return comparePriorities(AnnotationUtils.findAnnotation(method1, BeforeResult.class).priority(), - AnnotationUtils.findAnnotation(method2, BeforeResult.class).priority()); + return comparePriorities(MethodUtils.getAnnotation(method1, BeforeResult.class, true, + true).priority(), MethodUtils.getAnnotation(method2, BeforeResult.class, + true, true).priority()); } }); for (Method m : methods) { diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index e0af7a5d4f..eb8570fd79 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -15,16 +15,10 @@ */ package com.opensymphony.xwork2.util; -import org.apache.commons.lang3.ArrayUtils; -import org.apache.commons.lang3.ClassUtils; - import java.lang.annotation.Annotation; -import java.lang.reflect.AnnotatedElement; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -107,113 +101,6 @@ public static void addAllInterfaces(Class clazz, List allInterfaces) { addAllInterfaces(clazz.getSuperclass(), allInterfaces); } - /** - * For the given Class get a collection of the the {@link AnnotatedElement}s - * that match the given annotations or if no annotations are - * specified then return all of the annotated elements of the given Class. - * Includes only the method level annotations. - * - * @param clazz The {@link Class} to inspect - * @param annotation the {@link Annotation}s to find - * @return A {@link Collection}<{@link AnnotatedElement}> containing all of the - * method {@link AnnotatedElement}s matching the specified {@link Annotation}s - * @deprecated Will be removed after release of LANG-1317 - */ - @Deprecated - public static Collection getAnnotatedMethods(Class clazz, Class... annotation) { - List> allSuperclasses = ClassUtils.getAllSuperclasses(clazz); - allSuperclasses.add(0, clazz); - int sci = 0; - List> allInterfaces = ClassUtils.getAllInterfaces(clazz); - int ifi = 0; - final List annotatedMethods = new ArrayList<>(); - while (ifi < allInterfaces.size() || - sci < allSuperclasses.size()) { - Class acls; - if (ifi >= allInterfaces.size()) { - acls = allSuperclasses.get(sci++); - } - else if (sci >= allSuperclasses.size()) { - acls = allInterfaces.get(ifi++); - } - else if (sci <= ifi) { - acls = allSuperclasses.get(sci++); - } - else { - acls = allInterfaces.get(ifi++); - } - final Method[] allMethods = acls.getDeclaredMethods(); - for (final Method method : allMethods) { - if (ArrayUtils.isEmpty(annotation) && ArrayUtils.isNotEmpty(method.getAnnotations())) { - annotatedMethods.add(method); - continue; - } - for (Class c : annotation) { - if (method.getAnnotation(c) != null) { - annotatedMethods.add(method); - } - } - } - } - - return annotatedMethods; - } - - /** - *

BFS to find the annotation object that is present on the given method or any equivalent method in - * super classes and interfaces, with the given annotation type. Returns null if the annotation type was not present - * on any of them.

- * @param - * the annotation type - * @param method - * the {@link Method} to query - * @param annotationCls - * the {@link Annotation} to check if is present on the method - * @return an Annotation (possibly null). - * @deprecated Will be removed after release of LANG-1317 - */ - @Deprecated - public static A findAnnotation(final Method method, final Class annotationCls) { - A annotation = method.getAnnotation(annotationCls); - - if(annotation == null) { - Class mcls = method.getDeclaringClass(); - List> allSuperclasses = ClassUtils.getAllSuperclasses(mcls); - int sci = 0; - List> allInterfaces = ClassUtils.getAllInterfaces(mcls); - int ifi = 0; - while (ifi < allInterfaces.size() || - sci < allSuperclasses.size()) { - Class acls; - if(ifi >= allInterfaces.size()) { - acls = allSuperclasses.get(sci++); - } - else if(sci >= allSuperclasses.size()) { - acls = allInterfaces.get(ifi++); - } - else if(ifi <= sci) { - acls = allInterfaces.get(ifi++); - } - else { - acls = allSuperclasses.get(sci++); - } - Method equivalentMethod = null; - try { - equivalentMethod = acls.getDeclaredMethod(method.getName(), method.getParameterTypes()); - } catch (NoSuchMethodException e) { - // If not found, just keep on breadth first search - } - if(equivalentMethod != null) { - annotation = equivalentMethod.getAnnotation(annotationCls); - if(annotation != null) { - break; - } - } - } - } - return annotation; - } - /** * Returns the property name for a method. * This method is independent from property fields. diff --git a/core/src/main/java/org/apache/struts2/components/Component.java b/core/src/main/java/org/apache/struts2/components/Component.java index 2505fd2ddb..971cd53b8d 100644 --- a/core/src/main/java/org/apache/struts2/components/Component.java +++ b/core/src/main/java/org/apache/struts2/components/Component.java @@ -22,10 +22,10 @@ package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.AnnotationUtils; import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -543,7 +543,8 @@ protected Collection getStandardAttributes() { Class clz = getClass(); Collection standardAttributes = standardAttributesMap.get(clz); if (standardAttributes == null) { - Collection methods = AnnotationUtils.getAnnotatedMethods(clz, StrutsTagAttribute.class); + Collection methods = MethodUtils.getMethodsListWithAnnotation(clz, StrutsTagAttribute.class, + true, true); standardAttributes = new HashSet<>(methods.size()); for(Method m : methods) { standardAttributes.add(StringUtils.uncapitalize(m.getName().substring(3))); diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java index b9ba26c354..d0b56aa3ea 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java @@ -23,8 +23,8 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.config.ConfigurationException; -import com.opensymphony.xwork2.util.AnnotationUtils; import com.opensymphony.xwork2.validator.ValidationInterceptor; +import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -44,7 +44,7 @@ protected String doIntercept(ActionInvocation invocation) throws Exception { if (action != null) { Method method = getActionMethod(action.getClass(), invocation.getProxy().getMethod()); - if (null != AnnotationUtils.findAnnotation(method, SkipValidation.class)) { + if (null != MethodUtils.getAnnotation(method, SkipValidation.class, true, true)) { return invocation.invoke(); } } diff --git a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java index 1b6e0d5c7d..872f670311 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/AnnotationUtilsTest.java @@ -2,68 +2,15 @@ import com.opensymphony.xwork2.util.annotation.Dummy2Class; import com.opensymphony.xwork2.util.annotation.DummyClass; -import com.opensymphony.xwork2.util.annotation.DummyClassExt; -import com.opensymphony.xwork2.util.annotation.DummyInterface; import com.opensymphony.xwork2.util.annotation.MyAnnotation; -import com.opensymphony.xwork2.util.annotation.MyAnnotation2; -import com.opensymphony.xwork2.util.annotation.MyAnnotationI; import junit.framework.TestCase; -import java.lang.reflect.AnnotatedElement; -import java.util.Collection; - /** * @author Dan Oxlade, dan d0t oxlade at gmail d0t c0m */ public class AnnotationUtilsTest extends TestCase { - public void testFindAnnotationFromSuperclass() throws Exception { - assertNotNull(AnnotationUtils.findAnnotation(DummyClassExt.class.getMethod("methodWithAnnotation"), MyAnnotation.class)); - } - - public void testFindAnnotationFromInterface() throws Exception { - assertNotNull(AnnotationUtils.findAnnotation(DummyClass.class.getMethod("interfaceMethodWithAnnotation"), MyAnnotationI.class)); - } - - public void testFindAnnotation() throws Exception { - assertNotNull(AnnotationUtils.findAnnotation(DummyClassExt.class.getMethod("anotherAnnotatedMethod"), MyAnnotation2.class)); - } - - @SuppressWarnings("unchecked") - public void testGetAnnotatedMethodsIncludingSuperclassAndInterface() throws Exception { - - Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, Deprecated.class, MyAnnotation.class, MyAnnotation2.class, MyAnnotationI.class); - assertEquals(4, ans.size()); - } - - @SuppressWarnings("unchecked") - public void testGetAnnotatedMethodsWithoutAnnotationArgs() throws Exception { - Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class); - assertEquals(3, ans.size()); - assertTrue(ans.contains(DummyClass.class.getMethod("methodWithAnnotation"))); - assertTrue(ans.contains(DummyClass.class.getDeclaredMethod("privateMethodWithAnnotation"))); - assertTrue(ans.contains(DummyInterface.class.getDeclaredMethod("interfaceMethodWithAnnotation"))); - } - - @SuppressWarnings("unchecked") - public void testGetAnnotatedMethodsWithAnnotationArgs() throws Exception { - Collection ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class, Deprecated.class); - assertTrue(ans.isEmpty()); - - ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class, Deprecated.class, MyAnnotation.class); - assertEquals(1, ans.size()); - - ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class, MyAnnotation.class); - assertEquals(1, ans.size()); - - ans = AnnotationUtils.getAnnotatedMethods(DummyClass.class, MyAnnotation.class, MyAnnotation2.class); - assertEquals(2, ans.size()); - - ans = AnnotationUtils.getAnnotatedMethods(DummyClassExt.class, MyAnnotation.class, MyAnnotation2.class); - assertEquals(3, ans.size()); - } - public void testFindAnnotationOnClass() { MyAnnotation a1 = AnnotationUtils.findAnnotation(DummyClass.class, MyAnnotation.class); assertNotNull(a1); diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java index f6a4be11ab..8332a888b1 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClass.java @@ -1,20 +1,12 @@ package com.opensymphony.xwork2.util.annotation; @MyAnnotation("class-test") -public class DummyClass implements DummyInterface { +public class DummyClass { public DummyClass() { } @MyAnnotation("method-test") public void methodWithAnnotation() { - } - - @Override - public void interfaceMethodWithAnnotation() { - } - - @MyAnnotation2 - private void privateMethodWithAnnotation() { } } diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClassExt.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClassExt.java index 7c024f69da..ec8ca443fe 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClassExt.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyClassExt.java @@ -5,8 +5,4 @@ public final class DummyClassExt extends DummyClass { @MyAnnotation2 public void anotherAnnotatedMethod() { } - - @Override - public void methodWithAnnotation() { - } } diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java deleted file mode 100644 index 4d5f908df5..0000000000 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/DummyInterface.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.opensymphony.xwork2.util.annotation; - -public interface DummyInterface { - @MyAnnotationI - void interfaceMethodWithAnnotation(); -} diff --git a/core/src/test/java/com/opensymphony/xwork2/util/annotation/MyAnnotationI.java b/core/src/test/java/com/opensymphony/xwork2/util/annotation/MyAnnotationI.java deleted file mode 100644 index ea866b90ed..0000000000 --- a/core/src/test/java/com/opensymphony/xwork2/util/annotation/MyAnnotationI.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.opensymphony.xwork2.util.annotation; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -@Retention(RetentionPolicy.RUNTIME) -public @interface MyAnnotationI { -} diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index a20d134fb8..be7a0c9e9c 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -26,10 +26,10 @@ import com.opensymphony.xwork2.TextProviderFactory; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; -import com.opensymphony.xwork2.util.AnnotationUtils; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; import com.opensymphony.xwork2.validator.ValidatorContext; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.reflect.MethodUtils; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -98,7 +98,8 @@ protected String doIntercept(ActionInvocation invocation) throws Exception { LOG.debug("Validating [{}/{}] with method [{}]", invocation.getProxy().getNamespace(), invocation.getProxy().getActionName(), methodName); } - if (null == AnnotationUtils.findAnnotation(getActionMethod(action.getClass(), methodName), SkipValidation.class)) { + if (null == MethodUtils.getAnnotation(getActionMethod(action.getClass(), methodName), SkipValidation.class, + true, true)) { // performing bean validation on action performBeanValidation(action, validator); } diff --git a/pom.xml b/pom.xml index 720b9c2777..ce294786be 100644 --- a/pom.xml +++ b/pom.xml @@ -718,7 +718,7 @@ org.apache.commons commons-lang3 - 3.5 + 3.6 commons-digester From 0d6442bab5b44d93c4c2e63c5335f0a331333b92 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Thu, 22 Jun 2017 00:58:41 +0300 Subject: [PATCH 0109/2288] add constant to control proxy member access --- .../opensymphony/xwork2/ognl/OgnlUtil.java | 12 +++++ .../xwork2/ognl/OgnlValueStack.java | 1 + .../xwork2/ognl/SecurityMemberAccess.java | 7 ++- .../org/apache/struts2/StrutsConstants.java | 2 + .../ognl/SecurityMemberAccessProxyTest.java | 49 +++++++++++++++++++ .../xwork2/spring/actionContext-xwork.xml | 1 + .../src/main/resources/struts-plugin.xml | 2 + 7 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 core/src/test/java/com/opensymphony/xwork2/ognl/SecurityMemberAccessProxyTest.java diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index ced8eff9b1..d15977fa56 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -28,6 +28,7 @@ import org.apache.commons.lang3.BooleanUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.struts2.StrutsConstants; import java.beans.BeanInfo; import java.beans.IntrospectionException; @@ -64,6 +65,7 @@ public class OgnlUtil { private Container container; private boolean allowStaticMethodAccess; + private boolean disallowProxyMemberAccess; @Inject public void setXWorkConverter(XWorkConverter conv) { @@ -144,6 +146,15 @@ public void setAllowStaticMethodAccess(String allowStaticMethodAccess) { this.allowStaticMethodAccess = Boolean.parseBoolean(allowStaticMethodAccess); } + @Inject(value = StrutsConstants.STRUTS_DISALLOW_PROXY_MEMBER_ACCESS, required = false) + public void setDisallowProxyMemberAccess(String disallowProxyMemberAccess) { + this.disallowProxyMemberAccess = Boolean.parseBoolean(disallowProxyMemberAccess); + } + + public boolean isDisallowProxyMemberAccess() { + return disallowProxyMemberAccess; + } + /** * Sets the object's properties using the default type converter, defaulting to not throw * exceptions for problems setting the properties. @@ -679,6 +690,7 @@ protected Map createDefaultContext(Object root, ClassResolver classResolver) { memberAccess.setExcludedClasses(excludedClasses); memberAccess.setExcludedPackageNamePatterns(excludedPackageNamePatterns); memberAccess.setExcludedPackageNames(excludedPackageNames); + memberAccess.setDisallowProxyMemberAccess(disallowProxyMemberAccess); return Ognl.createDefaultContext(root, resolver, defaultConverter, memberAccess); } diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java index 28bef547d7..4ea6b4445d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java @@ -84,6 +84,7 @@ public void setOgnlUtil(OgnlUtil ognlUtil) { securityMemberAccess.setExcludedClasses(ognlUtil.getExcludedClasses()); securityMemberAccess.setExcludedPackageNamePatterns(ognlUtil.getExcludedPackageNamePatterns()); securityMemberAccess.setExcludedPackageNames(ognlUtil.getExcludedPackageNames()); + securityMemberAccess.setDisallowProxyMemberAccess(ognlUtil.isDisallowProxyMemberAccess()); } protected void setRoot(XWorkConverter xworkConverter, CompoundRootAccessor accessor, CompoundRoot compoundRoot, diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index cce09cbacb..7a84a34a6e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -41,6 +41,7 @@ public class SecurityMemberAccess extends DefaultMemberAccess { private Set> excludedClasses = Collections.emptySet(); private Set excludedPackageNamePatterns = Collections.emptySet(); private Set excludedPackageNames = Collections.emptySet(); + private boolean disallowProxyMemberAccess; public SecurityMemberAccess(boolean method) { super(false); @@ -85,7 +86,7 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return false; } - if (ProxyUtil.isProxyMember(member, target)) { + if (disallowProxyMemberAccess && ProxyUtil.isProxyMember(member, target)) { LOG.warn("Access to proxy [{}] is blocked!", member); return false; } @@ -212,4 +213,8 @@ public void setExcludedPackageNamePatterns(Set excludedPackageNamePatte public void setExcludedPackageNames(Set excludedPackageNames) { this.excludedPackageNames = excludedPackageNames; } + + public void setDisallowProxyMemberAccess(boolean disallowProxyMemberAccess) { + this.disallowProxyMemberAccess = disallowProxyMemberAccess; + } } diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index 87902cc96d..0cc7172962 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -325,4 +325,6 @@ public final class StrutsConstants { public static final String STRUTS_TEXT_PROVIDER_FACTORY = "struts.textProviderFactory"; public static final String STRUTS_LOCALIZED_TEXT_PROVIDER = "struts.localizedTextProvider"; + + public static final String STRUTS_DISALLOW_PROXY_MEMBER_ACCESS = "struts.disallowProxyMemberAccess"; } diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/SecurityMemberAccessProxyTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/SecurityMemberAccessProxyTest.java new file mode 100644 index 0000000000..ceda2e0156 --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/SecurityMemberAccessProxyTest.java @@ -0,0 +1,49 @@ +package com.opensymphony.xwork2.ognl; + +import java.lang.reflect.Member; +import java.util.HashMap; +import java.util.Map; + +import com.opensymphony.xwork2.ActionProxy; +import com.opensymphony.xwork2.XWorkTestCase; +import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; + +public class SecurityMemberAccessProxyTest extends XWorkTestCase { + private Map context; + + @Override + public void setUp() throws Exception { + super.setUp(); + + context = new HashMap<>(); + // Set up XWork + XmlConfigurationProvider provider = new XmlConfigurationProvider("com/opensymphony/xwork2/spring/actionContext-xwork.xml"); + container.inject(provider); + loadConfigurationProviders(provider); + } + + public void testProxyAccessIsBlocked() throws Exception { + ActionProxy proxy = actionProxyFactory.createActionProxy(null, + "chaintoAOPedTestSubBeanAction", null, context); + + SecurityMemberAccess sma = new SecurityMemberAccess(false); + sma.setDisallowProxyMemberAccess(true); + + Member member = proxy.getAction().getClass().getMethod("isExposeProxy"); + + boolean accessible = sma.isAccessible(context, proxy.getAction(), member, ""); + assertFalse(accessible); + } + + public void testProxyAccessIsAccessible() throws Exception { + ActionProxy proxy = actionProxyFactory.createActionProxy(null, + "chaintoAOPedTestSubBeanAction", null, context); + + SecurityMemberAccess sma = new SecurityMemberAccess(false); + + Member member = proxy.getAction().getClass().getMethod("isExposeProxy"); + + boolean accessible = sma.isAccessible(context, proxy.getAction(), member, ""); + assertTrue(accessible); + } +} diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml index 4457d1500b..0eb8c9a00f 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/actionContext-xwork.xml @@ -2,6 +2,7 @@ + diff --git a/plugins/spring/src/main/resources/struts-plugin.xml b/plugins/spring/src/main/resources/struts-plugin.xml index eb507726c2..cc13bca45d 100644 --- a/plugins/spring/src/main/resources/struts-plugin.xml +++ b/plugins/spring/src/main/resources/struts-plugin.xml @@ -35,6 +35,8 @@ + + From a249ed5f31a1aca8305c49500e6d21eed0c18b46 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 22 Jun 2017 13:11:07 +0200 Subject: [PATCH 0110/2288] [maven-release-plugin] prepare release STRUTS_2_5_11 --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++++++-- bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 42 insertions(+), 38 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index cb8654620d..aed405c4dc 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 1f384d4a2e..95597589c5 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.11-SNAPSHOT + 2.5.11 struts2-rest-showcase war - 2.5.11-SNAPSHOT + 2.5.11 Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index cbd484896c..85eb9c1fdc 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.11-SNAPSHOT + 2.5.11 struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 6bd64b71eb..cc482aa44a 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 808a1315fc..35fea5cfb3 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.11-SNAPSHOT + 2.5.11 pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.11-SNAPSHOT + 2.5.11 @@ -170,4 +170,8 @@ + + + STRUTS_2_5_11 + diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index b0cc1b88b9..69c48dd3fa 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.11-SNAPSHOT + 2.5.11 struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index 0344df53c9..2021819445 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.11-SNAPSHOT + 2.5.11 struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 4efe74945b..d40c06797b 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index fb71aa27ea..51c3dc2eb1 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index 9bcb72d9f1..6ba81c1843 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 90239f3ebf..74afc79222 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index ed4ccfc405..cfee4d7b01 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 68aa9a3cfa..e7a0c15b89 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 679c248d0f..41d2ccd8f5 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 16f36c09b5..05378ab238 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 3c96f0cf9a..8df42f9a6e 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 236c0484dd..455af1f9ca 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 9371de2002..57ae9b8389 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 459ed5d089..061ba1a63e 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index e398f755aa..987426987d 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 4e194f0735..74a1722e17 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index f488e27c75..1ce857ebb9 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 10519c7119..522011faf1 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index 3db690a012..a59203242c 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index 7db2d35218..ab8a715144 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index 50ebc16560..aae43a1772 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 2da962be7c..e192faa471 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 7a04cda892..14b1cc2c36 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 2855d6eba4..f4e14889e6 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index e2bb32f2cf..fa4374f0fa 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 7d01b8c86f..0d2cc3e0f5 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 5f44b7d715..4ba992bbd0 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 3952dd8dfc..4b8811a3f3 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index 7c94837fcf..7c581f99df 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11-SNAPSHOT + 2.5.11 struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index ce294786be..78d766ef56 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.11-SNAPSHOT + 2.5.11 pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - HEAD + STRUTS_2_5_11 From f84255783c80d6650d2abf89e6f2a89f67de8f6f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 22 Jun 2017 13:11:35 +0200 Subject: [PATCH 0111/2288] [maven-release-plugin] prepare for next development iteration --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++------ bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 38 insertions(+), 42 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index aed405c4dc..dbf0824bec 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 95597589c5..b7a3e819fd 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.11 + 2.5.12-SNAPSHOT struts2-rest-showcase war - 2.5.11 + 2.5.12-SNAPSHOT Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 85eb9c1fdc..c6a4e29a93 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.11 + 2.5.12-SNAPSHOT struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index cc482aa44a..612dae8bb4 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 35fea5cfb3..0d2258d1f8 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.11 + 2.5.12-SNAPSHOT pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.11 + 2.5.12-SNAPSHOT @@ -170,8 +170,4 @@ - - - STRUTS_2_5_11 - diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 69c48dd3fa..84de84d0e4 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.11 + 2.5.12-SNAPSHOT struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index 2021819445..5c3ba117e2 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.11 + 2.5.12-SNAPSHOT struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index d40c06797b..a898fb1491 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 51c3dc2eb1..0ab345ad82 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index 6ba81c1843..eb69edcc4a 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 74afc79222..5768e86ee1 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index cfee4d7b01..33a63e66bd 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index e7a0c15b89..74283b2eb5 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 41d2ccd8f5..f1637f8fbb 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 05378ab238..e6c87e21b9 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 8df42f9a6e..0633a2a160 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 455af1f9ca..98b1f103af 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 57ae9b8389..2fcd1b50fb 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 061ba1a63e..c58f12b769 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index 987426987d..d2a7f80cf9 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 74a1722e17..af91d46ce3 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 1ce857ebb9..da4cf64461 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 522011faf1..43253e3991 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index a59203242c..658ebdbabc 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index ab8a715144..d4cab99fb1 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index aae43a1772..8a0247d4b7 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index e192faa471..07534eb950 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 14b1cc2c36..5c13b0b7a2 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index f4e14889e6..987e83e57a 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index fa4374f0fa..6bb93a2141 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 0d2cc3e0f5..18735d75c7 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 4ba992bbd0..54b25a42da 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 4b8811a3f3..fdd2815141 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index 7c581f99df..4f3d829496 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.11 + 2.5.12-SNAPSHOT struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 78d766ef56..a4a69e0860 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.11 + 2.5.12-SNAPSHOT pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - STRUTS_2_5_11 + HEAD From 67536bf2d2440256c9c46f9a6128cff0875629d6 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 6 Jul 2017 07:46:32 +0200 Subject: [PATCH 0112/2288] WW-4810 Fixes issue with passing an empty locale on JDK8 --- .../xwork2/DefaultLocaleProvider.java | 8 +++---- .../interceptor/I18nInterceptorTest.java | 21 ++++++++++++++++++- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index bdb6d7cf29..9eea2b3829 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -16,11 +16,11 @@ package com.opensymphony.xwork2; import org.apache.commons.lang3.LocaleUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.message.ParameterizedMessage; -import java.util.Arrays; import java.util.Locale; /** @@ -45,15 +45,15 @@ public Locale getLocale() { public boolean isValidLocaleString(String localeStr) { Locale locale = null; try { - locale = LocaleUtils.toLocale(localeStr); + locale = LocaleUtils.toLocale(StringUtils.trimToNull(localeStr)); } catch (IllegalArgumentException e) { - LOG.warn(new ParameterizedMessage("Cannot convert [{}] to proper locale", localeStr, e)); + LOG.warn(new ParameterizedMessage("Cannot convert [{}] to proper locale", localeStr), e); } return isValidLocale(locale); } @Override public boolean isValidLocale(Locale locale) { - return locale != null && Arrays.asList(Locale.getAvailableLocales()).contains(locale); + return LocaleUtils.isAvailableLocale(locale); } } diff --git a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java index a38b8c41e0..42a075b140 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/I18nInterceptorTest.java @@ -23,7 +23,6 @@ import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; -import com.opensymphony.xwork2.DefaultLocaleProvider; import com.opensymphony.xwork2.DefaultLocaleProviderFactory; import com.opensymphony.xwork2.mock.MockActionInvocation; import com.opensymphony.xwork2.mock.MockActionProxy; @@ -101,6 +100,26 @@ public void testLanguageOnlyLocale() throws Exception { assertEquals(denmark, session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should create a locale object } + public void testEmptyLocale() throws Exception { + prepare(I18nInterceptor.DEFAULT_PARAMETER, ""); + interceptor.intercept(mai); + + assertFalse(mai.getInvocationContext().getParameters().get(I18nInterceptor.DEFAULT_PARAMETER).isDefined()); // should have been removed + + assertNotNull(session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should be stored here + assertEquals(Locale.getDefault(), session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should create a locale object + } + + public void testNotExistingLocale() throws Exception { + prepare(I18nInterceptor.DEFAULT_PARAMETER, "ble"); + interceptor.intercept(mai); + + assertFalse(mai.getInvocationContext().getParameters().get(I18nInterceptor.DEFAULT_PARAMETER).isDefined()); // should have been removed + + assertNotNull(session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should be stored here + assertEquals(Locale.getDefault(), session.get(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE)); // should create a locale object + } + public void testWithVariant() throws Exception { prepare(I18nInterceptor.DEFAULT_PARAMETER, "ja_JP_JP"); interceptor.intercept(mai); From 666271ccd95781cd174daf0371d252c1e8e89233 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 6 Jul 2017 07:56:36 +0200 Subject: [PATCH 0113/2288] WW-4812 Upgrades commons-fileupload to the latest version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a4a69e0860..5540c71cc2 100644 --- a/pom.xml +++ b/pom.xml @@ -708,7 +708,7 @@ commons-fileupload commons-fileupload - 1.3.2 + 1.3.3 commons-io From ee74aea445883ff5ee235190722aa0fb04640a2e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 6 Jul 2017 09:40:05 +0200 Subject: [PATCH 0114/2288] [maven-release-plugin] prepare release STRUTS_2_5_12 --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++++++-- bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 42 insertions(+), 38 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index dbf0824bec..61e3458515 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index b7a3e819fd..b3f975c9c5 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.12-SNAPSHOT + 2.5.12 struts2-rest-showcase war - 2.5.12-SNAPSHOT + 2.5.12 Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index c6a4e29a93..0a43a3f5e9 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.12-SNAPSHOT + 2.5.12 struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 612dae8bb4..10a6987baf 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 0d2258d1f8..c03ef62e21 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.12-SNAPSHOT + 2.5.12 pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.12-SNAPSHOT + 2.5.12 @@ -170,4 +170,8 @@ + + + STRUTS_2_5_12 + diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 84de84d0e4..a836485ea1 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.12-SNAPSHOT + 2.5.12 struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index 5c3ba117e2..a3ede359f6 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.12-SNAPSHOT + 2.5.12 struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index a898fb1491..7536fc13d0 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 0ab345ad82..696693ddea 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index eb69edcc4a..1953134bef 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 5768e86ee1..c77ec36ae4 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 33a63e66bd..acc558b93d 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 74283b2eb5..aad5928395 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index f1637f8fbb..59fd4bee8e 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index e6c87e21b9..ab72192947 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 0633a2a160..80d248ef2b 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 98b1f103af..ebdfd7bae2 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 2fcd1b50fb..7758840d13 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index c58f12b769..2c85d55fcf 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index d2a7f80cf9..ad48948a92 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index af91d46ce3..19027e8f61 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index da4cf64461..185502a8bf 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 43253e3991..d73d3121e2 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index 658ebdbabc..47652a5080 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index d4cab99fb1..11b3e39081 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index 8a0247d4b7..db76716dcb 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 07534eb950..74b6535b4f 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 5c13b0b7a2..a29c9b24fb 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 987e83e57a..e9c2398274 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index 6bb93a2141..e414fce489 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 18735d75c7..40dd6b2f55 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 54b25a42da..0f5f195aa6 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index fdd2815141..32da816305 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index 4f3d829496..9845a1bdb4 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12-SNAPSHOT + 2.5.12 struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 5540c71cc2..ad4acf7510 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.12-SNAPSHOT + 2.5.12 pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - HEAD + STRUTS_2_5_12 From cf7bfe63e25589edf2cb1a7ed23bb134348a90e4 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 6 Jul 2017 09:40:39 +0200 Subject: [PATCH 0115/2288] [maven-release-plugin] prepare for next development iteration --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++------ bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 38 insertions(+), 42 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 61e3458515..626e702b8a 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index b3f975c9c5..73c33de8e8 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.12 + 2.5.13-SNAPSHOT struts2-rest-showcase war - 2.5.12 + 2.5.13-SNAPSHOT Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 0a43a3f5e9..868d51f900 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.12 + 2.5.13-SNAPSHOT struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 10a6987baf..0a47af1eda 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index c03ef62e21..324e71e67b 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.12 + 2.5.13-SNAPSHOT pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.12 + 2.5.13-SNAPSHOT @@ -170,8 +170,4 @@ - - - STRUTS_2_5_12 - diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index a836485ea1..6bd52a3401 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.12 + 2.5.13-SNAPSHOT struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index a3ede359f6..d24b82854f 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.12 + 2.5.13-SNAPSHOT struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 7536fc13d0..593c86bce1 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 696693ddea..93c8851435 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index 1953134bef..b24ef10dc4 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index c77ec36ae4..545c94ea23 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index acc558b93d..980b30b7df 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index aad5928395..e75d64d5df 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 59fd4bee8e..7cbcf3e5ef 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index ab72192947..71a35719b8 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 80d248ef2b..7288286066 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index ebdfd7bae2..3e11451ab1 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 7758840d13..a8e0963f8a 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 2c85d55fcf..7cba50b710 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index ad48948a92..32a85c38b8 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 19027e8f61..98e982d3f8 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 185502a8bf..7011eaf826 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index d73d3121e2..52375bfbc3 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index 47652a5080..db2007f34a 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index 11b3e39081..ec02bca8aa 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index db76716dcb..d9735bb19a 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 74b6535b4f..930dee22a8 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index a29c9b24fb..fedde92da1 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index e9c2398274..6bb1caf28d 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index e414fce489..75e4719f9e 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 40dd6b2f55..88e476991e 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 0f5f195aa6..10258f2449 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 32da816305..f7306b1a28 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index 9845a1bdb4..bc547cc350 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.12 + 2.5.13-SNAPSHOT struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index ad4acf7510..6201f18c21 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.12 + 2.5.13-SNAPSHOT pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - STRUTS_2_5_12 + HEAD From cf10f68e766957fdd7f1bf70f25d4cc899a40b87 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 10:23:54 +0200 Subject: [PATCH 0116/2288] Extends action suffix to support multiple suffixes --- .../PackageBasedActionConfigBuilder.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java index 25083e279e..b244392d2f 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java @@ -75,7 +75,7 @@ public class PackageBasedActionConfigBuilder implements ActionConfigBuilder { private String packageLocatorsBasePackage; private boolean disableActionScanning = false; private boolean disablePackageLocatorsScanning = false; - private String actionSuffix = "Action"; + private Set actionSuffix = Collections.singleton("Action"); private boolean checkImplementsAction = true; private boolean mapAllMatches = false; private Set loadedFileUrls = new HashSet<>(); @@ -227,7 +227,7 @@ public void setCheckImplementsAction(String checkImplementsAction) { @Inject(value = "struts.convention.action.suffix", required = false) public void setActionSuffix(String actionSuffix) { if (StringUtils.isNotBlank(actionSuffix)) { - this.actionSuffix = actionSuffix; + this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); } } @@ -615,7 +615,7 @@ public boolean test(ClassFinder.ClassInfo classInfo) { // such as com.opensymphony.xwork2.ActionSupport. We repeat the // package filter here to filter out such results. boolean inPackage = includeClassNameInActionScan(classInfo.getName()); - boolean nameMatches = classInfo.getName().endsWith(actionSuffix); + boolean nameMatches = matchesSuffix(classInfo.getName()); try { return inPackage && (nameMatches || (checkImplementsAction && com.opensymphony.xwork2.Action.class.isAssignableFrom(classInfo.get()))); @@ -624,6 +624,15 @@ public boolean test(ClassFinder.ClassInfo classInfo) { return false; } } + + private boolean matchesSuffix(String name) { + for (String suffix : actionSuffix) { + if (name.endsWith(suffix)) { + return true; + } + } + return false; + } }; } From b708d844c292e064f5ef90bf65bfcd53b32b6659 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 10:24:02 +0200 Subject: [PATCH 0117/2288] Uses multiple suffixes --- .../convention/DefaultActionNameBuilder.java | 22 +++++++++--- .../convention/SEOActionNameBuilder.java | 36 ++++++++++++++----- 2 files changed, 45 insertions(+), 13 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java index 46b21693d8..97199703a0 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java @@ -21,8 +21,12 @@ package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.util.TextParseUtil; import org.apache.commons.lang3.StringUtils; +import java.util.Collections; +import java.util.Set; + /** *

* This class strips the word Action from the end of the class name @@ -33,7 +37,7 @@ *

*/ public class DefaultActionNameBuilder implements ActionNameBuilder { - private String actionSuffix = "Action"; + private Set actionSuffix = Collections.singleton("Action"); private boolean lowerCase; @Inject @@ -48,7 +52,7 @@ public DefaultActionNameBuilder(@Inject(value="struts.convention.action.name.low @Inject(value = "struts.convention.action.suffix", required = false) public void setActionSuffix(String actionSuffix) { if (StringUtils.isNotBlank(actionSuffix)) { - this.actionSuffix = actionSuffix; + this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); } } @@ -56,9 +60,7 @@ public String build(String className) { String actionName = className; // Truncate Action suffix if found - if (actionName.endsWith(actionSuffix)) { - actionName = actionName.substring(0, actionName.length() - actionSuffix.length()); - } + actionName = truncateSuffixIfMatches(actionName); // Force initial letter of action to lowercase, if desired if ((lowerCase) && (actionName.length() > 1)) { @@ -72,4 +74,14 @@ public String build(String className) { return actionName; } + + private String truncateSuffixIfMatches(String name) { + String actionName = name; + for (String suffix : actionSuffix) { + if (actionName.endsWith(suffix)) { + actionName = actionName.substring(0, actionName.length() - suffix.length()); + } + } + return actionName; + } } \ No newline at end of file diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java index f2920c018e..490476d2c8 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java @@ -21,10 +21,14 @@ package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.util.TextParseUtil; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import org.apache.commons.lang3.StringUtils; +import java.util.Collections; +import java.util.Set; + /** *

* This class converts the class name into a SEO friendly name by recognizing @@ -35,7 +39,7 @@ */ public class SEOActionNameBuilder implements ActionNameBuilder { private static final Logger LOG = LogManager.getLogger(SEOActionNameBuilder.class); - private String actionSuffix = "Action"; + private Set actionSuffix = Collections.singleton("Action"); private boolean lowerCase; private String separator; @@ -53,20 +57,17 @@ public SEOActionNameBuilder(@Inject(value="struts.convention.action.name.lowerca @Inject(value = "struts.convention.action.suffix", required = false) public void setActionSuffix(String actionSuffix) { if (StringUtils.isNotBlank(actionSuffix)) { - this.actionSuffix = actionSuffix; + this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); } } public String build(String className) { String actionName = className; - - if (actionName.equals(actionSuffix)) - throw new IllegalStateException("The action name cannot be the same as the action suffix [" + actionSuffix + "]"); + + checkActionName(actionName); // Truncate Action suffix if found - if (actionName.endsWith(actionSuffix)) { - actionName = actionName.substring(0, actionName.length() - actionSuffix.length()); - } + actionName = truncateSuffixIfMatches(actionName); // Convert to underscores char[] ca = actionName.toCharArray(); @@ -93,4 +94,23 @@ public String build(String className) { return actionName; } + + void checkActionName(String actionName) { + for (String suffix : actionSuffix) { + if (actionName.equals(suffix)) { + throw new IllegalStateException("The action name cannot be the same as the action suffix [" + suffix + "]"); + } + } + } + + private String truncateSuffixIfMatches(String name) { + String actionName = name; + for (String suffix : actionSuffix) { + if (actionName.endsWith(suffix)) { + actionName = actionName.substring(0, actionName.length() - suffix.length()); + } + } + return actionName; + } + } \ No newline at end of file From f522fbc45417b836463553e3d9110ee58fcf2673 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 10:58:26 +0200 Subject: [PATCH 0118/2288] Extract common code --- .../convention/AbstractActionNameBuilder.java | 44 ++++++++++++++++++ .../convention/ConventionConstants.java | 2 + .../convention/DefaultActionNameBuilder.java | 35 +++------------ .../convention/SEOActionNameBuilder.java | 45 +++---------------- 4 files changed, 60 insertions(+), 66 deletions(-) create mode 100644 plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java new file mode 100644 index 0000000000..a546e62fa6 --- /dev/null +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java @@ -0,0 +1,44 @@ +package org.apache.struts2.convention; + +import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.util.TextParseUtil; +import org.apache.commons.lang3.StringUtils; + +import java.util.Collections; +import java.util.Set; + +public abstract class AbstractActionNameBuilder implements ActionNameBuilder { + + private Set actionSuffix = Collections.singleton("Action"); + + /** + * @param actionSuffix (Optional) Classes that end with these value will be mapped as actions + * (defaults to "Action") + */ + @Inject(value = "struts.convention.action.suffix", required = false) + public void setActionSuffix(String actionSuffix) { + if (StringUtils.isNotBlank(actionSuffix)) { + this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); + } + } + + + protected void checkActionName(String actionName) { + for (String suffix : actionSuffix) { + if (actionName.equals(suffix)) { + throw new IllegalStateException("The action name cannot be the same as the action suffix [" + suffix + "]"); + } + } + } + + protected String truncateSuffixIfMatches(String name) { + String actionName = name; + for (String suffix : actionSuffix) { + if (actionName.endsWith(suffix)) { + actionName = actionName.substring(0, actionName.length() - suffix.length()); + } + } + return actionName; + } + +} diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java index 2842b8ce18..b360d946ee 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java @@ -29,4 +29,6 @@ public class ConventionConstants { public static final String CONVENTION_RESULT_MAP_BUILDER = "struts.convention.resultMapBuilder"; public static final String CONVENTION_INTERCEPTOR_MAP_BUILDER = "struts.convention.interceptorMapBuilder"; public static final String CONVENTION_CONVENTIONS_SERVICE = "struts.convention.conventionsService"; + public static final String CONVENTION_ACTION_NAME_LOWERCASE = "struts.convention.action.name.lowercase"; + public static final String CONVENTION_ACTION_NAME_SEPARATOR = "struts.convention.action.name.separator"; } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java index 97199703a0..797a519505 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java @@ -21,11 +21,6 @@ package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.TextParseUtil; -import org.apache.commons.lang3.StringUtils; - -import java.util.Collections; -import java.util.Set; /** *

@@ -36,29 +31,22 @@ * action names. *

*/ -public class DefaultActionNameBuilder implements ActionNameBuilder { - private Set actionSuffix = Collections.singleton("Action"); +public class DefaultActionNameBuilder extends AbstractActionNameBuilder { + private boolean lowerCase; @Inject - public DefaultActionNameBuilder(@Inject(value="struts.convention.action.name.lowercase") String lowerCase) { + public DefaultActionNameBuilder( + @Inject(ConventionConstants.CONVENTION_ACTION_NAME_LOWERCASE) String lowerCase + ) { this.lowerCase = Boolean.parseBoolean(lowerCase); } - /** - * @param actionSuffix (Optional) Classes that end with these value will be mapped as actions - * (defaults to "Action") - */ - @Inject(value = "struts.convention.action.suffix", required = false) - public void setActionSuffix(String actionSuffix) { - if (StringUtils.isNotBlank(actionSuffix)) { - this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); - } - } - public String build(String className) { String actionName = className; + checkActionName(actionName); + // Truncate Action suffix if found actionName = truncateSuffixIfMatches(actionName); @@ -75,13 +63,4 @@ public String build(String className) { return actionName; } - private String truncateSuffixIfMatches(String name) { - String actionName = name; - for (String suffix : actionSuffix) { - if (actionName.endsWith(suffix)) { - actionName = actionName.substring(0, actionName.length() - suffix.length()); - } - } - return actionName; - } } \ No newline at end of file diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java index 490476d2c8..3fea36ae50 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java @@ -21,13 +21,8 @@ package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.TextParseUtil; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; -import org.apache.commons.lang3.StringUtils; - -import java.util.Collections; -import java.util.Set; /** *

@@ -37,30 +32,22 @@ * from the class name. *

*/ -public class SEOActionNameBuilder implements ActionNameBuilder { +public class SEOActionNameBuilder extends AbstractActionNameBuilder { + private static final Logger LOG = LogManager.getLogger(SEOActionNameBuilder.class); - private Set actionSuffix = Collections.singleton("Action"); + private boolean lowerCase; private String separator; @Inject - public SEOActionNameBuilder(@Inject(value="struts.convention.action.name.lowercase") String lowerCase, - @Inject(value="struts.convention.action.name.separator") String separator) { + public SEOActionNameBuilder( + @Inject(ConventionConstants.CONVENTION_ACTION_NAME_LOWERCASE) String lowerCase, + @Inject(ConventionConstants.CONVENTION_ACTION_NAME_SEPARATOR) String separator + ) { this.lowerCase = Boolean.parseBoolean(lowerCase); this.separator = separator; } - /** - * @param actionSuffix (Optional) Classes that end with these value will be mapped as actions - * (defaults to "Action") - */ - @Inject(value = "struts.convention.action.suffix", required = false) - public void setActionSuffix(String actionSuffix) { - if (StringUtils.isNotBlank(actionSuffix)) { - this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); - } - } - public String build(String className) { String actionName = className; @@ -95,22 +82,4 @@ public String build(String className) { return actionName; } - void checkActionName(String actionName) { - for (String suffix : actionSuffix) { - if (actionName.equals(suffix)) { - throw new IllegalStateException("The action name cannot be the same as the action suffix [" + suffix + "]"); - } - } - } - - private String truncateSuffixIfMatches(String name) { - String actionName = name; - for (String suffix : actionSuffix) { - if (actionName.endsWith(suffix)) { - actionName = actionName.substring(0, actionName.length() - suffix.length()); - } - } - return actionName; - } - } \ No newline at end of file From b5be431f540271685eed803c7e55bf5a4d3138e6 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 11:01:03 +0200 Subject: [PATCH 0119/2288] Converts comments into logging statements --- .../convention/DefaultActionNameBuilder.java | 16 +++++++++------- .../struts2/convention/SEOActionNameBuilder.java | 4 ++-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java index 797a519505..8a220b850b 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java @@ -21,6 +21,8 @@ package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** *

@@ -33,6 +35,8 @@ */ public class DefaultActionNameBuilder extends AbstractActionNameBuilder { + private static final Logger LOG = LogManager.getLogger(DefaultActionNameBuilder.class); + private boolean lowerCase; @Inject @@ -47,17 +51,15 @@ public String build(String className) { checkActionName(actionName); - // Truncate Action suffix if found + LOG.trace("Truncate Action suffix if found"); actionName = truncateSuffixIfMatches(actionName); - // Force initial letter of action to lowercase, if desired + LOG.trace("Force initial letter of action to lowercase, if desired"); if ((lowerCase) && (actionName.length() > 1)) { int lowerPos = actionName.lastIndexOf('/') + 1; - StringBuilder sb = new StringBuilder(); - sb.append(actionName.substring(0, lowerPos)); - sb.append(Character.toLowerCase(actionName.charAt(lowerPos))); - sb.append(actionName.substring(lowerPos + 1)); - actionName = sb.toString(); + actionName = actionName.substring(0, lowerPos) + + Character.toLowerCase(actionName.charAt(lowerPos)) + + actionName.substring(lowerPos + 1); } return actionName; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java index 3fea36ae50..d96fd2d741 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java @@ -53,10 +53,10 @@ public String build(String className) { checkActionName(actionName); - // Truncate Action suffix if found + LOG.trace("Truncate Action suffix if found"); actionName = truncateSuffixIfMatches(actionName); - // Convert to underscores + LOG.trace("Convert to underscores"); char[] ca = actionName.toCharArray(); StringBuilder build = new StringBuilder("" + ca[0]); boolean lower = true; From f585d7920ebdd2ce5b7164b5425d4567dddeddcb Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 11:13:44 +0200 Subject: [PATCH 0120/2288] Extracts constants --- .../convention/AbstractActionNameBuilder.java | 2 +- .../ClasspathConfigurationProvider.java | 2 +- .../convention/ConventionConstants.java | 20 +++++++++++ .../convention/ConventionUnknownHandler.java | 6 ++-- .../convention/ConventionsServiceImpl.java | 2 +- .../convention/DefaultResultMapBuilder.java | 4 +-- .../PackageBasedActionConfigBuilder.java | 34 +++++++++---------- 7 files changed, 45 insertions(+), 25 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java index a546e62fa6..df2214f1f2 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java @@ -15,7 +15,7 @@ public abstract class AbstractActionNameBuilder implements ActionNameBuilder { * @param actionSuffix (Optional) Classes that end with these value will be mapped as actions * (defaults to "Action") */ - @Inject(value = "struts.convention.action.suffix", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_SUFFIX, required = false) public void setActionSuffix(String actionSuffix) { if (StringUtils.isNotBlank(actionSuffix)) { this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java index 32aec9699e..79334e7c3d 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java @@ -53,7 +53,7 @@ public void setDevMode(String mode) { this.devMode = BooleanUtils.toBoolean(mode); } - @Inject("struts.convention.classes.reload") + @Inject(ConventionConstants.CONVENTION_CLASSES_RELOAD) public void setReload(String reload) { this.reload = BooleanUtils.toBoolean(reload); } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java index b360d946ee..ad5f4e8ef6 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java @@ -31,4 +31,24 @@ public class ConventionConstants { public static final String CONVENTION_CONVENTIONS_SERVICE = "struts.convention.conventionsService"; public static final String CONVENTION_ACTION_NAME_LOWERCASE = "struts.convention.action.name.lowercase"; public static final String CONVENTION_ACTION_NAME_SEPARATOR = "struts.convention.action.name.separator"; + public static final String CONVENTION_ACTION_SUFFIX = "struts.convention.action.suffix"; + public static final String CONVENTION_CLASSES_RELOAD = "struts.convention.classes.reload"; + public static final String CONVENTION_RESULT_PATH = "struts.convention.result.path"; + public static final String CONVENTION_DEFAULT_PARENT_PACKAGE = "struts.convention.default.parent.package"; + public static final String CONVENTION_REDIRECT_TO_SLASH = "struts.convention.redirect.to.slash"; + public static final String CONVENTION_RELATIVE_RESULT_TYPES = "struts.convention.relative.result.types"; + public static final String CONVENTION_EXCLUDE_PARENT_CLASS_LOADER = "struts.convention.exclude.parentClassLoader"; + public static final String CONVENTION_ACTION_ALWAYS_MAP_EXECUTE = "struts.convention.action.alwaysMapExecute"; + public static final String CONVENTION_ACTION_FILE_PROTOCOLS = "struts.convention.action.fileProtocols"; + public static final String CONVENTION_ACTION_DISABLE_SCANNING = "struts.convention.action.disableScanning"; + public static final String CONVENTION_ACTION_INCLUDE_JARS = "struts.convention.action.includeJars"; + public static final String CONVENTION_PACKAGE_LOCATORS_DISABLE = "struts.convention.package.locators.disable"; + public static final String CONVENTION_ACTION_PACKAGES = "struts.convention.action.packages"; + public static final String CONVENTION_ACTION_CHECK_IMPLEMENTS_ACTION = "struts.convention.action.checkImplementsAction"; + public static final String CONVENTION_EXCLUDE_PACKAGES = "struts.convention.exclude.packages"; + public static final String CONVENTION_PACKAGE_LOCATORS = "struts.convention.package.locators"; + public static final String CONVENTION_PACKAGE_LOCATORS_BASE_PACKAGE = "struts.convention.package.locators.basePackage"; + public static final String CONVENTION_ACTION_MAP_ALL_MATCHES = "struts.convention.action.mapAllMatches"; + public static final String CONVENTION_ACTION_EAGER_LOADING = "struts.convention.action.eagerLoading"; + public static final String CONVENTION_RESULT_FLAT_LAYOUT = "struts.convention.result.flatLayout"; } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java index cb10f1b48a..8e87494d68 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java @@ -94,9 +94,9 @@ public class ConventionUnknownHandler implements UnknownHandler { @Inject public ConventionUnknownHandler(Configuration configuration, ObjectFactory objectFactory, ServletContext servletContext, Container container, - @Inject("struts.convention.default.parent.package") String defaultParentPackageName, - @Inject("struts.convention.redirect.to.slash") String redirectToSlash, - @Inject("struts.convention.action.name.separator") String nameSeparator) { + @Inject(ConventionConstants.CONVENTION_DEFAULT_PARENT_PACKAGE) String defaultParentPackageName, + @Inject(ConventionConstants.CONVENTION_REDIRECT_TO_SLASH) String redirectToSlash, + @Inject(ConventionConstants.CONVENTION_ACTION_NAME_SEPARATOR) String nameSeparator) { this.configuration = configuration; this.objectFactory = objectFactory; this.servletContext = servletContext; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java index 8e68538543..004b28ef3e 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java @@ -49,7 +49,7 @@ public class ConventionsServiceImpl implements ConventionsService { * the constant name of struts.convention.result.path. */ @Inject - public ConventionsServiceImpl(@Inject("struts.convention.result.path") String resultPath) { + public ConventionsServiceImpl(@Inject(ConventionConstants.CONVENTION_RESULT_PATH) String resultPath) { this.resultPath = resultPath; } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java index 40ea279cd9..724c09f9f0 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java @@ -131,7 +131,7 @@ public class DefaultResultMapBuilder implements ResultMapBuilder { */ @Inject public DefaultResultMapBuilder(ServletContext servletContext, Container container, - @Inject("struts.convention.relative.result.types") String relativeResultTypes) { + @Inject(ConventionConstants.CONVENTION_RELATIVE_RESULT_TYPES) String relativeResultTypes) { this.servletContext = servletContext; this.relativeResultTypes = new HashSet<>(Arrays.asList(relativeResultTypes.split("\\s*[,]\\s*"))); this.conventionsService = container.getInstance(ConventionsService.class, container.getInstance(String.class, ConventionConstants.CONVENTION_CONVENTIONS_SERVICE)); @@ -142,7 +142,7 @@ public DefaultResultMapBuilder(ServletContext servletContext, Container containe * ${namespace}/${actionName}-${result}.${extension}, otherwise in the form * ${namespace}/${actionName}/${result}.${extension} */ - @Inject("struts.convention.result.flatLayout") + @Inject(ConventionConstants.CONVENTION_RESULT_FLAT_LAYOUT) public void setFlatResultLayout(String flatResultLayout) { this.flatResultLayout = BooleanUtils.toBoolean(flatResultLayout); } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java index b244392d2f..d45f7bf986 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java @@ -108,8 +108,8 @@ public class PackageBasedActionConfigBuilder implements ActionConfigBuilder { */ @Inject public PackageBasedActionConfigBuilder(Configuration configuration, Container container, ObjectFactory objectFactory, - @Inject("struts.convention.redirect.to.slash") String redirectToSlash, - @Inject("struts.convention.default.parent.package") String defaultParentPackage) { + @Inject(ConventionConstants.CONVENTION_REDIRECT_TO_SLASH) String redirectToSlash, + @Inject(ConventionConstants.CONVENTION_DEFAULT_PARENT_PACKAGE) String defaultParentPackage) { // Validate that the parameters are okay this.configuration = configuration; @@ -135,7 +135,7 @@ public void setDevMode(String mode) { * @param reload Reload configuration when classes change. Defaults to "false" and should not be used * in production. */ - @Inject("struts.convention.classes.reload") + @Inject(ConventionConstants.CONVENTION_CLASSES_RELOAD) public void setReload(String reload) { this.reload = BooleanUtils.toBoolean(reload); } @@ -149,7 +149,7 @@ public void setSlashesInActionNames(String slashesInActionNames) { /** * @param exclude Exclude URLs found by the parent class loader. Defaults to "true", set to true for JBoss */ - @Inject("struts.convention.exclude.parentClassLoader") + @Inject(ConventionConstants.CONVENTION_EXCLUDE_PARENT_CLASS_LOADER) public void setExcludeParentClassLoader(String exclude) { this.excludeParentClassLoader = BooleanUtils.toBoolean(exclude); } @@ -158,7 +158,7 @@ public void setExcludeParentClassLoader(String exclude) { * @param alwaysMapExecute If this constant is true, and there is an "execute" method(not annotated), a mapping will be added * pointing to it, even if there are other mapping in the class */ - @Inject("struts.convention.action.alwaysMapExecute") + @Inject(ConventionConstants.CONVENTION_ACTION_ALWAYS_MAP_EXECUTE) public void setAlwaysMapExecute(String alwaysMapExecute) { this.alwaysMapExecute = BooleanUtils.toBoolean(alwaysMapExecute); } @@ -167,7 +167,7 @@ public void setAlwaysMapExecute(String alwaysMapExecute) { * File URLs whose protocol are in these list will be processed as jars containing classes * @param fileProtocols Comma separated list of file protocols that will be considered as jar files and scanned */ - @Inject("struts.convention.action.fileProtocols") + @Inject(ConventionConstants.CONVENTION_ACTION_FILE_PROTOCOLS) public void setFileProtocols(String fileProtocols) { if (StringUtils.isNotBlank(fileProtocols)) { this.fileProtocols = TextParseUtil.commaDelimitedStringToSet(fileProtocols); @@ -177,7 +177,7 @@ public void setFileProtocols(String fileProtocols) { /** * @param disableActionScanning Disable scanning for actions */ - @Inject(value = "struts.convention.action.disableScanning", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_DISABLE_SCANNING, required = false) public void setDisableActionScanning(String disableActionScanning) { this.disableActionScanning = BooleanUtils.toBoolean(disableActionScanning); } @@ -185,7 +185,7 @@ public void setDisableActionScanning(String disableActionScanning) { /** * @param includeJars Comma separated list of regular expressions of jars to be included. */ - @Inject(value = "struts.convention.action.includeJars", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_INCLUDE_JARS, required = false) public void setIncludeJars(String includeJars) { if (StringUtils.isNotEmpty(includeJars)) { this.includeJars = includeJars.split("\\s*[,]\\s*"); @@ -195,7 +195,7 @@ public void setIncludeJars(String includeJars) { /** * @param disablePackageLocatorsScanning If set to true, only the named packages will be scanned */ - @Inject(value = "struts.convention.package.locators.disable", required = false) + @Inject(value = ConventionConstants.CONVENTION_PACKAGE_LOCATORS_DISABLE, required = false) public void setDisablePackageLocatorsScanning(String disablePackageLocatorsScanning) { this.disablePackageLocatorsScanning = BooleanUtils.toBoolean(disablePackageLocatorsScanning); } @@ -204,7 +204,7 @@ public void setDisablePackageLocatorsScanning(String disablePackageLocatorsScann * @param actionPackages (Optional) An optional list of action packages that this should create * configuration for. */ - @Inject(value = "struts.convention.action.packages", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_PACKAGES, required = false) public void setActionPackages(String actionPackages) { if (StringUtils.isNotBlank(actionPackages)) { this.actionPackages = actionPackages.split("\\s*[,]\\s*"); @@ -215,7 +215,7 @@ public void setActionPackages(String actionPackages) { * @param checkImplementsAction (Optional) Map classes that implement com.opensymphony.xwork2.Action * as actions */ - @Inject(value = "struts.convention.action.checkImplementsAction", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_CHECK_IMPLEMENTS_ACTION, required = false) public void setCheckImplementsAction(String checkImplementsAction) { this.checkImplementsAction = BooleanUtils.toBoolean(checkImplementsAction); } @@ -224,7 +224,7 @@ public void setCheckImplementsAction(String checkImplementsAction) { * @param actionSuffix (Optional) Classes that end with these value will be mapped as actions * (defaults to "Action") */ - @Inject(value = "struts.convention.action.suffix", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_SUFFIX, required = false) public void setActionSuffix(String actionSuffix) { if (StringUtils.isNotBlank(actionSuffix)) { this.actionSuffix = TextParseUtil.commaDelimitedStringToSet(actionSuffix); @@ -235,7 +235,7 @@ public void setActionSuffix(String actionSuffix) { * @param excludePackages (Optional) A list of packages that should be skipped when building * configuration. */ - @Inject(value = "struts.convention.exclude.packages", required = false) + @Inject(value = ConventionConstants.CONVENTION_EXCLUDE_PACKAGES, required = false) public void setExcludePackages(String excludePackages) { if (StringUtils.isNotBlank(excludePackages)) { this.excludePackages = excludePackages.split("\\s*[,]\\s*"); @@ -245,7 +245,7 @@ public void setExcludePackages(String excludePackages) { /** * @param packageLocators (Optional) A list of names used to find action packages. */ - @Inject(value = "struts.convention.package.locators", required = false) + @Inject(value = ConventionConstants.CONVENTION_PACKAGE_LOCATORS, required = false) public void setPackageLocators(String packageLocators) { this.packageLocators = packageLocators.split("\\s*[,]\\s*"); } @@ -254,7 +254,7 @@ public void setPackageLocators(String packageLocators) { * @param packageLocatorsBasePackage (Optional) If set, only packages that start with this * name will be scanned for actions. */ - @Inject(value = "struts.convention.package.locators.basePackage", required = false) + @Inject(value = ConventionConstants.CONVENTION_PACKAGE_LOCATORS_BASE_PACKAGE, required = false) public void setPackageLocatorsBase(String packageLocatorsBasePackage) { this.packageLocatorsBasePackage = packageLocatorsBasePackage; } @@ -264,7 +264,7 @@ public void setPackageLocatorsBase(String packageLocatorsBasePackage) { * even if they don't have a default method. The mapping from * the url to the action will be delegated the action mapper. */ - @Inject(value = "struts.convention.action.mapAllMatches", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_MAP_ALL_MATCHES, required = false) public void setMapAllMatches(String mapAllMatches) { this.mapAllMatches = BooleanUtils.toBoolean(mapAllMatches); } @@ -273,7 +273,7 @@ public void setMapAllMatches(String mapAllMatches) { * @param eagerLoading (Optional) If set, found action classes will be instantiated by the ObjectFactory to accelerate future use * setting it up can clash with Spring managed beans */ - @Inject(value = "struts.convention.action.eagerLoading", required = false) + @Inject(value = ConventionConstants.CONVENTION_ACTION_EAGER_LOADING, required = false) public void setEagerLoading(String eagerLoading) { this.eagerLoading = BooleanUtils.toBoolean(eagerLoading); } From 89d9342e53c167fadc883afd81c1f81443e28c24 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 11:28:14 +0200 Subject: [PATCH 0121/2288] Fixes small typo --- .../java/org/apache/struts2/convention/ConventionConstants.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java index ad5f4e8ef6..3d8c74d687 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java @@ -21,7 +21,7 @@ package org.apache.struts2.convention; /** - * Constants used to extend the COnvention plugin + * Constants used to extend the Convention plugin */ public class ConventionConstants { public static final String CONVENTION_ACTION_CONFIG_BUILDER = "struts.convention.actionConfigBuilder"; From 855be0e36c0ac07e36bb027750ae6ddf20dfbfee Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 7 Jul 2017 11:31:45 +0200 Subject: [PATCH 0122/2288] Updates header with license --- .../convention/AbstractActionNameBuilder.java | 19 ++++++++++++ .../convention/ActionConfigBuilder.java | 2 -- .../struts2/convention/ActionNameBuilder.java | 2 -- .../ClasspathConfigurationProvider.java | 2 -- .../convention/ClasspathPackageProvider.java | 5 ++-- .../convention/ConventionConstants.java | 2 -- .../convention/ConventionUnknownHandler.java | 2 -- .../convention/ConventionsService.java | 2 -- .../convention/ConventionsServiceImpl.java | 2 -- .../convention/DefaultActionNameBuilder.java | 2 -- .../convention/DefaultClassFinder.java | 29 ++++++++++--------- .../DefaultInterceptorMapBuilder.java | 2 -- .../convention/DefaultResultMapBuilder.java | 2 -- .../convention/InterceptorMapBuilder.java | 2 -- .../PackageBasedActionConfigBuilder.java | 2 -- .../struts2/convention/ReflectionTools.java | 2 -- .../struts2/convention/ResultMapBuilder.java | 2 -- .../convention/SEOActionNameBuilder.java | 2 -- .../struts2/convention/StringTools.java | 2 -- 19 files changed, 37 insertions(+), 48 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java index df2214f1f2..333b293aea 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.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 org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ActionConfigBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ActionConfigBuilder.java index 0d45590a8f..89a9832dea 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ActionConfigBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ActionConfigBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ActionNameBuilder.java index 89444053df..e9f41e3ce4 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ActionNameBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java index 79334e7c3d..f3d8733221 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathConfigurationProvider.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathPackageProvider.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathPackageProvider.java index 3d76cd9edd..7b314c05b8 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathPackageProvider.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ClasspathPackageProvider.java @@ -1,6 +1,4 @@ /* - * $Id: ClasspathConfigurationProvider.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 @@ -17,7 +15,8 @@ * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. - */package org.apache.struts2.convention; + */ +package org.apache.struts2.convention; import com.opensymphony.xwork2.config.PackageProvider; import com.opensymphony.xwork2.config.Configuration; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java index 3d8c74d687..46ec9d46c6 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionConstants.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java index 8e87494d68..3ad275d96a 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionUnknownHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsService.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsService.java index 0b9d17ad1c..3548c9d4cb 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsService.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsService.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java index 004b28ef3e..81dd0d398d 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ConventionsServiceImpl.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java index 8a220b850b..46d6797afd 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultActionNameBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultClassFinder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultClassFinder.java index 9412f7e0c4..bd947f7b88 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultClassFinder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultClassFinder.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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 org.apache.struts2.convention; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultInterceptorMapBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultInterceptorMapBuilder.java index 6ebce88a14..013421aa93 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultInterceptorMapBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultInterceptorMapBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java index 724c09f9f0..395b350284 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/DefaultResultMapBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/InterceptorMapBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/InterceptorMapBuilder.java index c57235f5ff..5f2d0a4fb7 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/InterceptorMapBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/InterceptorMapBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java index d45f7bf986..31f088d38d 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ReflectionTools.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ReflectionTools.java index 3db5327399..6629a2b52c 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ReflectionTools.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ReflectionTools.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/ResultMapBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/ResultMapBuilder.java index 1457aac9f8..b120c0cc17 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/ResultMapBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/ResultMapBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java index d96fd2d741..1f23ba8619 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/SEOActionNameBuilder.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/StringTools.java b/plugins/convention/src/main/java/org/apache/struts2/convention/StringTools.java index dbe53bb61b..b24deeca18 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/StringTools.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/StringTools.java @@ -1,6 +1,4 @@ /* - * $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 From 2f8121d53660f8474fff42e58ccb4e8f4063be94 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 17 Jul 2017 09:32:55 +0200 Subject: [PATCH 0123/2288] Drops unused dependency --- pom.xml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pom.xml b/pom.xml index 6201f18c21..d6e964880d 100644 --- a/pom.xml +++ b/pom.xml @@ -853,12 +853,6 @@ test - - log4j - log4j - 1.2.17 - - org.slf4j slf4j-api From 856cb5fbef84765698b2a9dc391657a6bcf9a1eb Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 17 Jul 2017 11:20:11 +0200 Subject: [PATCH 0124/2288] Uses new link to Jenkins job --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6d0db9cc94..40c3c2c816 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ The Apache Struts web framework ------------------------------- -[![Build Status @ Jenkins](https://builds.apache.org/buildStatus/icon?job=Struts-JDK7-master)](https://builds.apache.org/view/S-Z/view/Struts/job/Struts-JDK7-master/) +[![Build Status @ Jenkins](https://builds.apache.org/buildStatus/icon?job=Struts-master-JDK7)](https://builds.apache.org/view/S-Z/view/Struts/job/Struts-master-JDK7/) [![Build Status @ Travis](https://travis-ci.org/apache/struts.svg?branch=master)](https://travis-ci.org/apache/struts) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/) [![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) From 6e6c4d8d6522213c14f040e56ac21a5b9f400308 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Thu, 20 Jul 2017 20:48:56 +0300 Subject: [PATCH 0125/2288] WW-4823 Remove jQuery from debugging interceptor views --- .../struts2/interceptor/debugging/browser.ftl | 40 +++++++++++-------- .../interceptor/debugging/webconsole.html | 11 +++-- .../interceptor/debugging/webconsole.js | 18 +++++++-- 3 files changed, 44 insertions(+), 25 deletions(-) diff --git a/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl b/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl index 87175ce6c2..8b1b3cb3a7 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl +++ b/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl @@ -54,7 +54,6 @@ } - ${debugHtml} - \ No newline at end of file + diff --git a/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.html b/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.html index 9674c035f0..bb9e38958c 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.html +++ b/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.html @@ -24,18 +24,17 @@ - OGNL Console

+
+ Welcome to the OGNL console! +
+ :-> +
-
- Welcome to the OGNL console! -
- :-> -
diff --git a/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.js b/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.js index 2068e61cd3..103c94933a 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.js +++ b/core/src/main/resources/org/apache/struts2/interceptor/debugging/webconsole.js @@ -48,9 +48,21 @@ function keyEvent(event, url) { commandsHistory[commandsHistory.length] = theShellCommand; historyPointer = commandsHistory.length; var theUrl = url ? url : window.opener.location.pathname; - jQuery.post(theUrl, jQuery("#wc-form").serialize(), function (data) { - printResult(data); - }); + + var request = new XMLHttpRequest(); + request.open('POST', theUrl, true); + request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); + + request.onreadystatechange = function() { + if (this.readyState === 4) { + if (this.status >= 200 && this.status < 400) { + // Success! + printResult(this.responseText); + } + } + }; + + request.send("debug=command&expression="+encodeURIComponent(document.getElementById('wc-command').value)); } break; case 38: // this is the arrow up From 6d82cdb4912fb82dca895599f3fbb0399a66132d Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Thu, 20 Jul 2017 23:34:58 +0300 Subject: [PATCH 0126/2288] improve ParametersInterceptor logging --- .../opensymphony/xwork2/interceptor/ParametersInterceptor.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java index 5eba95d719..eeba99375b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java @@ -271,6 +271,7 @@ protected String getParameterLogMap(HttpParameters parameters) { logEntry.append(String.valueOf(name)); logEntry.append(" => "); logEntry.append(parameters.get(name).getValue()); + logEntry.append(" "); } return logEntry.toString(); From f9e4fe483630dd0e9b37acdca4e0db5479110b56 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Sun, 23 Jul 2017 10:38:16 +0200 Subject: [PATCH 0127/2288] WW-4821 Upgrade Commons IO to 2.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d6e964880d..c45da95dbc 100644 --- a/pom.xml +++ b/pom.xml @@ -713,7 +713,7 @@ commons-io commons-io - 2.4 + 2.5 org.apache.commons From 06c858386760687e276bb5bd310996ad633990a2 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Mon, 24 Jul 2017 23:19:58 +0200 Subject: [PATCH 0128/2288] WW-4819 fixed commons-collections groupId in dependency management --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c45da95dbc..55dcfb82db 100644 --- a/pom.xml +++ b/pom.xml @@ -701,7 +701,7 @@ - org.apache.commons + commons-collections commons-collections 3.2.2 From 68d52dbe42aebc8e24379ebfaf4f306dd261b91c Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Tue, 25 Jul 2017 13:05:07 +0200 Subject: [PATCH 0129/2288] WW-4818 change default Multipart validation regex to comply with RFC1341 --- .../src/main/java/org/apache/struts2/dispatcher/Dispatcher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 55707a4be8..97e2149215 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -88,7 +88,7 @@ public class Dispatcher { */ public static final String REQUEST_POST_METHOD = "POST"; - public static final String MULTIPART_FORM_DATA_REGEX = "^multipart\\/form-data(; boundary=[\\-a-zA-Z0-9]{1,70})?"; + public static final String MULTIPART_FORM_DATA_REGEX = "^multipart/form-data(; boundary=[0-9a-zA-Z'()+_,\\-./:=?]{1,70})?"; /** * Provide a thread local instance. From bbbe2a80356811ff4dbaa99da2417a067eb614cc Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Tue, 25 Jul 2017 14:30:07 +0200 Subject: [PATCH 0130/2288] WW-4818 added a couple of simple tests for MULTIPART_FORM_DATA_REGEX --- .../struts2/dispatcher/DispatcherTest.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index 0f430de55e..4f043cb7ba 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -146,6 +146,32 @@ public void testPrepareMultipartRequest() throws Exception { assertTrue(wrapped instanceof MultiPartRequestWrapper); } + public void testPrepareMultipartRequestAllAllowedCharacters() throws Exception { + MockHttpServletRequest req = new MockHttpServletRequest(); + MockHttpServletResponse res = new MockHttpServletResponse(); + + req.setMethod("post"); + req.setContentType("multipart/form-data; boundary=01=23a.bC:D((e)d'z?p+o_r,e-"); + Dispatcher du = initDispatcher(Collections.emptyMap()); + du.prepare(req, res); + HttpServletRequest wrapped = du.wrapRequest(req); + + assertTrue(wrapped instanceof MultiPartRequestWrapper); + } + + public void testPrepareMultipartRequestIllegalCharacter() throws Exception { + MockHttpServletRequest req = new MockHttpServletRequest(); + MockHttpServletResponse res = new MockHttpServletResponse(); + + req.setMethod("post"); + req.setContentType("multipart/form-data; boundary=01=2;3a.bC:D((e)d'z?p+o_r,e-"); + Dispatcher du = initDispatcher(Collections.emptyMap()); + du.prepare(req, res); + HttpServletRequest wrapped = du.wrapRequest(req); + + assertFalse(wrapped instanceof MultiPartRequestWrapper); + } + public void testDispatcherListener() throws Exception { final DispatcherListenerState state = new DispatcherListenerState(); From f5ade7dc68a678151082a6f6abd9e309ddd4c317 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 26 Jul 2017 23:00:48 +0200 Subject: [PATCH 0131/2288] WW-4826 upgrade to ASM version 5.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 55dcfb82db..b916cc2554 100644 --- a/pom.xml +++ b/pom.xml @@ -85,7 +85,7 @@ ${project.version} 4.1.6.RELEASE 3.1.12 - 5.1 + 5.2 3.0.7 1.0.6 2.8.2 From 6f91d0776a545c911ca4f2875ed9976614711ef9 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Thu, 27 Jul 2017 22:22:33 +0300 Subject: [PATCH 0132/2288] Inject Container in constructor of the ObjectFactory --- .../java/com/opensymphony/xwork2/ObjectFactory.java | 12 ++++++------ .../xwork2/spring/SpringObjectFactory.java | 6 ++++++ .../xwork2/spring/SpringProxyableObjectFactory.java | 8 ++++++++ .../interceptor/ActionAutowiringInterceptor.java | 2 +- .../com/opensymphony/xwork2/ProxyObjectFactory.java | 8 ++++++++ .../ScopedModelDrivenInterceptorTest.java | 2 +- .../apache/struts2/dispatcher/DispatcherTest.java | 8 ++++++-- .../org/apache/struts2/cdi/CdiObjectFactory.java | 6 ++++-- .../org/apache/struts2/cdi/CdiObjectFactoryTest.java | 6 +++--- .../PackageBasedActionConfigBuilderTest.java | 9 ++++++--- .../apache/struts2/osgi/DelegatingObjectFactory.java | 5 +++++ .../apache/struts2/osgi/SpringOsgiObjectFactory.java | 6 ++++++ .../apache/struts2/plexus/PlexusObjectFactory.java | 6 ++++++ .../struts2/spring/StrutsSpringObjectFactory.java | 2 +- 14 files changed, 67 insertions(+), 19 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java index c5ffbb9d41..652ef94a80 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java @@ -49,7 +49,7 @@ public class ObjectFactory implements Serializable { private static final Logger LOG = LogManager.getLogger(ObjectFactory.class); private transient ClassLoader ccl; - private Container container; + private final Container container; private ActionFactory actionFactory; private ResultFactory resultFactory; @@ -58,15 +58,15 @@ public class ObjectFactory implements Serializable { private ConverterFactory converterFactory; private UnknownHandlerFactory unknownHandlerFactory; + @Inject + public ObjectFactory(Container container) { + this.container = container; + } + @Inject(value="objectFactory.classloader", required=false) public void setClassLoader(ClassLoader cl) { this.ccl = cl; } - - @Inject - public void setContainer(Container container) { - this.container = container; - } @Inject public void setActionFactory(ActionFactory actionFactory) { diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java index 51a47518a2..fffb037cd8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java @@ -16,6 +16,7 @@ package com.opensymphony.xwork2.spring; import com.opensymphony.xwork2.ObjectFactory; +import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.apache.commons.lang3.BooleanUtils; import org.apache.logging.log4j.LogManager; @@ -72,6 +73,11 @@ public void setEnableAopSupport(String enableAopSupport) { this.enableAopSupport = BooleanUtils.toBoolean(enableAopSupport); } + @Inject + public SpringObjectFactory(Container container) { + super(container); + } + /** * Set the Spring ApplicationContext that should be used to look beans up with. * diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java index ced75167c3..b6ec98625e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java @@ -23,6 +23,9 @@ import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.context.ApplicationContext; +import com.opensymphony.xwork2.inject.Container; +import com.opensymphony.xwork2.inject.Inject; + import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -38,6 +41,11 @@ public class SpringProxyableObjectFactory extends SpringObjectFactory { private List skipBeanNames = new ArrayList<>(); + @Inject + public SpringProxyableObjectFactory(Container container) { + super(container); + } + @Override public Object buildBean(String beanName, Map extraContext) throws Exception { LOG.debug("Building bean for name {}", beanName); diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java index 16286782c6..b3de475b3e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java @@ -106,7 +106,7 @@ public void setAutowireStrategy(Integer autowireStrategy) { LOG.warn("ApplicationContext could not be found. Action classes will not be autowired."); } else { setApplicationContext(applicationContext); - factory = new SpringObjectFactory(); + factory = new SpringObjectFactory(ActionContext.getContext().getContainer()); factory.setApplicationContext(getApplicationContext()); if (autowireStrategy != null) { factory.setAutowireStrategy(autowireStrategy); diff --git a/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java b/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java index 37821c8adc..93200ae5c2 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java +++ b/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java @@ -5,11 +5,19 @@ import java.lang.reflect.Proxy; import java.util.Map; +import com.opensymphony.xwork2.inject.Container; +import com.opensymphony.xwork2.inject.Inject; + /** * ObjectFactory that returns a FooProxy in the buildBean if the clazz is FooAction */ public class ProxyObjectFactory extends ObjectFactory { + @Inject + public ProxyObjectFactory(Container container) { + super(container); + } + /** * It returns an instance of the bean except if the class is FooAction. * In this case, it returns a FooProxy of it. diff --git a/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java b/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java index 9413f7583d..4f44aa2644 100644 --- a/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java @@ -36,7 +36,7 @@ public class ScopedModelDrivenInterceptorTest extends XWorkTestCase { public void setUp() throws Exception { super.setUp(); inter = new ScopedModelDrivenInterceptor(); - inter.setObjectFactory(new ProxyObjectFactory()); + inter.setObjectFactory(new ProxyObjectFactory(container)); } public void testResolveModel() throws Exception { diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index 4f043cb7ba..b920dcc09c 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -221,7 +221,6 @@ public void testConfigurationManager() { public void testObjectFactoryDestroy() throws Exception { - final InnerDestroyableObjectFactory destroyedObjectFactory = new InnerDestroyableObjectFactory(); ConfigurationManager cm = new ConfigurationManager(Container.DEFAULT_NAME); Dispatcher du = new MockDispatcher(new MockServletContext(), new HashMap(), cm); Mock mockConfiguration = new Mock(Configuration.class); @@ -231,6 +230,7 @@ public void testObjectFactoryDestroy() throws Exception { String reloadConfigs = container.getInstance(String.class, XWorkConstants.RELOAD_XML_CONFIGURATION); mockContainer.expectAndReturn("getInstance", C.args(C.eq(String.class), C.eq(XWorkConstants.RELOAD_XML_CONFIGURATION)), reloadConfigs); + final InnerDestroyableObjectFactory destroyedObjectFactory = new InnerDestroyableObjectFactory((Container) mockContainer.proxy()); mockContainer.expectAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), destroyedObjectFactory); mockConfiguration.expectAndReturn("getContainer", mockContainer.proxy()); @@ -261,7 +261,7 @@ public void testInterceptorDestroy() throws Exception { packageConfigs.put("test", packageConfig); Mock mockContainer = new Mock(Container.class); - mockContainer.matchAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), new ObjectFactory()); + mockContainer.matchAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), new ObjectFactory((Container) mockContainer.proxy())); String reloadConfigs = container.getInstance(String.class, XWorkConstants.RELOAD_XML_CONFIGURATION); mockContainer.expectAndReturn("getInstance", C.args(C.eq(String.class), C.eq(XWorkConstants.RELOAD_XML_CONFIGURATION)), reloadConfigs); @@ -316,6 +316,10 @@ class DispatcherListenerState { public static class InnerDestroyableObjectFactory extends ObjectFactory implements ObjectFactoryDestroyable { public boolean destroyed = false; + public InnerDestroyableObjectFactory(Container container) { + super(container); + } + public void destroy() { destroyed = true; } diff --git a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java index 91601b3592..b26581cfe7 100644 --- a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java +++ b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java @@ -20,6 +20,7 @@ package org.apache.struts2.cdi; import com.opensymphony.xwork2.ObjectFactory; +import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -73,8 +74,9 @@ public void setJndiKey( String jndiKey ) { Map, InjectionTarget> injectionTargetCache = new ConcurrentHashMap, InjectionTarget>(); - public CdiObjectFactory() { - super(); + @Inject + public CdiObjectFactory(Container container) { + super(container); LOG.info("Initializing Struts2 CDI integration..."); this.beanManager = findBeanManager(); if (beanManager != null) { diff --git a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java index f35ac55637..74c6f024a3 100644 --- a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java +++ b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java @@ -27,19 +27,19 @@ public void setUp() throws Exception { @Test public void testFindBeanManager() throws Exception { - assertNotNull(new CdiObjectFactory().findBeanManager()); + assertNotNull(new CdiObjectFactory(null).findBeanManager()); } @Test public void testGetBean() throws Exception { - final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(); + final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(null); FooConsumer fooConsumer = (FooConsumer) cdiObjectFactory.buildBean(FooConsumer.class.getCanonicalName(), null, false); assertNotNull(fooConsumer); assertNotNull(fooConsumer.fooService); } @Test public void testGetInjectionTarget() throws Exception { - final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(); + final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(null); final InjectionTarget injectionTarget = cdiObjectFactory.getInjectionTarget(FooConsumer.class); assertNotNull(injectionTarget); assertTrue(cdiObjectFactory.injectionTargetCache.containsKey(FooConsumer.class)); diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java index dfa1ad6223..f6bbbcc1d2 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java @@ -338,7 +338,7 @@ public Container getContainer() { configuration.addPackageConfig("class-level", classLevelParentPkg); ActionNameBuilder actionNameBuilder = new SEOActionNameBuilder("true", "-"); - ObjectFactory of = new ObjectFactory(); + ObjectFactory of = new ObjectFactory(mockContainer); DefaultInterceptorMapBuilder interceptorBuilder = new DefaultInterceptorMapBuilder(); interceptorBuilder.setConfiguration(configuration); @@ -778,8 +778,9 @@ public T getInstance(Class type) { if (type == FileManagerFactory.class) { return (T) fileManagerFactory; } - T obj = type.newInstance(); - if (obj instanceof ObjectFactory) { + T obj; + if (type == ObjectFactory.class) { + obj = type.getConstructor(Container.class).newInstance(this); OgnlReflectionProvider rp = new OgnlReflectionProvider() { @Override @@ -809,6 +810,8 @@ public void setProperty(String name, Object value, Object o, Map ((ObjectFactory) obj).setInterceptorFactory(dif); ((ObjectFactory) obj).setResultFactory(drf); + } else { + obj = type.newInstance(); } return obj; } catch (Exception e) { diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java index 079e257f12..ed82d1bf92 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java @@ -35,6 +35,11 @@ public class DelegatingObjectFactory extends ObjectFactory implements ObjectFact private BundleAccessor bundleResourceLoader; private OsgiConfigurationProvider osgiConfigurationProvider; + @Inject + public DelegatingObjectFactory(Container container) { + super(container); + } + @Inject public void setDelegateObjectFactory(@Inject Container container, @Inject("struts.objectFactory.delegate") String delegate) { diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java index 3cebb328e4..ac596e22e8 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java @@ -23,6 +23,7 @@ import com.opensymphony.xwork2.ObjectFactory; import com.opensymphony.xwork2.util.ClassLoaderUtil; +import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.osgi.framework.ServiceReference; @@ -38,6 +39,11 @@ public class SpringOsgiObjectFactory extends ObjectFactory { private BundleAccessor bundleAccessor; + @Inject + public SpringOsgiObjectFactory(Container container) { + super(container); + } + public Object buildBean(String className, Map extraContext, boolean injectInternal) throws Exception { if (containsBean(className)) return getBean(className); diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java index 506850fab7..7131f579d5 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java @@ -28,6 +28,7 @@ import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.config.entities.InterceptorConfig; import com.opensymphony.xwork2.config.entities.ResultConfig; +import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.Interceptor; import org.apache.logging.log4j.Logger; @@ -80,6 +81,11 @@ public class PlexusObjectFactory extends ObjectFactory { private PlexusContainer base; private ReflectionProvider reflectionProvider; + @Inject + public PlexusObjectFactory(Container container) { + super(container); + } + @Inject public void setReflectionProvider(ReflectionProvider reflectionProvider) { this.reflectionProvider = reflectionProvider; diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java index 83b2853414..cd524dd150 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java @@ -71,7 +71,7 @@ public StrutsSpringObjectFactory( @Inject(StrutsConstants.STRUTS_DEVMODE) String devMode, @Inject Container container) { - super(); + super(container); boolean useClassCache = BooleanUtils.toBoolean(useClassCacheStr); LOG.info("Initializing Struts-Spring integration..."); From 91ae3448c0db69b1323826a940dd8c89aa1bec53 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 28 Jul 2017 10:54:55 +0200 Subject: [PATCH 0133/2288] Drops deprecated dependency --- pom.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pom.xml b/pom.xml index b916cc2554..b3c9328250 100644 --- a/pom.xml +++ b/pom.xml @@ -470,11 +470,6 @@ struts2-osgi-demo-bundle ${project.version} - - org.apache.struts - struts2-java8-support-plugin - ${project.version} - org.freemarker From 8cc56b2974e5c744954b110e645f61f18e0b12ab Mon Sep 17 00:00:00 2001 From: thrawnca Date: Tue, 1 Aug 2017 11:51:20 +1000 Subject: [PATCH 0134/2288] [WW-4831] convert nulls within arrays to empty strings rather than the 4 letters 'null' --- .../opensymphony/xwork2/conversion/impl/StringConverter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 61d2516afb..d8895e8c2a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -14,6 +14,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Objects; public class StringConverter extends DefaultTypeConverter { @@ -69,7 +70,7 @@ protected String convertToString(Locale locale, Object value) { } return format.format(value); } else { - return String.valueOf(value); + return Objects.toString(value, null); } } From 60d61fac0abb5993977e84f8dcc5bea6588f41d6 Mon Sep 17 00:00:00 2001 From: thrawnca Date: Tue, 1 Aug 2017 11:51:37 +1000 Subject: [PATCH 0135/2288] [WW-4831] add unit tests for conversion of String arrays --- .../conversion/impl/StringConverterTest.java | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index c275669825..27fbb6bc50 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -49,4 +49,30 @@ public void testBigDecimalToStringConversionPL() throws Exception { assertEquals("234,12", value); } -} \ No newline at end of file + public void testStringArrayToStringConversion() { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, new String[] {"foo", "baz"}, null); + + // then + assertEquals("foo, baz", value); + } + + public void testArrayOfNullToStringConversion() { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when + Object value = converter.convertValue(context, null, null, null, new String[] {null}, null); + + // then + assertEquals("", value); + } + +} From 8df5a897f61f3ef45c36fdd9275e66669ae4516c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 1 Aug 2017 11:29:23 +0200 Subject: [PATCH 0136/2288] Uses better regex to improve performance --- .../validator/validators/URLValidator.java | 10 +++---- .../xwork2/validator/URLValidatorTest.java | 26 +++++++++++++++++++ 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index eab0fa8a47..6cf58ef24c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -49,18 +49,18 @@ public class URLValidator extends FieldValidatorSupport { private static final Logger LOG = LogManager.getLogger(URLValidator.class); public static final String DEFAULT_URL_REGEX = "^(https?|ftp):\\/\\/" + - "(([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=-]|%[0-9a-f]{2})+" + - "(:([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=-]|%[0-9a-f]{2})+)?" + + "(([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=\\-]|%[0-9a-f]{2})+" + + "(:([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=\\-]|%[0-9a-f]{2})+)?" + "@)?(#?" + ")((([a-z0-9]\\.|[a-z0-9][a-z0-9-]*[a-z0-9]\\.)*" + "[a-z][a-z0-9-]*[a-z0-9]" + "|((\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])\\.){3}" + "(\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])" + ")(:\\d+)?" + - ")(((\\/{0,1}([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)*" + - "(\\?([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)" + + ")(((\\/([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-]|%[0-9a-f]{2})*)*" + + "(\\?([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-\\/\\:]|%[0-9a-f]{2})*)" + "?)?)?" + - "(#([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)?" + + "(#([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-]|%[0-9a-f]{2})*)?" + "$"; private String urlRegexExpression; diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java index 5c83dd1fcb..baa2bb1ca0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java @@ -160,6 +160,32 @@ public void testValidUrlWithDefaultRegex() throws Exception { assertTrue(pattern.matcher("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F").matches()); assertTrue(UrlValidator.getInstance().isValid("http://netsol-underconstruction-page-monitor-1.com/__media__/js/netsoltrademark.php?d=www.le-soutien-scolaire.fr%2Favis-et-test-comparatifs-des-robots-multifonctions%2F")); + + //this will cause test to hang indefinitely using JDK 1.8.0_121, Struts 2.5.10.1 and JUnit 4.5 + assertTrue(pattern.matcher("http://www.javaroad.jp/news/redirect.jsp?link=http://www.forum-course-de-cote.com/que-penser-dune-trottinette-electrique/").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://www.javaroad.jp/news/redirect.jsp?link=http://www.forum-course-de-cote.com/que-penser-dune-trottinette-electrique/")); + + //this will cause test to hang indefinitely using JDK 1.8.0_121, Struts 2.5.10.1 and JUnit 4.5 + assertTrue(pattern.matcher("http://wargame.ch/wc/acw/sub/aotm/guestbook/index.php?page3D183EClearwater20Roofing20Contractors3C/a3E3Ekaldu20non20msg3C/a3E").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://wargame.ch/wc/acw/sub/aotm/guestbook/index.php?page3D183EClearwater20Roofing20Contractors3C/a3E3Ekaldu20non20msg3C/a3E")); + } + + public void testLongRunningValidations() throws Exception { + URLValidator validator = new URLValidator(); + + Pattern pattern = Pattern.compile(validator.getUrlRegex(), Pattern.CASE_INSENSITIVE); + + long time = System.currentTimeMillis(); + assertFalse(pattern.matcher("ftp://aaaaaaaaaaaaaaaaaaaaaaaa|").matches()); + assertTrue("Validation did not complete in half a second", System.currentTimeMillis() - time < 500); + + time = System.currentTimeMillis(); + assertFalse(pattern.matcher("ftp://bbbbbbbbbbbbbbbbbbbbbbbb}").matches()); + assertTrue("Validation did not complete in half a second", System.currentTimeMillis() - time < 500); + + time = System.currentTimeMillis(); + assertFalse(pattern.matcher("ftp://cccccccccccccccccccccccc{").matches()); + assertTrue("Validation did not complete in half a second", System.currentTimeMillis() - time < 500); } public void testValidUrlCaseInsensitive() throws Exception { From d29caba5eedf463a0c4f748d50a23cd69ab92cde Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 1 Aug 2017 11:41:48 +0200 Subject: [PATCH 0137/2288] Upgrades to OGNL 3.1.15 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b3c9328250..4f757ab13a 100644 --- a/pom.xml +++ b/pom.xml @@ -84,7 +84,7 @@ ${project.version} 4.1.6.RELEASE - 3.1.12 + 3.1.15 5.2 3.0.7 1.0.6 From 9d47af6ffa355977b5acc713e6d1f25fac260a28 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Tue, 1 Aug 2017 17:33:53 +0200 Subject: [PATCH 0138/2288] WW-4834 Improve RegEx used to validate URLs --- .../validator/validators/URLValidator.java | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index 6cf58ef24c..b61f786f4a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -48,19 +48,18 @@ public class URLValidator extends FieldValidatorSupport { private static final Logger LOG = LogManager.getLogger(URLValidator.class); - public static final String DEFAULT_URL_REGEX = "^(https?|ftp):\\/\\/" + - "(([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=\\-]|%[0-9a-f]{2})+" + - "(:([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=\\-]|%[0-9a-f]{2})+)?" + - "@)?(#?" + - ")((([a-z0-9]\\.|[a-z0-9][a-z0-9-]*[a-z0-9]\\.)*" + + public static final String DEFAULT_URL_REGEX = "^(?:https?|ftp)://" + + "(?:(?:[a-z0-9$_.+!*'(),;?&=\\-]|%[0-9a-f]{2})+" + + "(?::(?:[a-z0-9$_.+!*'(),;?&=\\-]|%[0-9a-f]{2})+)?" + + "@)?#?" + + "(?:(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)*" + "[a-z][a-z0-9-]*[a-z0-9]" + - "|((\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])\\.){3}" + - "(\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])" + - ")(:\\d+)?" + - ")(((\\/([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-]|%[0-9a-f]{2})*)*" + - "(\\?([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-\\/\\:]|%[0-9a-f]{2})*)" + - "?)?)?" + - "(#([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=\\-]|%[0-9a-f]{2})*)?" + + "|(?:[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5]\\.){3}" + + "[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5]" + + ")(?::\\d+)?" + + ")(?:(?:/(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)*" + + "(?:\\?(?:[a-z0-9$_.+!*'(),;:@&=\\-/:]|%[0-9a-f]{2})*)?)?" + + "(?:#(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)?" + "$"; private String urlRegexExpression; From 8a04e80f01350c90f053d71366d5e0c2186fded5 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 2 Aug 2017 09:31:11 +0200 Subject: [PATCH 0139/2288] WW-4834 fixed faulty regex --- .../opensymphony/xwork2/validator/validators/URLValidator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index b61f786f4a..2727723be7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -54,7 +54,7 @@ public class URLValidator extends FieldValidatorSupport { "@)?#?" + "(?:(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)*" + "[a-z][a-z0-9-]*[a-z0-9]" + - "|(?:[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5]\\.){3}" + + "|(?:(?:[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}" + "[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5]" + ")(?::\\d+)?" + ")(?:(?:/(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)*" + From 2f690cfe6260ccdf3aa617baf65a4b836c49cf65 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 2 Aug 2017 14:56:09 +0200 Subject: [PATCH 0140/2288] Adds new methods and marks current as deprecated --- .../struts2/rest/handler/ContentTypeHandler.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java index 7dca16a7fa..a01557e57c 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java @@ -21,6 +21,8 @@ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.ActionInvocation; + import java.io.IOException; import java.io.Reader; import java.io.Writer; @@ -35,9 +37,14 @@ public interface ContentTypeHandler { * @param in The input stream, usually the body of the request * @param target The target, usually the action class * @throws IOException If unable to write to the output stream + * + * @deprecated use version which requires {@link ActionInvocation} */ + @Deprecated void toObject(Reader in, Object target) throws IOException; - + + void toObject(ActionInvocation invocation, Reader in, Object target) throws IOException; + /** * Writes content to the stream * @@ -46,9 +53,14 @@ public interface ContentTypeHandler { * @param stream The output stream, usually the response * @return The new result code * @throws IOException If unable to write to the output stream + * + * @deprecated use version which requires {@link ActionInvocation} */ + @Deprecated String fromObject(Object obj, String resultCode, Writer stream) throws IOException; - + + String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer stream) throws IOException; + /** * Gets the content type for this handler * From 3bd072ca053aed787f3a16865266d8832fcd18b0 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 2 Aug 2017 14:58:15 +0200 Subject: [PATCH 0141/2288] Adds an abstract layer to allow easily handle API change --- .../handler/AbstractContentTypeHandler.java | 44 +++++++++++++++++++ .../rest/handler/FormUrlEncodedHandler.java | 8 ++-- .../struts2/rest/handler/HtmlHandler.java | 8 ++-- .../rest/handler/JacksonLibHandler.java | 7 +-- .../struts2/rest/handler/JsonLibHandler.java | 7 +-- .../handler/MultipartFormDataHandler.java | 8 ++-- .../struts2/rest/handler/XStreamHandler.java | 7 +-- 7 files changed, 71 insertions(+), 18 deletions(-) create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java new file mode 100644 index 0000000000..ae9b3b8c86 --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java @@ -0,0 +1,44 @@ +/* + * 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 org.apache.struts2.rest.handler; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; + +abstract public class AbstractContentTypeHandler implements ContentTypeHandler { + + private static final Logger LOG = LogManager.getLogger(AbstractContentTypeHandler.class); + + @Override + public void toObject(Reader in, Object target) throws IOException { + LOG.warn("This method is deprecated!"); + } + + @Override + public String fromObject(Object obj, String resultCode, Writer stream) throws IOException { + LOG.warn("This method is deprecated!"); + return null; + } + +} diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java index 90a08b806b..835fb89aa2 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java @@ -20,6 +20,8 @@ */ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.ActionInvocation; + import java.io.Writer; import java.io.IOException; import java.io.Reader; @@ -34,11 +36,11 @@ * @see
http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4 * */ -public class FormUrlEncodedHandler implements ContentTypeHandler { +public class FormUrlEncodedHandler extends AbstractContentTypeHandler { public static final String CONTENT_TYPE = "application/x-www-form-urlencoded"; - public String fromObject(Object obj, String resultCode, Writer out) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer out) throws IOException { throw new IOException("Conversion from Object to '"+getContentType()+"' is not supported"); } @@ -48,7 +50,7 @@ public String fromObject(Object obj, String resultCode, Writer out) throws IOExc * @param in The input stream, usually the body of the request * @param target The target, usually the action class */ - public void toObject(Reader in, Object target) { + public void toObject(ActionInvocation invocation, Reader in, Object target) { } /** diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java index 32161fcc53..94709e1ac8 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java @@ -21,6 +21,8 @@ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.ActionInvocation; + import java.io.IOException; import java.io.Reader; import java.io.Writer; @@ -28,13 +30,13 @@ /** * Handles HTML content, usually just a simple passthrough to the framework */ -public class HtmlHandler implements ContentTypeHandler { +public class HtmlHandler extends AbstractContentTypeHandler { - public String fromObject(Object obj, String resultCode, Writer out) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer out) throws IOException { return resultCode; } - public void toObject(Reader in, Object target) { + public void toObject(ActionInvocation invocation, Reader in, Object target) { } public String getExtension() { diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java index 0621cd745b..dd9dee3bfc 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java @@ -24,6 +24,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectReader; import com.fasterxml.jackson.databind.SerializationFeature; +import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.inject.Inject; import org.apache.struts2.StrutsConstants; @@ -34,19 +35,19 @@ /** * Handles JSON content using jackson-lib */ -public class JacksonLibHandler implements ContentTypeHandler { +public class JacksonLibHandler extends AbstractContentTypeHandler { private static final String DEFAULT_CONTENT_TYPE = "application/json"; private String defaultEncoding = "ISO-8859-1"; private ObjectMapper mapper = new ObjectMapper(); - public void toObject(Reader in, Object target) throws IOException { + public void toObject(ActionInvocation invocation, Reader in, Object target) throws IOException { mapper.configure(SerializationFeature.WRITE_NULL_MAP_VALUES, false); ObjectReader or = mapper.readerForUpdating(target); or.readValue(in); } - public String fromObject(Object obj, String resultCode, Writer stream) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer stream) throws IOException { mapper.configure(SerializationFeature.WRITE_NULL_MAP_VALUES, false); mapper.writeValue(stream, obj); return null; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java index 5bc07491bc..4bd96c72f1 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java @@ -26,6 +26,7 @@ import java.io.Writer; import java.util.Collection; +import com.opensymphony.xwork2.ActionInvocation; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import net.sf.json.JsonConfig; @@ -37,12 +38,12 @@ /** * Handles JSON content using json-lib */ -public class JsonLibHandler implements ContentTypeHandler { +public class JsonLibHandler extends AbstractContentTypeHandler { private static final String DEFAULT_CONTENT_TYPE = "application/json"; private String defaultEncoding = "ISO-8859-1"; - public void toObject(Reader in, Object target) throws IOException { + public void toObject(ActionInvocation invocation, Reader in, Object target) throws IOException { StringBuilder sb = new StringBuilder(); char[] buffer = new char[1024]; int len = 0; @@ -63,7 +64,7 @@ public void toObject(Reader in, Object target) throws IOException { } } - public String fromObject(Object obj, String resultCode, Writer stream) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer stream) throws IOException { if (obj != null) { if (isArray(obj)) { JSONArray jsonArray = JSONArray.fromObject(obj); diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java index affef17c79..cceaeddc25 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java @@ -20,6 +20,8 @@ */ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.ActionInvocation; + import java.io.Writer; import java.io.IOException; import java.io.Reader; @@ -34,11 +36,11 @@ * * @see http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4 */ -public class MultipartFormDataHandler implements ContentTypeHandler { +public class MultipartFormDataHandler extends AbstractContentTypeHandler { public static final String CONTENT_TYPE = "multipart/form-data"; - public String fromObject(Object obj, String resultCode, Writer out) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer out) throws IOException { throw new IOException("Conversion from Object to '"+getContentType()+"' is not supported"); } @@ -48,7 +50,7 @@ public String fromObject(Object obj, String resultCode, Writer out) throws IOExc * @param in The input stream, usually the body of the request * @param target The target, usually the action class */ - public void toObject(Reader in, Object target) { + public void toObject(ActionInvocation invocation, Reader in, Object target) { } /** diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java index 94be7af88d..5650702b35 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java @@ -21,6 +21,7 @@ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.ActionInvocation; import com.thoughtworks.xstream.XStream; import java.io.IOException; @@ -30,9 +31,9 @@ /** * Handles XML content */ -public class XStreamHandler implements ContentTypeHandler { +public class XStreamHandler extends AbstractContentTypeHandler { - public String fromObject(Object obj, String resultCode, Writer out) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer out) throws IOException { if (obj != null) { XStream xstream = createXStream(); xstream.toXML(obj, out); @@ -40,7 +41,7 @@ public String fromObject(Object obj, String resultCode, Writer out) throws IOExc return null; } - public void toObject(Reader in, Object target) { + public void toObject(ActionInvocation invocation, Reader in, Object target) { XStream xstream = createXStream(); xstream.fromXML(in, target); } From a64da53d5770c5404ee5eb390b826f5733171f5f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 2 Aug 2017 14:59:54 +0200 Subject: [PATCH 0142/2288] Updates flow to handle new API --- .../org/apache/struts2/rest/ContentTypeHandlerManager.java | 7 +++++++ .../org/apache/struts2/rest/ContentTypeInterceptor.java | 2 +- .../java/org/apache/struts2/rest/RestActionInvocation.java | 2 +- .../org/apache/struts2/rest/RestWorkflowInterceptor.java | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java index 5b81a9720b..a7af101dff 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java @@ -21,6 +21,7 @@ package org.apache.struts2.rest; +import com.opensymphony.xwork2.ActionInvocation; import org.apache.struts2.rest.handler.ContentTypeHandler; import javax.servlet.http.HttpServletRequest; @@ -59,10 +60,16 @@ public interface ContentTypeHandlerManager { * @param target The object to return, usually the action object * @return The new result code to process * @throws IOException If unable to write to the response + * + * @deprecated use version which requires {@link ActionInvocation} */ + @Deprecated String handleResult(ActionConfig actionConfig, Object methodResult, Object target) throws IOException; + String handleResult(ActionInvocation actionInvocation, Object methodResult, Object target) + throws IOException; + /** * Finds the extension in the url * diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java index 01340a7365..8a194edef1 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java @@ -57,7 +57,7 @@ public String intercept(ActionInvocation invocation) throws Exception { if (request.getContentLength() > 0) { InputStream is = request.getInputStream(); InputStreamReader reader = new InputStreamReader(is); - handler.toObject(reader, target); + handler.toObject(invocation, reader, target); } return invocation.invoke(); } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java index c5a687f5be..c71fabaebb 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java @@ -224,7 +224,7 @@ private void executeResult() throws Exception { if (handler != null && !(handler instanceof HtmlHandler)) { // Specific representation (json, xml...) - resultCode = handlerSelector.handleResult(this.getProxy().getConfig(), httpHeaders, target); + resultCode = handlerSelector.handleResult(this, httpHeaders, target); } else { // Normal struts execution (html o other struts result) findResult(); diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java index 0b2ac07f52..8d2f34621c 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java @@ -221,7 +221,7 @@ protected String doIntercept(ActionInvocation invocation) throws Exception { errors.put("actionErrors", validationAwareAction.getActionErrors()); errors.put("fieldErrors", validationAwareAction.getFieldErrors()); - return manager.handleResult(invocation.getProxy().getConfig(), info, errors); + return manager.handleResult(invocation, info, errors); } } From ee5575d0c6b24b7109b6977542bfcc0fac8f85d3 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 2 Aug 2017 15:00:01 +0200 Subject: [PATCH 0143/2288] Updates tests --- .../DefaultContentTypeHandlerManager.java | 21 ++++++++++++++---- .../rest/ContentTypeHandlerManagerTest.java | 22 ++++++++++++++----- .../DefaultContentTypeHandlerManagerTest.java | 8 ++++--- .../rest/RestWorkflowInterceptorTest.java | 1 - .../rest/handler/JacksonLibHandlerTest.java | 9 ++++---- .../rest/handler/JsonLibHandlerTest.java | 7 +++--- 6 files changed, 48 insertions(+), 20 deletions(-) diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java index dba7d1306c..02a314acb3 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java @@ -21,9 +21,12 @@ package org.apache.struts2.rest; +import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.struts2.ServletActionContext; import org.apache.struts2.rest.handler.ContentTypeHandler; @@ -41,6 +44,8 @@ */ public class DefaultContentTypeHandlerManager implements ContentTypeHandlerManager { + private static final Logger LOG = LogManager.getLogger(DefaultContentTypeHandlerManager.class); + /** ContentTypeHandlers keyed by the extension */ Map handlersByExtension = new HashMap(); /** ContentTypeHandlers keyed by the content-type */ @@ -115,7 +120,7 @@ public ContentTypeHandler getHandlerForRequest(HttpServletRequest request) { /** * Gets the handler for the response by looking at the extension of the request - * @param req The request + * @param request The request * @return The appropriate handler * * WW-4588: modified to get a handler for the response side and auto generate the response type @@ -153,20 +158,28 @@ private ContentTypeHandler findHandler(final String type) { return handler; } + @Override + public String handleResult(ActionConfig actionConfig, Object methodResult, Object target) throws IOException { + LOG.warn("This method is deprecated!"); + return readResultCode(methodResult); + } + /** * Handles the result using handlers to generate content type-specific content * - * @param actionConfig The action config for the current request + * @param invocation The action invocation for the current request * @param methodResult The object returned from the action method * @param target The object to return, usually the action object * @return The new result code to process * @throws IOException If unable to write to the response */ - public String handleResult(ActionConfig actionConfig, Object methodResult, Object target) throws IOException { + public String handleResult(ActionInvocation invocation, Object methodResult, Object target) throws IOException { String resultCode = readResultCode(methodResult); Integer statusCode = readStatusCode(methodResult); HttpServletRequest req = ServletActionContext.getRequest(); HttpServletResponse res = ServletActionContext.getResponse(); + ActionConfig actionConfig = invocation.getProxy().getConfig(); + if(statusCode != null) { res.setStatus(statusCode); } @@ -178,7 +191,7 @@ public String handleResult(ActionConfig actionConfig, Object methodResult, Objec resultCode = extCode; } else { StringWriter writer = new StringWriter(); - resultCode = handler.fromObject(target, resultCode, writer); + resultCode = handler.fromObject(invocation, target, resultCode, writer); String text = writer.toString(); if (text.length() > 0) { byte[] data = text.getBytes("UTF-8"); diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java index 6d0e1e8b73..6bad14a092 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java @@ -24,10 +24,14 @@ import com.mockobjects.dynamic.C; import com.mockobjects.dynamic.Mock; import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.inject.Container; +import com.opensymphony.xwork2.mock.MockActionInvocation; +import com.opensymphony.xwork2.mock.MockActionProxy; import junit.framework.TestCase; import org.apache.struts2.ServletActionContext; +import org.apache.struts2.rest.handler.AbstractContentTypeHandler; import org.apache.struts2.rest.handler.ContentTypeHandler; import org.apache.struts2.rest.handler.FormUrlEncodedHandler; import org.springframework.mock.web.MockHttpServletRequest; @@ -49,6 +53,7 @@ public class ContentTypeHandlerManagerTest extends TestCase { private DefaultContentTypeHandlerManager mgr; private MockHttpServletResponse mockResponse; private MockHttpServletRequest mockRequest; + private MockActionInvocation invocation; @Override public void setUp() { @@ -59,6 +64,9 @@ public void setUp() { ActionContext.setContext(new ActionContext(new HashMap())); ServletActionContext.setRequest(mockRequest); ServletActionContext.setResponse(mockResponse); + + invocation = new MockActionInvocation(); + invocation.setProxy(new MockActionProxy()); } @Override @@ -71,9 +79,9 @@ public void tearDown() { public void testHandleResultOK() throws IOException { String obj = "mystring"; - ContentTypeHandler handler = new ContentTypeHandler() { - public void toObject(Reader in, Object target) {} - public String fromObject(Object obj, String resultCode, Writer stream) throws IOException { + ContentTypeHandler handler = new AbstractContentTypeHandler() { + public void toObject(ActionInvocation invocation, Reader in, Object target) {} + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer stream) throws IOException { stream.write(obj.toString()); return resultCode; } @@ -82,7 +90,11 @@ public String fromObject(Object obj, String resultCode, Writer stream) throws IO }; mgr.handlersByExtension.put("xml", handler); mgr.setDefaultExtension("xml"); - mgr.handleResult(new ActionConfig.Builder("", "", "").build(), new DefaultHttpHeaders().withStatus(SC_OK), obj); + ActionConfig actionConfig = new ActionConfig.Builder("", "", "").build(); + MockActionProxy proxy = new MockActionProxy(); + proxy.setConfig(actionConfig); + invocation.setProxy(proxy); + mgr.handleResult(invocation, new DefaultHttpHeaders().withStatus(SC_OK), obj); assertEquals(obj.getBytes().length, mockResponse.getContentLength()); } @@ -92,7 +104,7 @@ public void testHandleResultNotModified() throws IOException { Mock mockHandlerXml = new Mock(ContentTypeHandler.class); mockHandlerXml.matchAndReturn("getExtension", "xml"); mgr.handlersByExtension.put("xml", (ContentTypeHandler) mockHandlerXml.proxy()); - mgr.handleResult(null, new DefaultHttpHeaders().withStatus(SC_NOT_MODIFIED), new Object()); + mgr.handleResult(invocation, new DefaultHttpHeaders().withStatus(SC_NOT_MODIFIED), new Object()); assertEquals(0, mockResponse.getContentLength()); } diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java index 7904f7d9ca..d230ce6f76 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java @@ -1,8 +1,10 @@ package org.apache.struts2.rest; +import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.XWorkTestCase; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Scope; +import org.apache.struts2.rest.handler.AbstractContentTypeHandler; import org.apache.struts2.rest.handler.ContentTypeHandler; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.mock.web.MockHttpServletResponse; @@ -113,13 +115,13 @@ class DummyContainer implements Container { private ContentTypeHandler handler; DummyContainer(final String contentType, final String extension) { - handler = new ContentTypeHandler() { + handler = new AbstractContentTypeHandler() { - public void toObject(Reader in, Object target) throws IOException { + public void toObject(ActionInvocation invocation, Reader in, Object target) throws IOException { } - public String fromObject(Object obj, String resultCode, Writer stream) throws IOException { + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer stream) throws IOException { return null; } diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java index a7fe9b2007..f061938289 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java @@ -44,7 +44,6 @@ public void testCustomValidationFailureStatusCode() throws Exception { Mock mockActionInvocation = new Mock(ActionInvocation.class); Mock mockActionProxy = new Mock(ActionProxy.class); mockActionProxy.expectAndReturn("getConfig", null); - mockActionInvocation.expectAndReturn("getProxy", mockActionProxy.proxy()); mockActionInvocation.expectAndReturn("getAction", action); Mock mockContentTypeHandlerManager = new Mock(ContentTypeHandlerManager.class); mockContentTypeHandlerManager.expectAndReturn("handleResult", new AnyConstraintMatcher() { diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java index ebdda71870..a45208bc4d 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java @@ -21,6 +21,7 @@ package org.apache.struts2.rest.handler; +import com.opensymphony.xwork2.mock.MockActionInvocation; import junit.framework.TestCase; import java.io.IOException; @@ -37,7 +38,7 @@ public void testFromObject() throws IOException { StringWriter writer = new StringWriter(); JacksonLibHandler handler = new JacksonLibHandler(); - handler.fromObject(contact, "success", writer); + handler.fromObject(new MockActionInvocation(), contact, "success", writer); String data = writer.toString(); assertTrue(data.startsWith("{")); assertTrue(data.contains("\"age\":44")); @@ -50,7 +51,7 @@ public void testFromObjectArray() throws IOException { StringWriter writer = new StringWriter(); JacksonLibHandler handler = new JacksonLibHandler(); - handler.fromObject(Arrays.asList(contact), "success", writer); + handler.fromObject(new MockActionInvocation(), Arrays.asList(contact), "success", writer); String data = writer.toString(); assertTrue(data.startsWith("[{")); @@ -65,7 +66,7 @@ public void testToObject() throws IOException { Contact target = new Contact(); StringReader reader = new StringReader("{\"age\":44,\"important\":true,\"name\":\"bob\"}"); JacksonLibHandler handler = new JacksonLibHandler(); - handler.toObject(reader, target); + handler.toObject(new MockActionInvocation(), reader, target); assertEquals(contact, target); } @@ -78,7 +79,7 @@ public void testToObjectList() throws IOException { List target = new ArrayList(); StringReader reader = new StringReader("[{\"age\":44,\"important\":true,\"name\":\"bob\"},{\"age\":33,\"important\":false,\"name\":\"john\"}]"); JacksonLibHandler handler = new JacksonLibHandler(); - handler.toObject(reader, target); + handler.toObject(new MockActionInvocation(), reader, target); assertEquals(source.size(), target.size()); } diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java index 1bf74d2aa3..dd7470cb2e 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java @@ -26,6 +26,7 @@ import java.io.StringWriter; import java.util.Arrays; +import com.opensymphony.xwork2.mock.MockActionInvocation; import junit.framework.TestCase; public class JsonLibHandlerTest extends TestCase { @@ -35,7 +36,7 @@ public void testFromObject() throws IOException { StringWriter writer = new StringWriter(); JsonLibHandler handler = new JsonLibHandler(); - handler.fromObject(contact, "success", writer); + handler.fromObject(new MockActionInvocation(), contact, "success", writer); String data = writer.toString(); assertTrue(data.startsWith("{")); assertTrue(data.contains("\"age\":44")); @@ -48,7 +49,7 @@ public void testFromObjectArray() throws IOException { StringWriter writer = new StringWriter(); JsonLibHandler handler = new JsonLibHandler(); - handler.fromObject(Arrays.asList(contact), "success", writer); + handler.fromObject(new MockActionInvocation(), Arrays.asList(contact), "success", writer); String data = writer.toString(); assertTrue(data.startsWith("[{")); @@ -63,7 +64,7 @@ public void testToObject() throws IOException { Contact target = new Contact(); StringReader reader = new StringReader("{\"age\":44,\"important\":true,\"name\":\"bob\"}"); JsonLibHandler handler = new JsonLibHandler(); - handler.toObject(reader, target); + handler.toObject(new MockActionInvocation(), reader, target); assertEquals(contact, target); } From 8216ec1c4d2d1f558558b2464bbcdcd1efe86bc7 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 2 Aug 2017 15:09:03 +0200 Subject: [PATCH 0144/2288] WW-4836 Upgrades xstream lib to the latest version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4f757ab13a..9473b9c1ca 100644 --- a/pom.xml +++ b/pom.xml @@ -882,7 +882,7 @@ com.thoughtworks.xstream xstream - 1.4.8 + 1.4.10 From 5678ff74b38b904accf0dae5f8bb27d9a2e51690 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 3 Aug 2017 09:04:25 +0200 Subject: [PATCH 0145/2288] Uses proper class as converter Closes #155 --- .../FieldValidatorsExampleAction-conversion.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-conversion.properties b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-conversion.properties index 2f970dc18b..92859c7638 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-conversion.properties +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-conversion.properties @@ -1 +1 @@ -dateValidatorField=java.util.Date \ No newline at end of file +dateValidatorField=org.apache.struts2.showcase.chat.DateConverter From 418a20c0594f23764fe29ced400c1219239899a8 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Thu, 3 Aug 2017 18:49:22 +0200 Subject: [PATCH 0146/2288] further fixed faulty RegEx: missing grouping for last number in ip-address and escaped '/' to work in javascript --- .../xwork2/validator/validators/URLValidator.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index 2727723be7..a75b5a58f6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -48,17 +48,17 @@ public class URLValidator extends FieldValidatorSupport { private static final Logger LOG = LogManager.getLogger(URLValidator.class); - public static final String DEFAULT_URL_REGEX = "^(?:https?|ftp)://" + + public static final String DEFAULT_URL_REGEX = "^(?:https?|ftp):\\/\\/" + "(?:(?:[a-z0-9$_.+!*'(),;?&=\\-]|%[0-9a-f]{2})+" + "(?::(?:[a-z0-9$_.+!*'(),;?&=\\-]|%[0-9a-f]{2})+)?" + "@)?#?" + "(?:(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)*" + "[a-z][a-z0-9-]*[a-z0-9]" + "|(?:(?:[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}" + - "[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5]" + + "(?:[1-9]?\\d|1\\d{2}|2[0-4]\\d|25[0-5])" + ")(?::\\d+)?" + - ")(?:(?:/(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)*" + - "(?:\\?(?:[a-z0-9$_.+!*'(),;:@&=\\-/:]|%[0-9a-f]{2})*)?)?" + + ")(?:(?:\\/(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)*" + + "(?:\\?(?:[a-z0-9$_.+!*'(),;:@&=\\-\\/:]|%[0-9a-f]{2})*)?)?" + "(?:#(?:[a-z0-9$_.+!*'(),;:@&=\\-]|%[0-9a-f]{2})*)?" + "$"; From 13828056b47a25e7ddee80a042a6a8d3b670ff32 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Thu, 3 Aug 2017 19:01:14 +0200 Subject: [PATCH 0147/2288] added tests for valid urls with default regex consisting of ip-address --- .../xwork2/validator/URLValidatorTest.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java index baa2bb1ca0..3a39573b0c 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/URLValidatorTest.java @@ -168,6 +168,19 @@ public void testValidUrlWithDefaultRegex() throws Exception { //this will cause test to hang indefinitely using JDK 1.8.0_121, Struts 2.5.10.1 and JUnit 4.5 assertTrue(pattern.matcher("http://wargame.ch/wc/acw/sub/aotm/guestbook/index.php?page3D183EClearwater20Roofing20Contractors3C/a3E3Ekaldu20non20msg3C/a3E").matches()); assertTrue(UrlValidator.getInstance().isValid("http://wargame.ch/wc/acw/sub/aotm/guestbook/index.php?page3D183EClearwater20Roofing20Contractors3C/a3E3Ekaldu20non20msg3C/a3E")); + + assertTrue(pattern.matcher("http://253.254.255.1").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://253.254.255.1")); + + assertTrue(pattern.matcher("http://253.254.255.12").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://253.254.255.12")); + + assertTrue(pattern.matcher("http://1.2.3.100").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://1.2.3.100")); + + assertTrue(pattern.matcher("http://1.2.3.255").matches()); + assertTrue(UrlValidator.getInstance().isValid("http://1.2.3.255")); + } public void testLongRunningValidations() throws Exception { From 3e53a58bb33c10fab04a4364a829ba03ac7fbc49 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 4 Aug 2017 07:49:38 +0200 Subject: [PATCH 0148/2288] WW-4837 Adds a test to proof that Integers are treated as Integers --- .../struts2/views/jsp/ui/SelectTest.java | 57 +++++++++++++++++++ .../apache/struts2/views/jsp/ui/Select-14.txt | 10 ++++ 2 files changed, 67 insertions(+) create mode 100644 core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-14.txt diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java index 06b7e805f5..c6587dfd7f 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java @@ -135,6 +135,45 @@ public void testBigDecimal() throws Exception { verify(SelectTag.class.getResource("Select-3.txt")); } + public void testInteger() throws Exception { + IntegerObject hello = new IntegerObject("hello", 1); + IntegerObject foo = new IntegerObject("foo", 2); + + TestAction testAction = (TestAction) action; + + Collection collection = new ArrayList(2); + // expect strings to be returned, we're still dealing with HTTP here! + collection.add("hello"); + collection.add("foo"); + testAction.setCollection(collection); + + List list2 = new ArrayList(); + list2.add(hello); + list2.add(foo); + list2.add(new IntegerObject("", 3)); + testAction.setList2(list2); + + SelectTag tag = new SelectTag(); + tag.setPageContext(pageContext); + tag.setLabel("mylabel"); + tag.setName("collection"); + tag.setList("list2"); + tag.setListKey("name"); + tag.setListValue("integer"); + tag.setMultiple("true"); + tag.setTitle("mytitle"); + tag.setOnmousedown("alert('onmousedown');"); + tag.setOnmousemove("alert('onmousemove');"); + tag.setOnmouseout("alert('onmouseout');"); + tag.setOnmouseover("alert('onmouseover');"); + tag.setOnmouseup("alert('onmouseup');"); + + tag.doStartTag(); + tag.doEndTag(); + + verify(SelectTag.class.getResource("Select-14.txt")); + } + public class BigDecimalObject { private String name; private BigDecimal bigDecimal; @@ -153,6 +192,24 @@ public BigDecimal getBigDecimal() { } } + public class IntegerObject { + private String name; + private Integer integer; + + public IntegerObject(String name, Integer integer) { + this.name = name; + this.integer = integer; + } + + public String getName() { + return name; + } + + public Integer getInteger() { + return integer; + } + } + public class ByteObject { private String name; private Byte byteValue; diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-14.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-14.txt new file mode 100644 index 0000000000..2f0b05f799 --- /dev/null +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-14.txt @@ -0,0 +1,10 @@ + + + + + + From c9d20b573efbdd74e683c767663b2bd02cea5fd7 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 4 Aug 2017 08:16:28 +0200 Subject: [PATCH 0149/2288] WW-4837 Adds a test to test how Strings are treated --- .../struts2/views/jsp/ui/SelectTest.java | 59 +++++++++++++++++++ .../apache/struts2/views/jsp/ui/Select-15.txt | 11 ++++ 2 files changed, 70 insertions(+) create mode 100644 core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-15.txt diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java index c6587dfd7f..58ff079cf1 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java @@ -26,6 +26,7 @@ import java.util.Collection; import java.util.List; +import com.sun.xml.internal.bind.v2.util.StackRecorder; import org.apache.struts2.TestAction; import org.apache.struts2.views.jsp.AbstractUITagTest; @@ -174,6 +175,46 @@ public void testInteger() throws Exception { verify(SelectTag.class.getResource("Select-14.txt")); } + public void testNumericString() throws Exception { + StringObject hello = new StringObject("hello", "1"); + StringObject foo = new StringObject("foo", "2"); + + TestAction testAction = (TestAction) action; + + Collection collection = new ArrayList(2); + // expect strings to be returned, we're still dealing with HTTP here! + collection.add("hello"); + collection.add("foo"); + testAction.setCollection(collection); + + List list2 = new ArrayList(); + list2.add(hello); + list2.add(foo); + list2.add(new StringObject("", "1.5")); + list2.add(new StringObject("", "2,5")); + testAction.setList2(list2); + + SelectTag tag = new SelectTag(); + tag.setPageContext(pageContext); + tag.setLabel("mylabel"); + tag.setName("collection"); + tag.setList("list2"); + tag.setListKey("name"); + tag.setListValue("number"); + tag.setMultiple("true"); + tag.setTitle("mytitle"); + tag.setOnmousedown("alert('onmousedown');"); + tag.setOnmousemove("alert('onmousemove');"); + tag.setOnmouseout("alert('onmouseout');"); + tag.setOnmouseover("alert('onmouseover');"); + tag.setOnmouseup("alert('onmouseup');"); + + tag.doStartTag(); + tag.doEndTag(); + + verify(SelectTag.class.getResource("Select-15.txt")); + } + public class BigDecimalObject { private String name; private BigDecimal bigDecimal; @@ -210,6 +251,24 @@ public Integer getInteger() { } } + public class StringObject { + private String name; + private String number; + + public StringObject(String name, String number) { + this.name = name; + this.number = number; + } + + public String getName() { + return name; + } + + public String getNumber() { + return number; + } + } + public class ByteObject { private String name; private Byte byteValue; diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-15.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-15.txt new file mode 100644 index 0000000000..e5dc63ef48 --- /dev/null +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Select-15.txt @@ -0,0 +1,11 @@ + + + + + + From eb0137168f0c0e09a1ef6532965ffc1634a36291 Mon Sep 17 00:00:00 2001 From: Aaron Johnson Date: Fri, 4 Aug 2017 15:58:23 -0500 Subject: [PATCH 0150/2288] WW-4839 JakartaStreamMultiPartRequest Should Honor "struts.multipart.maxSize" --- .../JakartaStreamMultiPartRequest.java | 3 + .../JakartaStreamMultiPartRequestTest.java | 58 +++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 core/src/test/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequestTest.java diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java index 4703338d16..b8c1a33a34 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java @@ -191,6 +191,9 @@ protected void processUpload(HttpServletRequest request, String saveDir) throws // Interface with Commons FileUpload API // Using the Streaming API ServletFileUpload servletFileUpload = new ServletFileUpload(); + if (maxSizeProvided) { + servletFileUpload.setSizeMax(maxSize); + } FileItemIterator i = servletFileUpload.getItemIterator(request); // Iterate the file items diff --git a/core/src/test/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequestTest.java b/core/src/test/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequestTest.java new file mode 100644 index 0000000000..04195cbf6e --- /dev/null +++ b/core/src/test/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequestTest.java @@ -0,0 +1,58 @@ +package org.apache.struts2.dispatcher.multipart; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +import javax.servlet.ServletInputStream; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; + +import org.apache.struts2.dispatcher.LocalizedMessage; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mockito; +import org.springframework.mock.web.DelegatingServletInputStream; +import org.testng.Assert; + +public class JakartaStreamMultiPartRequestTest { + + private JakartaStreamMultiPartRequest multiPart; + private Path tempDir; + + @Before + public void initialize() { + multiPart = new JakartaStreamMultiPartRequest(); + tempDir = Paths.get("target", "multi-part-test"); + } + + /** + * Number of bytes in files greater than 2GB overflow the {@code int} primative. + * The {@link HttpServletRequest#getContentLength()} returns {@literal -1} + * when the header is not present or the size is greater than {@link Integer#MAX_VALUE}. + * @throws IOException + */ + @Test + public void unknownContentLength() throws IOException { + HttpServletRequest request = Mockito.mock(HttpServletRequest.class); + Mockito.when(request.getContentType()).thenReturn("multipart/form-data; charset=utf-8; boundary=__X_BOUNDARY__"); + Mockito.when(request.getMethod()).thenReturn("POST"); + Mockito.when(request.getContentLength()).thenReturn(Integer.valueOf(-1)); + StringBuilder entity = new StringBuilder(); + entity.append("\r\n--__X_BOUNDARY__\r\n"); + entity.append("Content-Disposition: form-data; name=\"upload\"; filename=\"test.csv\"\r\n"); + entity.append("Content-Type: text/csv\r\n\r\n1,2\r\n\r\n"); + entity.append("--__X_BOUNDARY__\r\n"); + entity.append("Content-Disposition: form-data; name=\"upload2\"; filename=\"test2.csv\"\r\n"); + entity.append("Content-Type: text/csv\r\n\r\n3,4\r\n\r\n"); + entity.append("--__X_BOUNDARY__--\r\n"); + Mockito.when(request.getInputStream()).thenReturn(new DelegatingServletInputStream(new ByteArrayInputStream(entity.toString().getBytes(StandardCharsets.UTF_8)))); + multiPart.setMaxSize("4"); + multiPart.parse(request, tempDir.toString()); + LocalizedMessage next = multiPart.getErrors().iterator().next(); + Assert.assertEquals(next.getTextKey(), "struts.messages.upload.error.SizeLimitExceededException"); + } +} From 9cea981c3317fef639a0243c5e7aeaf2ee900f22 Mon Sep 17 00:00:00 2001 From: Aaron Johnson Date: Fri, 4 Aug 2017 16:14:10 -0500 Subject: [PATCH 0151/2288] WW-4840 Build Fails Due to Unused com.sun Import --- .../test/java/org/apache/struts2/views/jsp/ui/SelectTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java index 58ff079cf1..3888d4248c 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java @@ -26,7 +26,6 @@ import java.util.Collection; import java.util.List; -import com.sun.xml.internal.bind.v2.util.StackRecorder; import org.apache.struts2.TestAction; import org.apache.struts2.views.jsp.AbstractUITagTest; From 19494718865f2fb7da5ea363de3822f87fbda264 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 21 Aug 2017 13:17:31 +0200 Subject: [PATCH 0152/2288] Allows define allowed classes per action --- .../rest/handler/AllowedClassNames.java | 26 ++++++ .../struts2/rest/handler/AllowedClasses.java | 26 ++++++ .../struts2/rest/handler/XStreamHandler.java | 81 ++++++++++++++++++- .../handler/XStreamPermissionProvider.java | 28 +++++++ 4 files changed, 158 insertions(+), 3 deletions(-) create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java new file mode 100644 index 0000000000..70927e649d --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java @@ -0,0 +1,26 @@ +/* + * 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 org.apache.struts2.rest.handler; + +import java.util.Set; + +public interface AllowedClassNames { + Set allowedClassNames(); +} diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java new file mode 100644 index 0000000000..9c2b8b479b --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java @@ -0,0 +1,26 @@ +/* + * 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 org.apache.struts2.rest.handler; + +import java.util.Set; + +public interface AllowedClasses { + Set> allowedClasses(); +} diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java index 5650702b35..2090742dc5 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java @@ -22,34 +22,97 @@ package org.apache.struts2.rest.handler; import com.opensymphony.xwork2.ActionInvocation; +import com.opensymphony.xwork2.ModelDriven; import com.thoughtworks.xstream.XStream; +import com.thoughtworks.xstream.security.ArrayTypePermission; +import com.thoughtworks.xstream.security.ExplicitTypePermission; +import com.thoughtworks.xstream.security.NoTypePermission; +import com.thoughtworks.xstream.security.NullPermission; +import com.thoughtworks.xstream.security.PrimitiveTypePermission; +import com.thoughtworks.xstream.security.TypePermission; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.io.IOException; import java.io.Reader; import java.io.Writer; +import java.util.Collection; +import java.util.Date; +import java.util.Map; +import java.util.Set; /** * Handles XML content */ public class XStreamHandler extends AbstractContentTypeHandler { + private static final Logger LOG = LogManager.getLogger(XStreamHandler.class); + public String fromObject(ActionInvocation invocation, Object obj, String resultCode, Writer out) throws IOException { if (obj != null) { - XStream xstream = createXStream(); + XStream xstream = createXStream(invocation); xstream.toXML(obj, out); } return null; } public void toObject(ActionInvocation invocation, Reader in, Object target) { - XStream xstream = createXStream(); + XStream xstream = createXStream(invocation); xstream.fromXML(in, target); } - + + /** + * @deprecated use version with {@link ActionInvocation} + */ + @Deprecated protected XStream createXStream() { + LOG.warn("You are using a deprecated API!"); return new XStream(); } + protected XStream createXStream(ActionInvocation invocation) { + XStream stream = new XStream(); + LOG.debug("Clears existing permissions"); + stream.addPermission(NoTypePermission.NONE); + + LOG.debug("Adds per action permissions"); + addPerActionPermission(invocation, stream); + + LOG.debug("Adds default permissions"); + addDefaultPermissions(invocation, stream); + return stream; + } + + private void addPerActionPermission(ActionInvocation invocation, XStream stream) { + Object action = invocation.getAction(); + if (action instanceof AllowedClasses) { + Set> allowedClasses = ((AllowedClasses) action).allowedClasses(); + stream.addPermission(new ExplicitTypePermission(allowedClasses.toArray(new Class[allowedClasses.size()]))); + } + if (action instanceof AllowedClassNames) { + Set allowedClassNames = ((AllowedClassNames) action).allowedClassNames(); + stream.addPermission(new ExplicitTypePermission(allowedClassNames.toArray(new String[allowedClassNames.size()]))); + } + if (action instanceof XStreamPermissionProvider) { + Collection permissions = ((XStreamPermissionProvider) action).getTypePermissions(); + for (TypePermission permission : permissions) { + stream.addPermission(permission); + } + } + } + + protected void addDefaultPermissions(ActionInvocation invocation, XStream stream) { + stream.addPermission(new ExplicitTypePermission(new Class[]{invocation.getAction().getClass()})); + if (invocation.getAction() instanceof ModelDriven) { + stream.addPermission(new ExplicitTypePermission(new Class[]{((ModelDriven) invocation.getAction()).getModel().getClass()})); + } + stream.addPermission(NullPermission.NULL); + stream.addPermission(PrimitiveTypePermission.PRIMITIVES); + stream.addPermission(ArrayTypePermission.ARRAYS); + stream.addPermission(CollectionTypePermission.COLLECTIONS); + stream.addPermission(new ExplicitTypePermission(new Class[]{Date.class})); + } + public String getContentType() { return "application/xml"; } @@ -57,4 +120,16 @@ public String getContentType() { public String getExtension() { return "xml"; } + + private static class CollectionTypePermission implements TypePermission { + + private static final TypePermission COLLECTIONS = new CollectionTypePermission(); + + @Override + public boolean allows(Class type) { + return type != null && type.isInterface() && + (Collection.class.isAssignableFrom(type) || Map.class.isAssignableFrom(type)); + } + + } } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java new file mode 100644 index 0000000000..cedc982302 --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java @@ -0,0 +1,28 @@ +/* + * 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 org.apache.struts2.rest.handler; + +import com.thoughtworks.xstream.security.TypePermission; + +import java.util.Collection; + +public interface XStreamPermissionProvider { + Collection getTypePermissions(); +} From fa7c8cbe5cfa195b471245dc1dd3486ceee50420 Mon Sep 17 00:00:00 2001 From: Paul Heaberlin Date: Tue, 22 Aug 2017 17:01:05 -0500 Subject: [PATCH 0153/2288] return request HTTP method to fix problem with multipart validation added to Dispatcher in WW-4768 and JakartaMultiPartRequest in WW-4767 --- .../struts2/portlet/servlet/PortletServletRequest.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java index cabc9d4739..a224e14136 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java @@ -31,6 +31,7 @@ import java.util.Map; import javax.portlet.ActionRequest; +import javax.portlet.ClientDataRequest; import javax.portlet.PortletContext; import javax.portlet.PortletRequest; import javax.portlet.PortletRequestDispatcher; @@ -161,7 +162,12 @@ public int getIntHeader(String name) { * @see javax.servlet.http.HttpServletRequest#getMethod() */ public String getMethod() { - return null; + if (portletRequest instanceof ClientDataRequest) { + return ((ClientDataRequest) portletRequest).getMethod(); + } + else { + return null; + } } /* From 44036f4e31c8b88f505f5c19a4d4d61d704a1447 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 23 Aug 2017 07:22:15 +0200 Subject: [PATCH 0154/2288] WW-4844 Upgrades to struts-master 11 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9473b9c1ca..22aa7c5947 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts-master - 10 + 11 4.0.0 From 68cb702dc8b13eb0e948a59cc3e274206019c642 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 23 Aug 2017 09:23:23 +0200 Subject: [PATCH 0155/2288] WW-4838 Allows define incompatible improvements as an init-param --- .../views/freemarker/FreemarkerManager.java | 18 ++++++++++++++++-- .../views/freemarker/StrutsBeanWrapper.java | 4 +++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java index b1010c39ad..22a66e5441 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java @@ -314,7 +314,9 @@ protected void configureTemplateLoader(TemplateLoader templateLoader) { * @throws TemplateException in case of errors during creating the configuration */ protected Configuration createConfiguration(ServletContext servletContext) throws TemplateException { - Configuration configuration = new Configuration(Configuration.VERSION_2_3_0); + Version incompatibleImprovements = getFreemarkerVersion(servletContext); + + Configuration configuration = new Configuration(incompatibleImprovements); configuration.setTemplateExceptionHandler(TemplateExceptionHandler.HTML_DEBUG_HANDLER); @@ -340,6 +342,17 @@ protected Configuration createConfiguration(ServletContext servletContext) throw return configuration; } + protected Version getFreemarkerVersion(ServletContext servletContext) { + Version incompatibleImprovements = Configuration.VERSION_2_3_0; + + String incompatibleImprovementsParam = servletContext.getInitParameter("freemarker." + Configuration.INCOMPATIBLE_IMPROVEMENTS_KEY_SNAKE_CASE); + if (incompatibleImprovementsParam != null) { + incompatibleImprovements = new Version(incompatibleImprovementsParam); + } + + return incompatibleImprovements; + } + protected ScopesHashModel buildScopesHashModel(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, ObjectWrapper wrapper, ValueStack stack) { ScopesHashModel model = new ScopesHashModel(wrapper, servletContext, request, stack); @@ -396,7 +409,8 @@ protected ScopesHashModel buildScopesHashModel(ServletContext servletContext, Ht } protected ObjectWrapper createObjectWrapper(ServletContext servletContext) { - StrutsBeanWrapper wrapper = new StrutsBeanWrapper(altMapWrapper); + Version incompatibleImprovements = getFreemarkerVersion(servletContext); + StrutsBeanWrapper wrapper = new StrutsBeanWrapper(altMapWrapper, incompatibleImprovements); wrapper.setUseCache(cacheBeanWrapper); return wrapper; } diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java index ad1222fbb2..c9e7eed415 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java @@ -33,6 +33,7 @@ import freemarker.template.TemplateCollectionModel; import freemarker.template.TemplateHashModelEx; import freemarker.template.TemplateModel; +import freemarker.template.Version; /** * @@ -53,7 +54,8 @@ public class StrutsBeanWrapper extends BeansWrapper { private boolean altMapWrapper; - public StrutsBeanWrapper(boolean altMapWrapper) { + public StrutsBeanWrapper(boolean altMapWrapper, Version incompatibleImprovements) { + super(incompatibleImprovements); this.altMapWrapper = altMapWrapper; } From 9f5082615ede714618c8694c418210d43338daf6 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 23 Aug 2017 13:05:07 +0200 Subject: [PATCH 0156/2288] [maven-release-plugin] prepare release STRUTS_2_5_13 --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++++++-- bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 42 insertions(+), 38 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 626e702b8a..ebff4b52fd 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 73c33de8e8..1077aa17c8 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.13-SNAPSHOT + 2.5.13 struts2-rest-showcase war - 2.5.13-SNAPSHOT + 2.5.13 Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 868d51f900..ea4a5cb3f1 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.13-SNAPSHOT + 2.5.13 struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 0a47af1eda..690468b738 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 324e71e67b..e1eb45fa92 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.13-SNAPSHOT + 2.5.13 pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.13-SNAPSHOT + 2.5.13 @@ -170,4 +170,8 @@ + + + STRUTS_2_5_13 + diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 6bd52a3401..19f7dd6dfd 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.13-SNAPSHOT + 2.5.13 struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index d24b82854f..0206838c36 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.13-SNAPSHOT + 2.5.13 struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 593c86bce1..7516e19f33 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 93c8851435..7dd3a48600 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index b24ef10dc4..e7a0825a71 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 545c94ea23..43227c124a 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 980b30b7df..36926e3501 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index e75d64d5df..3687e7d5bb 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 7cbcf3e5ef..f9625ef37e 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 71a35719b8..473328ec54 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 7288286066..41e2cce799 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 3e11451ab1..556fda78a8 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index a8e0963f8a..d566d0b9b4 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 7cba50b710..42c1112bfb 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index 32a85c38b8..2d04fdee9a 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 98e982d3f8..b27c4fa594 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 7011eaf826..6fa2e68578 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 52375bfbc3..257e8ad143 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index db2007f34a..e73e1f335f 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index ec02bca8aa..f815f16367 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index d9735bb19a..307025dee9 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 930dee22a8..b91a7ee684 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index fedde92da1..138855af63 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 6bb1caf28d..c61d8a8f48 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index 75e4719f9e..f262cb62e6 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 88e476991e..8ca2b1a123 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 10258f2449..6f84201d34 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index f7306b1a28..6b19622b2d 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index bc547cc350..bdca012656 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13-SNAPSHOT + 2.5.13 struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 22aa7c5947..c1fe66ec2a 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.13-SNAPSHOT + 2.5.13 pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - HEAD + STRUTS_2_5_13 From c9bdb24bf9fa3f95b82ef88e0b16f8ac756997fd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 23 Aug 2017 13:05:27 +0200 Subject: [PATCH 0157/2288] [maven-release-plugin] prepare for next development iteration --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++------ bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 38 insertions(+), 42 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index ebff4b52fd..3c3c11e846 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 1077aa17c8..4c6620eabc 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -26,12 +26,12 @@ org.apache.struts struts2-apps - 2.5.13 + 2.5.14-SNAPSHOT struts2-rest-showcase war - 2.5.13 + 2.5.14-SNAPSHOT Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index ea4a5cb3f1..016fefa2df 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-apps - 2.5.13 + 2.5.14-SNAPSHOT struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 690468b738..3df1767792 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index e1eb45fa92..b01a9f7270 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -10,7 +10,7 @@ struts2-bom - 2.5.13 + 2.5.14-SNAPSHOT pom Struts 2 Bill of Materials @@ -25,7 +25,7 @@ - 2.5.13 + 2.5.14-SNAPSHOT @@ -170,8 +170,4 @@ - - - STRUTS_2_5_13 - diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 19f7dd6dfd..bfe74548f9 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.13 + 2.5.14-SNAPSHOT struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index 0206838c36..be22adc253 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.13 + 2.5.14-SNAPSHOT struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 7516e19f33..cb4f36c9f2 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 7dd3a48600..b7603c404d 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index e7a0825a71..3c96213627 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 43227c124a..2555010224 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 36926e3501..8ede1c1db4 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 3687e7d5bb..527a4b7c8c 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index f9625ef37e..57a690dfc0 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 473328ec54..ff1b94f781 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 41e2cce799..c885c83397 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 556fda78a8..c993716dc5 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index d566d0b9b4..a23a3ac0e8 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 42c1112bfb..061a50eb05 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index 2d04fdee9a..bb15bf5ea2 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index b27c4fa594..e231c82be9 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 6fa2e68578..2586040401 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -4,7 +4,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 257e8ad143..12d37edb74 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index e73e1f335f..49db6c43c3 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index f815f16367..8dd291811c 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index 307025dee9..09df1b03fb 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index b91a7ee684..bf43d17e3c 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 138855af63..fe6d981bbc 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -3,7 +3,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index c61d8a8f48..caa6808963 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index f262cb62e6..4bf9099093 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 8ca2b1a123..06adff22eb 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 6f84201d34..ab1ea67949 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 6b19622b2d..b89455ed0a 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index bdca012656..fde9242b11 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -26,7 +26,7 @@ org.apache.struts struts2-plugins - 2.5.13 + 2.5.14-SNAPSHOT struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index c1fe66ec2a..eb16ff54b1 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 struts2-parent - 2.5.13 + 2.5.14-SNAPSHOT pom Struts 2 http://struts.apache.org/ @@ -31,7 +31,7 @@ scm:git:git://git.apache.org/struts.git scm:git:https://git-wip-us.apache.org/repos/asf/struts.git http://git.apache.org/struts.git - STRUTS_2_5_13 + HEAD From 0b9e68ed16341c585d48d301ceacfb9e74438552 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Wed, 23 Aug 2017 23:05:29 +0300 Subject: [PATCH 0158/2288] WW-4843 DefaultUrlHelper().buildUrl() not outputting port when used as parameter --- .../struts2/views/util/DefaultUrlHelper.java | 27 +++++++++---------- .../views/util/DefaultUrlHelperTest.java | 23 ++++++++++++++++ 2 files changed, 35 insertions(+), 15 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java b/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java index 668d1a94ec..0fb86d9bbb 100644 --- a/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java +++ b/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java @@ -110,19 +110,13 @@ public String buildUrl(String action, HttpServletRequest request, HttpServletRes if (scheme != null) { // If switching schemes, use the configured port for the particular scheme. if (!scheme.equals(reqScheme)) { - if ((HTTP_PROTOCOL.equals(scheme) && (httpPort != DEFAULT_HTTP_PORT)) || (HTTPS_PROTOCOL.equals(scheme) && httpsPort != DEFAULT_HTTPS_PORT)) { - link.append(":"); - link.append(HTTP_PROTOCOL.equals(scheme) ? httpPort : httpsPort); - } + appendPort(link, scheme, HTTP_PROTOCOL.equals(scheme) ? httpPort : httpsPort); // Else use the port from the current request. } else { - int reqPort = request.getServerPort(); - - if ((scheme.equals(HTTP_PROTOCOL) && (reqPort != DEFAULT_HTTP_PORT)) || (scheme.equals(HTTPS_PROTOCOL) && reqPort != DEFAULT_HTTPS_PORT)) { - link.append(":"); - link.append(reqPort); - } + appendPort(link, scheme, request.getServerPort()); } + } else { + appendPort(link, reqScheme, request.getServerPort()); } } else if ((scheme != null) && !scheme.equals(request.getScheme())) { changedScheme = true; @@ -130,11 +124,7 @@ public String buildUrl(String action, HttpServletRequest request, HttpServletRes link.append("://"); link.append(request.getServerName()); - if ((scheme.equals(HTTP_PROTOCOL) && (httpPort != DEFAULT_HTTP_PORT)) || (HTTPS_PROTOCOL.equals(scheme) && httpsPort != DEFAULT_HTTPS_PORT)) - { - link.append(":"); - link.append(HTTP_PROTOCOL.equals(scheme) ? httpPort : httpsPort); - } + appendPort(link, scheme, HTTP_PROTOCOL.equals(scheme) ? httpPort : httpsPort); } if (action != null) { @@ -201,6 +191,13 @@ public String buildUrl(String action, HttpServletRequest request, HttpServletRes return result; } + private void appendPort(StringBuilder link, String scheme, int port) { + if ((HTTP_PROTOCOL.equals(scheme) && port != DEFAULT_HTTP_PORT) || (HTTPS_PROTOCOL.equals(scheme) && port != DEFAULT_HTTPS_PORT)) { + link.append(":"); + link.append(port); + } + } + public void buildParametersString(Map params, StringBuilder link, String paramSeparator) { buildParametersString(params, link, paramSeparator, true); } diff --git a/core/src/test/java/org/apache/struts2/views/util/DefaultUrlHelperTest.java b/core/src/test/java/org/apache/struts2/views/util/DefaultUrlHelperTest.java index b4a5b26c42..81c595fa99 100644 --- a/core/src/test/java/org/apache/struts2/views/util/DefaultUrlHelperTest.java +++ b/core/src/test/java/org/apache/struts2/views/util/DefaultUrlHelperTest.java @@ -138,6 +138,29 @@ public void testForceAddNullSchemeHostAndPort() throws Exception { mockHttpServletRequest.expectAndReturn("getServerName", "localhost"); mockHttpServletRequest.expectAndReturn("getContextPath", "/contextPath"); + mockHttpServletRequest.expectAndReturn("getServerPort", 80); + + Mock mockHttpServletResponse = new Mock(HttpServletResponse.class); + mockHttpServletResponse.expectAndReturn("encodeURL", expectedUrl, + expectedUrl); + + String result = urlHelper.buildUrl("/path1/path2/myAction.action", + (HttpServletRequest) mockHttpServletRequest.proxy(), + (HttpServletResponse) mockHttpServletResponse.proxy(), null, + null, true, true, true); + assertEquals(expectedUrl, result); + mockHttpServletRequest.verify(); + } + + public void testForceAddNullSchemeHostAndPort2() throws Exception { + String expectedUrl = "http://localhost:8080/contextPath/path1/path2/myAction.action"; + + Mock mockHttpServletRequest = new Mock(HttpServletRequest.class); + mockHttpServletRequest.expectAndReturn("getScheme", "http"); + mockHttpServletRequest.expectAndReturn("getServerName", "localhost"); + mockHttpServletRequest.expectAndReturn("getContextPath", + "/contextPath"); + mockHttpServletRequest.expectAndReturn("getServerPort", 8080); Mock mockHttpServletResponse = new Mock(HttpServletResponse.class); mockHttpServletResponse.expectAndReturn("encodeURL", expectedUrl, From fbe09949c7344d543df84315070bf007a545783c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 30 Aug 2017 17:55:41 +0430 Subject: [PATCH 0159/2288] WW-4846 Does not traverse/include proxy info in JSONResult --- .../json/src/main/java/org/apache/struts2/json/JSONWriter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java index 20f815c714..0e10ccf853 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java @@ -20,6 +20,7 @@ */ package org.apache.struts2.json; +import com.opensymphony.xwork2.util.ProxyUtil; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.struts2.json.annotations.JSON; @@ -210,7 +211,7 @@ protected void bean(Object object) throws JSONException { BeanInfo info; try { - Class clazz = object.getClass(); + Class clazz = ProxyUtil.ultimateTargetClass(object); info = ((object == this.root) && this.ignoreHierarchy) ? getBeanInfoIgnoreHierarchy(clazz) From 682d7a88886b16a3d6d150f9d8069a090158a682 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 5 Sep 2017 11:51:14 +0430 Subject: [PATCH 0160/2288] WW-4846 Adds constant to control if include/traverse proxy info in JSONResult --- .../apache/struts2/json/JSONConstants.java | 29 +++++++++++++++++++ .../org/apache/struts2/json/JSONUtil.java | 13 ++++++--- .../org/apache/struts2/json/JSONWriter.java | 10 ++++++- .../json/src/main/resources/struts-plugin.xml | 3 ++ .../src/main/resources/struts-plugin.xml | 1 + 5 files changed, 51 insertions(+), 5 deletions(-) create mode 100644 plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java new file mode 100644 index 0000000000..2f46769e44 --- /dev/null +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java @@ -0,0 +1,29 @@ +/* + * Copyright 2017 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 org.apache.struts2.json; + +/** + *

Class consisting of various constant values being used controlling + * JSON plugin behaviour

+ * + *

+ * These values can be overridden using struts.xml file by providing custom values. + *

+ */ +public class JSONConstants { + + public static final String RESULT_EXCLUDE_PROXY_PROPERTIES = "struts.json.result.excludeProxyProperties"; +} diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java index f44719f1a9..c650e0626d 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java @@ -41,6 +41,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.opensymphony.xwork2.inject.Inject; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -58,7 +59,14 @@ public class JSONUtil { public static final boolean CACHE_BEAN_INFO_DEFAULT = true; private static final Logger LOG = LogManager.getLogger(JSONUtil.class); - + + private static JSONWriter writer = new JSONWriter(); + + @Inject + public static void setWriter(JSONWriter writer) { + JSONUtil.writer = writer; + } + /** * Serializes an object into JSON. * @@ -70,7 +78,6 @@ public class JSONUtil { * @throws JSONException in case of error during serialize */ public static String serialize(Object object, boolean cacheBeanInfo) throws JSONException { - JSONWriter writer = new JSONWriter(); writer.setCacheBeanInfo(cacheBeanInfo); return writer.write(object); } @@ -124,7 +131,6 @@ public static String serialize(Object object, Collection excludePropert Collection includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties, boolean cacheBeanInfo) throws JSONException { - JSONWriter writer = new JSONWriter(); writer.setIgnoreHierarchy(ignoreHierarchy); writer.setCacheBeanInfo(cacheBeanInfo); return writer.write(object, excludeProperties, includeProperties, excludeNullProperties); @@ -186,7 +192,6 @@ public static String serialize(Object object, Collection excludePropert public static String serialize(Object object, Collection excludeProperties, Collection includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat, boolean cacheBeanInfo) throws JSONException { - JSONWriter writer = new JSONWriter(); writer.setIgnoreHierarchy(ignoreHierarchy); writer.setEnumAsBean(enumAsBean); writer.setDateFormatter(defaultDateFormat); diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java index 0e10ccf853..00396c5c1d 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java @@ -20,6 +20,7 @@ */ package org.apache.struts2.json; +import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.ProxyUtil; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -76,6 +77,12 @@ public class JSONWriter { private boolean enumAsBean = ENUM_AS_BEAN_DEFAULT; private boolean excludeNullProperties; private boolean cacheBeanInfo = true; + private boolean excludeProxyProperties = false; + + @Inject(value = JSONConstants.RESULT_EXCLUDE_PROXY_PROPERTIES, required = false) + public void setExcludeProxyProperties(String excludeProxyProperties) { + this.excludeProxyProperties = Boolean.parseBoolean(excludeProxyProperties); + } /** * @param object Object to be serialized into JSON @@ -102,6 +109,7 @@ public String write(Object object, Collection excludeProperties, Collection includeProperties, boolean excludeNullProperties) throws JSONException { this.excludeNullProperties = excludeNullProperties; this.buf.setLength(0); + this.stack.clear(); this.root = object; this.exprStack = ""; this.buildExpr = ((excludeProperties != null) && !excludeProperties.isEmpty()) @@ -211,7 +219,7 @@ protected void bean(Object object) throws JSONException { BeanInfo info; try { - Class clazz = ProxyUtil.ultimateTargetClass(object); + Class clazz = excludeProxyProperties ? ProxyUtil.ultimateTargetClass(object) : object.getClass(); info = ((object == this.root) && this.ignoreHierarchy) ? getBeanInfoIgnoreHierarchy(clazz) diff --git a/plugins/json/src/main/resources/struts-plugin.xml b/plugins/json/src/main/resources/struts-plugin.xml index e6aa1de316..01fc1bd305 100644 --- a/plugins/json/src/main/resources/struts-plugin.xml +++ b/plugins/json/src/main/resources/struts-plugin.xml @@ -5,6 +5,9 @@ "http://struts.apache.org/dtds/struts-2.5.dtd"> + + + diff --git a/plugins/spring/src/main/resources/struts-plugin.xml b/plugins/spring/src/main/resources/struts-plugin.xml index cc13bca45d..4198ecc1e2 100644 --- a/plugins/spring/src/main/resources/struts-plugin.xml +++ b/plugins/spring/src/main/resources/struts-plugin.xml @@ -36,6 +36,7 @@ + From d0889ef0654af15311708d4ae5f2c7692c36d5cf Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 6 Sep 2017 11:09:56 +0200 Subject: [PATCH 0161/2288] Drops outdated links --- src/site/site.xml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/site/site.xml b/src/site/site.xml index 1d110c1409..07aaf75884 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -47,20 +47,6 @@ - - - - - - - - - - - - - - From 64fa814a5a7d15b40b1f58bcdbafd6651b6ffb13 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 6 Sep 2017 11:17:02 +0200 Subject: [PATCH 0162/2288] WW-4850 Upgrades to the latest FreeMarker version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index eb16ff54b1..ed81aaa5e6 100644 --- a/pom.xml +++ b/pom.xml @@ -474,7 +474,7 @@ org.freemarker freemarker - 2.3.23 + 2.3.26-incubating From bca42a2091588117c1df6e365b24cca00be4c417 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 6 Sep 2017 20:28:00 +0200 Subject: [PATCH 0163/2288] WW-4851 Upgrade to Log4j2 2.9.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ed81aaa5e6..5af929e3e8 100644 --- a/pom.xml +++ b/pom.xml @@ -88,7 +88,7 @@ 5.2 3.0.7 1.0.6 - 2.8.2 + 2.9.0 ${project.build.directory}/site From 39bdb99a116080a56242dc33303c4ab6d2b28f8f Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 11 Sep 2017 18:09:32 +0430 Subject: [PATCH 0164/2288] WW-4034 Refactors and extracts interface from JSONWriter --- .../struts2/json/DefaultJSONWriter.java | 704 ++++++++++++++++++ .../org/apache/struts2/json/JSONUtil.java | 2 +- .../org/apache/struts2/json/JSONWriter.java | 700 +---------------- .../json/src/main/resources/struts-plugin.xml | 2 +- ...erTest.java => DefaultJSONWriterTest.java} | 22 +- .../org/apache/struts2/json/JSONEnumTest.java | 4 +- .../apache/struts2/json/JSONResultTest.java | 2 +- 7 files changed, 743 insertions(+), 693 deletions(-) create mode 100644 plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java rename plugins/json/src/test/java/org/apache/struts2/json/{JSONWriterTest.java => DefaultJSONWriterTest.java} (85%) diff --git a/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java new file mode 100644 index 0000000000..bdee41664a --- /dev/null +++ b/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java @@ -0,0 +1,704 @@ +/* + * $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 org.apache.struts2.json; + +import com.opensymphony.xwork2.inject.Inject; +import com.opensymphony.xwork2.util.ProxyUtil; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.struts2.json.annotations.JSON; +import org.apache.struts2.json.annotations.JSONFieldBridge; +import org.apache.struts2.json.annotations.JSONParameter; +import org.apache.struts2.json.bridge.FieldBridge; +import org.apache.struts2.json.bridge.ParameterizedBridge; + +import java.beans.BeanInfo; +import java.beans.IntrospectionException; +import java.beans.Introspector; +import java.beans.PropertyDescriptor; +import java.lang.reflect.Array; +import java.lang.reflect.Method; +import java.text.CharacterIterator; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.text.StringCharacterIterator; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; +import java.util.regex.Pattern; + +/** + *

+ * Serializes an object into JavaScript Object Notation (JSON). If cyclic + * references are detected they will be nulled out. + *

+ */ +public class DefaultJSONWriter implements JSONWriter { + + private static final Logger LOG = LogManager.getLogger(DefaultJSONWriter.class); + + private static char[] hex = "0123456789ABCDEF".toCharArray(); + + private static final ConcurrentMap, BeanInfo> BEAN_INFO_CACHE_IGNORE_HIERARCHY = new ConcurrentHashMap<>(); + private static final ConcurrentMap, BeanInfo> BEAN_INFO_CACHE = new ConcurrentHashMap<>(); + + private StringBuilder buf = new StringBuilder(); + private Stack stack = new Stack<>(); + private boolean ignoreHierarchy = true; + private Object root; + private boolean buildExpr = true; + private String exprStack = ""; + private Collection excludeProperties; + private Collection includeProperties; + private DateFormat formatter; + private boolean enumAsBean = ENUM_AS_BEAN_DEFAULT; + private boolean excludeNullProperties; + private boolean cacheBeanInfo = true; + private boolean excludeProxyProperties = false; + + @Inject(value = JSONConstants.RESULT_EXCLUDE_PROXY_PROPERTIES, required = false) + public void setExcludeProxyProperties(String excludeProxyProperties) { + setExcludeProxyProperties(Boolean.parseBoolean(excludeProxyProperties)); + } + + /** + * @param object Object to be serialized into JSON + * @return JSON string for object + * @throws JSONException in case of error during serialize + */ + @Override + public String write(Object object) throws JSONException { + return this.write(object, null, null, false); + } + + /** + * @param object + * Object to be serialized into JSON + * @param excludeProperties + * Patterns matching properties to ignore + * @param includeProperties + * Patterns matching properties to include + * @param excludeNullProperties + * enable/disable excluding of null properties + * @return JSON string for object + * @throws JSONException in case of error during serialize + */ + @Override + public String write(Object object, Collection excludeProperties, + Collection includeProperties, boolean excludeNullProperties) throws JSONException { + this.excludeNullProperties = excludeNullProperties; + this.buf.setLength(0); + this.stack.clear(); + this.root = object; + this.exprStack = ""; + this.buildExpr = ((excludeProperties != null) && !excludeProperties.isEmpty()) + || ((includeProperties != null) && !includeProperties.isEmpty()); + this.excludeProperties = excludeProperties; + this.includeProperties = includeProperties; + this.value(object, null); + + return this.buf.toString(); + } + + /** + * Detect cyclic references + * + * @param object Object to be serialized into JSON + * @param method method + * + * @throws JSONException in case of error during serialize + */ + protected void value(Object object, Method method) throws JSONException { + if (object == null) { + this.add("null"); + return; + } + + if (this.stack.contains(object)) { + Class clazz = object.getClass(); + + // cyclic reference + if (clazz.isPrimitive() || clazz.equals(String.class)) { + this.process(object, method); + } else { + LOG.debug("Cyclic reference detected on {}", object); + this.add("null"); + } + + return; + } + + this.process(object, method); + } + + /** + * Serialize object into json + * + * @param object Object to be serialized into JSON + * @param method method + * + * @throws JSONException in case of error during serialize + */ + protected void process(Object object, Method method) throws JSONException { + this.stack.push(object); + + if (object instanceof Class) { + this.string(object); + } else if (object instanceof Boolean) { + this.bool((Boolean) object); + } else if (object instanceof Number) { + this.add(object); + } else if (object instanceof String) { + this.string(object); + } else if (object instanceof Character) { + this.string(object); + } else if (object instanceof Map) { + this.map((Map) object, method); + } else if (object.getClass().isArray()) { + this.array(object, method); + } else if (object instanceof Iterable) { + this.array(((Iterable) object).iterator(), method); + } else if (object instanceof Date) { + this.date((Date) object, method); + } else if (object instanceof Calendar) { + this.date(((Calendar) object).getTime(), method); + } else if (object instanceof Locale) { + this.string(object); + } else if (object instanceof Enum) { + this.enumeration((Enum) object); + } else { + processCustom(object, method); + } + + this.stack.pop(); + } + + /** + * Serialize custom object into json + * + * @param object object + * @param method method + * + * @throws JSONException in case of error during serialize + */ + protected void processCustom(Object object, Method method) throws JSONException { + this.bean(object); + } + + /** + * Instrospect bean and serialize its properties + * + * @param object object + * + * @throws JSONException in case of error during serialize + */ + protected void bean(Object object) throws JSONException { + this.add("{"); + + BeanInfo info; + + try { + Class clazz = excludeProxyProperties ? ProxyUtil.ultimateTargetClass(object) : object.getClass(); + + info = ((object == this.root) && this.ignoreHierarchy) + ? getBeanInfoIgnoreHierarchy(clazz) + : getBeanInfo(clazz); + + PropertyDescriptor[] props = info.getPropertyDescriptors(); + + boolean hasData = false; + for (PropertyDescriptor prop : props) { + String name = prop.getName(); + Method accessor = prop.getReadMethod(); + Method baseAccessor = findBaseAccessor(clazz, accessor); + + if (baseAccessor != null) { + if (baseAccessor.isAnnotationPresent(JSON.class)) { + JSONAnnotationFinder jsonFinder = new JSONAnnotationFinder(baseAccessor).invoke(); + + if (!jsonFinder.shouldSerialize()) continue; + if (jsonFinder.getName() != null) { + name = jsonFinder.getName(); + } + } + // ignore "class" and others + if (this.shouldExcludeProperty(prop)) { + continue; + } + String expr = null; + if (this.buildExpr) { + expr = this.expandExpr(name); + if (this.shouldExcludeProperty(expr)) { + continue; + } + expr = this.setExprStack(expr); + } + + Object value = accessor.invoke(object); + if (baseAccessor.isAnnotationPresent(JSONFieldBridge.class)) { + value = getBridgedValue(baseAccessor, value); + } + + boolean propertyPrinted = this.add(name, value, accessor, hasData); + hasData = hasData || propertyPrinted; + if (this.buildExpr) { + this.setExprStack(expr); + } + } + } + + // special-case handling for an Enumeration - include the name() as + // a property */ + if (object instanceof Enum) { + Object value = ((Enum) object).name(); + this.add("_name", value, object.getClass().getMethod("name"), hasData); + } + } catch (Exception e) { + throw new JSONException(e); + } + + this.add("}"); + } + + protected BeanInfo getBeanInfoIgnoreHierarchy(final Class clazz) throws IntrospectionException { + BeanInfo beanInfo = BEAN_INFO_CACHE_IGNORE_HIERARCHY.get(clazz); + if (beanInfo != null) { + return beanInfo; + } + beanInfo = Introspector.getBeanInfo(clazz, clazz.getSuperclass()); + BEAN_INFO_CACHE_IGNORE_HIERARCHY.put(clazz, beanInfo); + return beanInfo; + } + + protected BeanInfo getBeanInfo(final Class clazz) throws IntrospectionException { + BeanInfo beanInfo = BEAN_INFO_CACHE.get(clazz); + if (beanInfo != null) { + return beanInfo; + } + beanInfo = Introspector.getBeanInfo(clazz); + BEAN_INFO_CACHE.put(clazz, beanInfo); + return beanInfo; + } + + protected Object getBridgedValue(Method baseAccessor, Object value) throws InstantiationException, IllegalAccessException { + JSONFieldBridge fieldBridgeAnn = baseAccessor.getAnnotation(JSONFieldBridge.class); + if (fieldBridgeAnn != null) { + Class impl = fieldBridgeAnn.impl(); + FieldBridge instance = (FieldBridge) impl.newInstance(); + + if (fieldBridgeAnn.params().length > 0 && ParameterizedBridge.class.isAssignableFrom(impl)) { + Map params = new HashMap<>(fieldBridgeAnn.params().length); + for (JSONParameter param : fieldBridgeAnn.params()) { + params.put(param.name(), param.value()); + } + ((ParameterizedBridge) instance).setParameterValues(params); + } + value = instance.objectToString(value); + } + return value; + } + + protected Method findBaseAccessor(Class clazz, Method accessor) { + Method baseAccessor = null; + if (clazz.getName().contains("$$EnhancerByCGLIB$$")) { + try { + baseAccessor = Thread.currentThread().getContextClassLoader().loadClass( + clazz.getName().substring(0, clazz.getName().indexOf("$$"))).getMethod( + accessor.getName(), accessor.getParameterTypes()); + } catch (Exception ex) { + LOG.debug(ex.getMessage(), ex); + } + } else if (clazz.getName().contains("$$_javassist")) { + try { + baseAccessor = Class.forName( + clazz.getName().substring(0, clazz.getName().indexOf("_$$"))) + .getMethod(accessor.getName(), accessor.getParameterTypes()); + } catch (Exception ex) { + LOG.debug(ex.getMessage(), ex); + } + + //in hibernate4.3.7,because javassist3.18.1's class name generate rule is '_$$_jvst'+... + } else if(clazz.getName().contains("$$_jvst")){ + try { + baseAccessor = Class.forName( + clazz.getName().substring(0, clazz.getName().indexOf("_$$"))) + .getMethod(accessor.getName(), accessor.getParameterTypes()); + } catch (Exception ex) { + LOG.debug(ex.getMessage(), ex); + } + } + else { + return accessor; + } + return baseAccessor; + } + + /** + * Instrospect an Enum and serialize it as a name/value pair or as a bean + * including all its own properties + * + * @param enumeration the enum + * + * @throws JSONException in case of error during serialize + */ + protected void enumeration(Enum enumeration) throws JSONException { + if (enumAsBean) { + this.bean(enumeration); + } else { + this.string(enumeration.name()); + } + } + + protected boolean shouldExcludeProperty(PropertyDescriptor prop) throws SecurityException, NoSuchFieldException { + String name = prop.getName(); + return name.equals("class") + || name.equals("declaringClass") + || name.equals("cachedSuperClass") + || name.equals("metaClass"); + } + + protected String expandExpr(int i) { + return this.exprStack + "[" + i + "]"; + } + + protected String expandExpr(String property) { + if (this.exprStack.length() == 0) { + return property; + } + return this.exprStack + "." + property; + } + + protected String setExprStack(String expr) { + String s = this.exprStack; + this.exprStack = expr; + return s; + } + + protected boolean shouldExcludeProperty(String expr) { + if (this.excludeProperties != null) { + for (Pattern pattern : this.excludeProperties) { + if (pattern.matcher(expr).matches()) { + if (LOG.isDebugEnabled()) { + LOG.debug("Ignoring property because of exclude rule: " + expr); + } + return true; + } + } + } + + if (this.includeProperties != null) { + for (Pattern pattern : this.includeProperties) { + if (pattern.matcher(expr).matches()) { + return false; + } + } + if (LOG.isDebugEnabled()){ + LOG.debug("Ignoring property because of include rule: " + expr); + } + return true; + } + return false; + } + + /* + * Add name/value pair to buffer + */ + protected boolean add(String name, Object value, Method method, boolean hasData) throws JSONException { + if (excludeNullProperties && value == null) { + return false; + } + if (hasData) { + this.add(','); + } + this.add('"'); + this.add(name); + this.add("\":"); + this.value(value, method); + return true; + } + + /* + * Add map to buffer + */ + protected void map(Map map, Method method) throws JSONException { + this.add("{"); + + Iterator it = map.entrySet().iterator(); + + boolean warnedNonString = false; // one report per map + boolean hasData = false; + while (it.hasNext()) { + Map.Entry entry = (Map.Entry) it.next(); + if (excludeNullProperties && entry.getValue() == null) { + continue; + } + + Object key = entry.getKey(); + if (key == null) { + LOG.error("Cannot build expression for null key in {}", exprStack); + continue; + } + + String expr = null; + if (this.buildExpr) { + expr = this.expandExpr(key.toString()); + if (this.shouldExcludeProperty(expr)) { + continue; + } + expr = this.setExprStack(expr); + } + if (hasData) { + this.add(','); + } + hasData = true; + if (!warnedNonString && !(key instanceof String)) { + if (LOG.isWarnEnabled()) { + LOG.warn("JavaScript doesn't support non-String keys, using toString() on {}", key.getClass().getName()); + } + warnedNonString = true; + } + this.value(key.toString(), method); + this.add(":"); + this.value(entry.getValue(), method); + if (this.buildExpr) { + this.setExprStack(expr); + } + } + + this.add("}"); + } + + /* + * Add date to buffer + */ + protected void date(Date date, Method method) { + JSON json = null; + if (method != null) + json = method.getAnnotation(JSON.class); + if (this.formatter == null) + this.formatter = new SimpleDateFormat(JSONUtil.RFC3339_FORMAT); + + DateFormat formatter = (json != null) && (json.format().length() > 0) ? new SimpleDateFormat(json + .format()) : this.formatter; + this.string(formatter.format(date)); + } + + /* + * Add array to buffer + */ + protected void array(Iterator it, Method method) throws JSONException { + this.add("["); + + boolean hasData = false; + for (int i = 0; it.hasNext(); i++) { + String expr = null; + if (this.buildExpr) { + expr = this.expandExpr(i); + if (this.shouldExcludeProperty(expr)) { + it.next(); + continue; + } + expr = this.setExprStack(expr); + } + if (hasData) { + this.add(','); + } + hasData = true; + this.value(it.next(), method); + if (this.buildExpr) { + this.setExprStack(expr); + } + } + + this.add("]"); + } + + /* + * Add array to buffer + */ + protected void array(Object object, Method method) throws JSONException { + this.add("["); + + int length = Array.getLength(object); + + boolean hasData = false; + for (int i = 0; i < length; ++i) { + String expr = null; + if (this.buildExpr) { + expr = this.expandExpr(i); + if (this.shouldExcludeProperty(expr)) { + continue; + } + expr = this.setExprStack(expr); + } + if (hasData) { + this.add(','); + } + hasData = true; + this.value(Array.get(object, i), method); + if (this.buildExpr) { + this.setExprStack(expr); + } + } + + this.add("]"); + } + + /* + * Add boolean to buffer + */ + protected void bool(boolean b) { + this.add(b ? "true" : "false"); + } + + /** + * escape characters + * + * @param obj the object to escape + */ + protected void string(Object obj) { + this.add('"'); + + CharacterIterator it = new StringCharacterIterator(obj.toString()); + + for (char c = it.first(); c != CharacterIterator.DONE; c = it.next()) { + if (c == '"') { + this.add("\\\""); + } else if (c == '\\') { + this.add("\\\\"); + } else if (c == '/') { + this.add("\\/"); + } else if (c == '\b') { + this.add("\\b"); + } else if (c == '\f') { + this.add("\\f"); + } else if (c == '\n') { + this.add("\\n"); + } else if (c == '\r') { + this.add("\\r"); + } else if (c == '\t') { + this.add("\\t"); + } else if (Character.isISOControl(c)) { + this.unicode(c); + } else { + this.add(c); + } + } + + this.add('"'); + } + + /* + * Add object to buffer + */ + protected void add(Object obj) { + this.buf.append(obj); + } + + /* + * Add char to buffer + */ + protected void add(char c) { + this.buf.append(c); + } + + /** + * Represent as unicode + * + * @param c character to be encoded + */ + protected void unicode(char c) { + this.add("\\u"); + + int n = c; + + for (int i = 0; i < 4; ++i) { + int digit = (n & 0xf000) >> 12; + + this.add(hex[digit]); + n <<= 4; + } + } + + @Override + public void setIgnoreHierarchy(boolean ignoreHierarchy) { + this.ignoreHierarchy = ignoreHierarchy; + } + + /** + * If true, an Enum is serialized as a bean with a special property + * _name=name() as all as all other properties defined within the enum.
+ * If false, an Enum is serialized as a name=value pair (name=name()) + * + * @param enumAsBean true to serialize an enum as a bean instead of as a name=value + * pair (default=false) + */ + @Override + public void setEnumAsBean(boolean enumAsBean) { + this.enumAsBean = enumAsBean; + } + + @Override + public void setDateFormatter(String defaultDateFormat) { + if (defaultDateFormat != null) { + this.formatter = new SimpleDateFormat(defaultDateFormat); + } + } + + @Override + public void setCacheBeanInfo(boolean cacheBeanInfo) { + this.cacheBeanInfo = cacheBeanInfo; + } + + @Override + public void setExcludeProxyProperties(boolean excludeProxyProperties) { + this.excludeProxyProperties = excludeProxyProperties; + } + + protected static class JSONAnnotationFinder { + private boolean serialize = true; + private Method accessor; + private String name; + + public JSONAnnotationFinder(Method accessor) { + this.accessor = accessor; + } + + public boolean shouldSerialize() { + return serialize; + } + + public String getName() { + return name; + } + + + public JSONAnnotationFinder invoke() { + JSON json = accessor.getAnnotation(JSON.class); + serialize = json.serialize(); + if (serialize && json.name().length() > 0) { + name = json.name(); + } + return this; + } + } + +} diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java index c650e0626d..feb8594f2a 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java @@ -60,7 +60,7 @@ public class JSONUtil { private static final Logger LOG = LogManager.getLogger(JSONUtil.class); - private static JSONWriter writer = new JSONWriter(); + private static JSONWriter writer = new DefaultJSONWriter(); @Inject public static void setWriter(JSONWriter writer) { diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java index 00396c5c1d..48b5e3c5a7 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java @@ -1,698 +1,44 @@ /* - * $Id$ + * Copyright 2017 The Apache Software Foundation. * - * 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 + * 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 + * 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. + * 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 org.apache.struts2.json; -import com.opensymphony.xwork2.inject.Inject; -import com.opensymphony.xwork2.util.ProxyUtil; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.apache.struts2.json.annotations.JSON; -import org.apache.struts2.json.annotations.JSONFieldBridge; -import org.apache.struts2.json.annotations.JSONParameter; -import org.apache.struts2.json.bridge.FieldBridge; -import org.apache.struts2.json.bridge.ParameterizedBridge; - -import java.beans.BeanInfo; -import java.beans.IntrospectionException; -import java.beans.Introspector; -import java.beans.PropertyDescriptor; -import java.lang.reflect.Array; -import java.lang.reflect.Method; -import java.text.CharacterIterator; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.text.StringCharacterIterator; -import java.util.*; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; +import java.util.Collection; import java.util.regex.Pattern; /** *

- * Serializes an object into JavaScript Object Notation (JSON). If cyclic - * references are detected they will be nulled out. + * Should serialize an object into JavaScript Object Notation (JSON). If cyclic + * references are detected they should be nulled out. *

*/ -public class JSONWriter { - - private static final Logger LOG = LogManager.getLogger(JSONWriter.class); - - /** - * By default, enums are serialised as name=value pairs - */ - public static final boolean ENUM_AS_BEAN_DEFAULT = false; - - private static char[] hex = "0123456789ABCDEF".toCharArray(); - - private static final ConcurrentMap, BeanInfo> BEAN_INFO_CACHE_IGNORE_HIERARCHY = new ConcurrentHashMap<>(); - private static final ConcurrentMap, BeanInfo> BEAN_INFO_CACHE = new ConcurrentHashMap<>(); - - private StringBuilder buf = new StringBuilder(); - private Stack stack = new Stack<>(); - private boolean ignoreHierarchy = true; - private Object root; - private boolean buildExpr = true; - private String exprStack = ""; - private Collection excludeProperties; - private Collection includeProperties; - private DateFormat formatter; - private boolean enumAsBean = ENUM_AS_BEAN_DEFAULT; - private boolean excludeNullProperties; - private boolean cacheBeanInfo = true; - private boolean excludeProxyProperties = false; - - @Inject(value = JSONConstants.RESULT_EXCLUDE_PROXY_PROPERTIES, required = false) - public void setExcludeProxyProperties(String excludeProxyProperties) { - this.excludeProxyProperties = Boolean.parseBoolean(excludeProxyProperties); - } - - /** - * @param object Object to be serialized into JSON - * @return JSON string for object - * @throws JSONException in case of error during serialize - */ - public String write(Object object) throws JSONException { - return this.write(object, null, null, false); - } - - /** - * @param object - * Object to be serialized into JSON - * @param excludeProperties - * Patterns matching properties to ignore - * @param includeProperties - * Patterns matching properties to include - * @param excludeNullProperties - * enable/disable excluding of null properties - * @return JSON string for object - * @throws JSONException in case of error during serialize - */ - public String write(Object object, Collection excludeProperties, - Collection includeProperties, boolean excludeNullProperties) throws JSONException { - this.excludeNullProperties = excludeNullProperties; - this.buf.setLength(0); - this.stack.clear(); - this.root = object; - this.exprStack = ""; - this.buildExpr = ((excludeProperties != null) && !excludeProperties.isEmpty()) - || ((includeProperties != null) && !includeProperties.isEmpty()); - this.excludeProperties = excludeProperties; - this.includeProperties = includeProperties; - this.value(object, null); - - return this.buf.toString(); - } - - /** - * Detect cyclic references - * - * @param object Object to be serialized into JSON - * @param method method - * - * @throws JSONException in case of error during serialize - */ - protected void value(Object object, Method method) throws JSONException { - if (object == null) { - this.add("null"); - return; - } - - if (this.stack.contains(object)) { - Class clazz = object.getClass(); - - // cyclic reference - if (clazz.isPrimitive() || clazz.equals(String.class)) { - this.process(object, method); - } else { - LOG.debug("Cyclic reference detected on {}", object); - this.add("null"); - } - - return; - } - - this.process(object, method); - } - - /** - * Serialize object into json - * - * @param object Object to be serialized into JSON - * @param method method - * - * @throws JSONException in case of error during serialize - */ - protected void process(Object object, Method method) throws JSONException { - this.stack.push(object); - - if (object instanceof Class) { - this.string(object); - } else if (object instanceof Boolean) { - this.bool((Boolean) object); - } else if (object instanceof Number) { - this.add(object); - } else if (object instanceof String) { - this.string(object); - } else if (object instanceof Character) { - this.string(object); - } else if (object instanceof Map) { - this.map((Map) object, method); - } else if (object.getClass().isArray()) { - this.array(object, method); - } else if (object instanceof Iterable) { - this.array(((Iterable) object).iterator(), method); - } else if (object instanceof Date) { - this.date((Date) object, method); - } else if (object instanceof Calendar) { - this.date(((Calendar) object).getTime(), method); - } else if (object instanceof Locale) { - this.string(object); - } else if (object instanceof Enum) { - this.enumeration((Enum) object); - } else { - processCustom(object, method); - } - - this.stack.pop(); - } - - /** - * Serialize custom object into json - * - * @param object object - * @param method method - * - * @throws JSONException in case of error during serialize - */ - protected void processCustom(Object object, Method method) throws JSONException { - this.bean(object); - } - - /** - * Instrospect bean and serialize its properties - * - * @param object object - * - * @throws JSONException in case of error during serialize - */ - protected void bean(Object object) throws JSONException { - this.add("{"); - - BeanInfo info; - - try { - Class clazz = excludeProxyProperties ? ProxyUtil.ultimateTargetClass(object) : object.getClass(); - - info = ((object == this.root) && this.ignoreHierarchy) - ? getBeanInfoIgnoreHierarchy(clazz) - : getBeanInfo(clazz); - - PropertyDescriptor[] props = info.getPropertyDescriptors(); - - boolean hasData = false; - for (PropertyDescriptor prop : props) { - String name = prop.getName(); - Method accessor = prop.getReadMethod(); - Method baseAccessor = findBaseAccessor(clazz, accessor); - - if (baseAccessor != null) { - if (baseAccessor.isAnnotationPresent(JSON.class)) { - JSONAnnotationFinder jsonFinder = new JSONAnnotationFinder(baseAccessor).invoke(); - - if (!jsonFinder.shouldSerialize()) continue; - if (jsonFinder.getName() != null) { - name = jsonFinder.getName(); - } - } - // ignore "class" and others - if (this.shouldExcludeProperty(prop)) { - continue; - } - String expr = null; - if (this.buildExpr) { - expr = this.expandExpr(name); - if (this.shouldExcludeProperty(expr)) { - continue; - } - expr = this.setExprStack(expr); - } - - Object value = accessor.invoke(object); - if (baseAccessor.isAnnotationPresent(JSONFieldBridge.class)) { - value = getBridgedValue(baseAccessor, value); - } - - boolean propertyPrinted = this.add(name, value, accessor, hasData); - hasData = hasData || propertyPrinted; - if (this.buildExpr) { - this.setExprStack(expr); - } - } - } - - // special-case handling for an Enumeration - include the name() as - // a property */ - if (object instanceof Enum) { - Object value = ((Enum) object).name(); - this.add("_name", value, object.getClass().getMethod("name"), hasData); - } - } catch (Exception e) { - throw new JSONException(e); - } - - this.add("}"); - } - - protected BeanInfo getBeanInfoIgnoreHierarchy(final Class clazz) throws IntrospectionException { - BeanInfo beanInfo = BEAN_INFO_CACHE_IGNORE_HIERARCHY.get(clazz); - if (beanInfo != null) { - return beanInfo; - } - beanInfo = Introspector.getBeanInfo(clazz, clazz.getSuperclass()); - BEAN_INFO_CACHE_IGNORE_HIERARCHY.put(clazz, beanInfo); - return beanInfo; - } - - protected BeanInfo getBeanInfo(final Class clazz) throws IntrospectionException { - BeanInfo beanInfo = BEAN_INFO_CACHE.get(clazz); - if (beanInfo != null) { - return beanInfo; - } - beanInfo = Introspector.getBeanInfo(clazz); - BEAN_INFO_CACHE.put(clazz, beanInfo); - return beanInfo; - } - - protected Object getBridgedValue(Method baseAccessor, Object value) throws InstantiationException, IllegalAccessException { - JSONFieldBridge fieldBridgeAnn = baseAccessor.getAnnotation(JSONFieldBridge.class); - if (fieldBridgeAnn != null) { - Class impl = fieldBridgeAnn.impl(); - FieldBridge instance = (FieldBridge) impl.newInstance(); - - if (fieldBridgeAnn.params().length > 0 && ParameterizedBridge.class.isAssignableFrom(impl)) { - Map params = new HashMap<>(fieldBridgeAnn.params().length); - for (JSONParameter param : fieldBridgeAnn.params()) { - params.put(param.name(), param.value()); - } - ((ParameterizedBridge) instance).setParameterValues(params); - } - value = instance.objectToString(value); - } - return value; - } - - protected Method findBaseAccessor(Class clazz, Method accessor) { - Method baseAccessor = null; - if (clazz.getName().contains("$$EnhancerByCGLIB$$")) { - try { - baseAccessor = Thread.currentThread().getContextClassLoader().loadClass( - clazz.getName().substring(0, clazz.getName().indexOf("$$"))).getMethod( - accessor.getName(), accessor.getParameterTypes()); - } catch (Exception ex) { - LOG.debug(ex.getMessage(), ex); - } - } else if (clazz.getName().contains("$$_javassist")) { - try { - baseAccessor = Class.forName( - clazz.getName().substring(0, clazz.getName().indexOf("_$$"))) - .getMethod(accessor.getName(), accessor.getParameterTypes()); - } catch (Exception ex) { - LOG.debug(ex.getMessage(), ex); - } - - //in hibernate4.3.7,because javassist3.18.1's class name generate rule is '_$$_jvst'+... - } else if(clazz.getName().contains("$$_jvst")){ - try { - baseAccessor = Class.forName( - clazz.getName().substring(0, clazz.getName().indexOf("_$$"))) - .getMethod(accessor.getName(), accessor.getParameterTypes()); - } catch (Exception ex) { - LOG.debug(ex.getMessage(), ex); - } - } - else { - return accessor; - } - return baseAccessor; - } - - /** - * Instrospect an Enum and serialize it as a name/value pair or as a bean - * including all its own properties - * - * @param enumeration the enum - * - * @throws JSONException in case of error during serialize - */ - protected void enumeration(Enum enumeration) throws JSONException { - if (enumAsBean) { - this.bean(enumeration); - } else { - this.string(enumeration.name()); - } - } - - protected boolean shouldExcludeProperty(PropertyDescriptor prop) throws SecurityException, NoSuchFieldException { - String name = prop.getName(); - return name.equals("class") - || name.equals("declaringClass") - || name.equals("cachedSuperClass") - || name.equals("metaClass"); - } - - protected String expandExpr(int i) { - return this.exprStack + "[" + i + "]"; - } - - protected String expandExpr(String property) { - if (this.exprStack.length() == 0) { - return property; - } - return this.exprStack + "." + property; - } - - protected String setExprStack(String expr) { - String s = this.exprStack; - this.exprStack = expr; - return s; - } - - protected boolean shouldExcludeProperty(String expr) { - if (this.excludeProperties != null) { - for (Pattern pattern : this.excludeProperties) { - if (pattern.matcher(expr).matches()) { - if (LOG.isDebugEnabled()) { - LOG.debug("Ignoring property because of exclude rule: " + expr); - } - return true; - } - } - } - - if (this.includeProperties != null) { - for (Pattern pattern : this.includeProperties) { - if (pattern.matcher(expr).matches()) { - return false; - } - } - if (LOG.isDebugEnabled()){ - LOG.debug("Ignoring property because of include rule: " + expr); - } - return true; - } - return false; - } - - /* - * Add name/value pair to buffer - */ - protected boolean add(String name, Object value, Method method, boolean hasData) throws JSONException { - if (excludeNullProperties && value == null) { - return false; - } - if (hasData) { - this.add(','); - } - this.add('"'); - this.add(name); - this.add("\":"); - this.value(value, method); - return true; - } - - /* - * Add map to buffer - */ - protected void map(Map map, Method method) throws JSONException { - this.add("{"); - - Iterator it = map.entrySet().iterator(); - - boolean warnedNonString = false; // one report per map - boolean hasData = false; - while (it.hasNext()) { - Map.Entry entry = (Map.Entry) it.next(); - if (excludeNullProperties && entry.getValue() == null) { - continue; - } - - Object key = entry.getKey(); - if (key == null) { - LOG.error("Cannot build expression for null key in {}", exprStack); - continue; - } - - String expr = null; - if (this.buildExpr) { - expr = this.expandExpr(key.toString()); - if (this.shouldExcludeProperty(expr)) { - continue; - } - expr = this.setExprStack(expr); - } - if (hasData) { - this.add(','); - } - hasData = true; - if (!warnedNonString && !(key instanceof String)) { - if (LOG.isWarnEnabled()) { - LOG.warn("JavaScript doesn't support non-String keys, using toString() on {}", key.getClass().getName()); - } - warnedNonString = true; - } - this.value(key.toString(), method); - this.add(":"); - this.value(entry.getValue(), method); - if (this.buildExpr) { - this.setExprStack(expr); - } - } - - this.add("}"); - } - - /* - * Add date to buffer - */ - protected void date(Date date, Method method) { - JSON json = null; - if (method != null) - json = method.getAnnotation(JSON.class); - if (this.formatter == null) - this.formatter = new SimpleDateFormat(JSONUtil.RFC3339_FORMAT); - - DateFormat formatter = (json != null) && (json.format().length() > 0) ? new SimpleDateFormat(json - .format()) : this.formatter; - this.string(formatter.format(date)); - } - - /* - * Add array to buffer - */ - protected void array(Iterator it, Method method) throws JSONException { - this.add("["); - - boolean hasData = false; - for (int i = 0; it.hasNext(); i++) { - String expr = null; - if (this.buildExpr) { - expr = this.expandExpr(i); - if (this.shouldExcludeProperty(expr)) { - it.next(); - continue; - } - expr = this.setExprStack(expr); - } - if (hasData) { - this.add(','); - } - hasData = true; - this.value(it.next(), method); - if (this.buildExpr) { - this.setExprStack(expr); - } - } - - this.add("]"); - } - - /* - * Add array to buffer - */ - protected void array(Object object, Method method) throws JSONException { - this.add("["); - - int length = Array.getLength(object); - - boolean hasData = false; - for (int i = 0; i < length; ++i) { - String expr = null; - if (this.buildExpr) { - expr = this.expandExpr(i); - if (this.shouldExcludeProperty(expr)) { - continue; - } - expr = this.setExprStack(expr); - } - if (hasData) { - this.add(','); - } - hasData = true; - this.value(Array.get(object, i), method); - if (this.buildExpr) { - this.setExprStack(expr); - } - } - - this.add("]"); - } - - /* - * Add boolean to buffer - */ - protected void bool(boolean b) { - this.add(b ? "true" : "false"); - } - - /** - * escape characters - * - * @param obj the object to escape - */ - protected void string(Object obj) { - this.add('"'); - - CharacterIterator it = new StringCharacterIterator(obj.toString()); - - for (char c = it.first(); c != CharacterIterator.DONE; c = it.next()) { - if (c == '"') { - this.add("\\\""); - } else if (c == '\\') { - this.add("\\\\"); - } else if (c == '/') { - this.add("\\/"); - } else if (c == '\b') { - this.add("\\b"); - } else if (c == '\f') { - this.add("\\f"); - } else if (c == '\n') { - this.add("\\n"); - } else if (c == '\r') { - this.add("\\r"); - } else if (c == '\t') { - this.add("\\t"); - } else if (Character.isISOControl(c)) { - this.unicode(c); - } else { - this.add(c); - } - } - - this.add('"'); - } - - /* - * Add object to buffer - */ - protected void add(Object obj) { - this.buf.append(obj); - } - - /* - * Add char to buffer - */ - protected void add(char c) { - this.buf.append(c); - } - - /** - * Represent as unicode - * - * @param c character to be encoded - */ - protected void unicode(char c) { - this.add("\\u"); - - int n = c; - - for (int i = 0; i < 4; ++i) { - int digit = (n & 0xf000) >> 12; - - this.add(hex[digit]); - n <<= 4; - } - } - - public void setIgnoreHierarchy(boolean ignoreHierarchy) { - this.ignoreHierarchy = ignoreHierarchy; - } - - /** - * If true, an Enum is serialized as a bean with a special property - * _name=name() as all as all other properties defined within the enum.
- * If false, an Enum is serialized as a name=value pair (name=name()) - * - * @param enumAsBean true to serialize an enum as a bean instead of as a name=value - * pair (default=false) - */ - public void setEnumAsBean(boolean enumAsBean) { - this.enumAsBean = enumAsBean; - } - - public void setDateFormatter(String defaultDateFormat) { - if (defaultDateFormat != null) { - this.formatter = new SimpleDateFormat(defaultDateFormat); - } - } - - public void setCacheBeanInfo(boolean cacheBeanInfo) { - this.cacheBeanInfo = cacheBeanInfo; - } +public interface JSONWriter { + boolean ENUM_AS_BEAN_DEFAULT = false; - protected static class JSONAnnotationFinder { - private boolean serialize = true; - private Method accessor; - private String name; + String write(Object object) throws JSONException; - public JSONAnnotationFinder(Method accessor) { - this.accessor = accessor; - } + String write(Object object, Collection excludeProperties, + Collection includeProperties, boolean excludeNullProperties) throws JSONException; - public boolean shouldSerialize() { - return serialize; - } + void setIgnoreHierarchy(boolean ignoreHierarchy); - public String getName() { - return name; - } + void setEnumAsBean(boolean enumAsBean); + void setDateFormatter(String defaultDateFormat); - public JSONAnnotationFinder invoke() { - JSON json = accessor.getAnnotation(JSON.class); - serialize = json.serialize(); - if (serialize && json.name().length() > 0) { - name = json.name(); - } - return this; - } - } + void setCacheBeanInfo(boolean cacheBeanInfo); + void setExcludeProxyProperties(boolean excludeProxyProperties); } diff --git a/plugins/json/src/main/resources/struts-plugin.xml b/plugins/json/src/main/resources/struts-plugin.xml index 01fc1bd305..ec00c1c52d 100644 --- a/plugins/json/src/main/resources/struts-plugin.xml +++ b/plugins/json/src/main/resources/struts-plugin.xml @@ -5,7 +5,7 @@ "http://struts.apache.org/dtds/struts-2.5.dtd"> - + diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java b/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java similarity index 85% rename from plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java rename to plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java index 2a9d733cd1..6e55fb8f13 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java @@ -13,7 +13,7 @@ import java.util.Map; import java.util.TimeZone; -public class JSONWriterTest extends StrutsTestCase{ +public class DefaultJSONWriterTest extends StrutsTestCase{ @Test public void testWrite() throws Exception { Bean bean1=new Bean(); @@ -27,10 +27,10 @@ public void testWrite() throws Exception { bean1.setEnumField(AnEnum.ValueA); bean1.setEnumBean(AnEnumBean.Two); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); String json = jsonWriter.write(bean1); - TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-01.txt"), json); + TestUtils.assertEquals(DefaultJSONWriter.class.getResource("jsonwriter-write-bean-01.txt"), json); } @Test @@ -52,11 +52,11 @@ public void testWriteExcludeNull() throws Exception { m.put("c", "z"); bean1.setMap(m); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); jsonWriter.setIgnoreHierarchy(false); String json = jsonWriter.write(bean1, null, null, true); - TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-03.txt"), json); + TestUtils.assertEquals(DefaultJSONWriter.class.getResource("jsonwriter-write-bean-03.txt"), json); } private class BeanWithMap extends Bean{ @@ -85,11 +85,11 @@ public void testWriteAnnotatedBean() throws Exception { bean1.setEnumBean(AnEnumBean.Two); bean1.setUrl(new URL("http://www.google.com")); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); jsonWriter.setIgnoreHierarchy(false); String json = jsonWriter.write(bean1); - TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-02.txt"), json); + TestUtils.assertEquals(DefaultJSONWriter.class.getResource("jsonwriter-write-bean-02.txt"), json); } @Test @@ -108,11 +108,11 @@ public void testWriteBeanWithList() throws Exception { errors.add("Field is required"); bean1.setErrors(errors); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); jsonWriter.setIgnoreHierarchy(false); String json = jsonWriter.write(bean1); - TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-04.txt"), json); + TestUtils.assertEquals(DefaultJSONWriter.class.getResource("jsonwriter-write-bean-04.txt"), json); } private class BeanWithList extends Bean { @@ -147,7 +147,7 @@ public void testCanSerializeADate() throws Exception { SingleDateBean dateBean = new SingleDateBean(); dateBean.setDate(sdf.parse("2012-12-23 10:10:10 GMT")); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); TimeZone.setDefault(TimeZone.getTimeZone("GMT")); @@ -162,7 +162,7 @@ public void testCanSetDefaultDateFormat() throws Exception { SingleDateBean dateBean = new SingleDateBean(); dateBean.setDate(sdf.parse("2012-12-23 10:10:10 GMT")); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); jsonWriter.setDateFormatter("MM-dd-yyyy"); String json = jsonWriter.write(dateBean); diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java index 0db7010c61..7d07f516ae 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java @@ -46,7 +46,7 @@ public void testEnumAsNameValue() throws Exception { bean1.setEnumField(AnEnum.ValueA); bean1.setEnumBean(AnEnumBean.Two); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(false); String json = jsonWriter.write(bean1); @@ -88,7 +88,7 @@ public void testEnumAsBean() throws Exception { bean1.setEnumField(AnEnum.ValueA); bean1.setEnumBean(AnEnumBean.Two); - JSONWriter jsonWriter = new JSONWriter(); + JSONWriter jsonWriter = new DefaultJSONWriter(); jsonWriter.setEnumAsBean(true); String json = jsonWriter.write(bean1); diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java index edf61545a3..3973841089 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java @@ -71,7 +71,7 @@ public void testJSONUtilNPEOnNullMehtod() { public void testJSONWriterEndlessLoopOnExludedProperties() throws JSONException { Pattern all = Pattern.compile(".*"); - JSONWriter writer = new JSONWriter(); + JSONWriter writer = new DefaultJSONWriter(); writer.write(Arrays.asList("a", "b"), Arrays.asList(all), null, false); } From 5bb472fa8585fddb38767dd4752a50cd5f51ff61 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 11 Sep 2017 18:40:34 +0430 Subject: [PATCH 0165/2288] WW-4034 Allows to use custom JSONwriter --- .../src/main/java/org/apache/struts2/json/JSONConstants.java | 1 + .../json/src/main/java/org/apache/struts2/json/JSONUtil.java | 5 +++-- plugins/json/src/main/resources/struts-plugin.xml | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java index 2f46769e44..64067c7f21 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java @@ -25,5 +25,6 @@ */ public class JSONConstants { + public static final String JSON_WRITER = "struts.json.writer"; public static final String RESULT_EXCLUDE_PROXY_PROPERTIES = "struts.json.result.excludeProxyProperties"; } diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java index feb8594f2a..b68b46cc4d 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java @@ -41,6 +41,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; @@ -63,8 +64,8 @@ public class JSONUtil { private static JSONWriter writer = new DefaultJSONWriter(); @Inject - public static void setWriter(JSONWriter writer) { - JSONUtil.writer = writer; + public static void setContainer(Container container) { + JSONUtil.writer = container.getInstance(JSONWriter.class, container.getInstance(String.class, JSONConstants.JSON_WRITER)); } /** diff --git a/plugins/json/src/main/resources/struts-plugin.xml b/plugins/json/src/main/resources/struts-plugin.xml index ec00c1c52d..19171e0d15 100644 --- a/plugins/json/src/main/resources/struts-plugin.xml +++ b/plugins/json/src/main/resources/struts-plugin.xml @@ -5,7 +5,9 @@ "http://struts.apache.org/dtds/struts-2.5.dtd"> - + + + From 996e17927beb13b3368421294cdb9521d96f8db3 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 13 Sep 2017 11:47:55 +0430 Subject: [PATCH 0166/2288] WW-4034 Makes JSONWriter not static prototype to fix concurrent calls --- .../apache/struts2/json/JSONInterceptor.java | 9 ++- .../org/apache/struts2/json/JSONResult.java | 10 ++- .../org/apache/struts2/json/JSONUtil.java | 29 ++++---- .../json/src/main/resources/struts-plugin.xml | 5 +- .../struts2/json/JSONInterceptorTest.java | 21 ++++++ .../apache/struts2/json/JSONResultTest.java | 67 ++++++++++++++++++- .../org/apache/struts2/json/JSONUtilTest.java | 8 ++- 7 files changed, 129 insertions(+), 20 deletions(-) diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java index 66be65f4f7..e03b96e85e 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java @@ -73,6 +73,13 @@ public class JSONInterceptor extends AbstractInterceptor { private String jsonContentType = "application/json"; private String jsonRpcContentType = "application/json-rpc"; + private JSONUtil jsonUtil; + + @Inject + public void setJsonUtil(JSONUtil jsonUtil) { + this.jsonUtil = jsonUtil; + } + @SuppressWarnings("unchecked") public String intercept(ActionInvocation invocation) throws Exception { HttpServletRequest request = ServletActionContext.getRequest(); @@ -170,7 +177,7 @@ public String intercept(ActionInvocation invocation) throws Exception { result = rpcResponse; } - String json = JSONUtil.serialize(result, excludeProperties, getIncludeProperties(), + String json = jsonUtil.serialize(result, excludeProperties, getIncludeProperties(), ignoreHierarchy, excludeNullProperties); json = addCallbackIfApplicable(request, json); boolean writeGzip = enableGZIP && JSONUtil.isGzipInRequest(request); diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java index 5f14a8d9cd..f52f7d765a 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java @@ -102,6 +102,7 @@ public class JSONResult implements Result { private String wrapPrefix; private String wrapSuffix; private boolean devMode = false; + private JSONUtil jsonUtil; @Inject(StrutsConstants.STRUTS_I18N_ENCODING) public void setDefaultEncoding(String val) { @@ -112,7 +113,12 @@ public void setDefaultEncoding(String val) { public void setDevMode(String val) { this.devMode = BooleanUtils.toBoolean(val); } - + + @Inject + public void setJsonUtil(JSONUtil jsonUtil) { + this.jsonUtil = jsonUtil; + } + /** * Gets a list of regular expressions of properties to exclude from the JSON * output. @@ -219,7 +225,7 @@ protected Object findRootObject(ActionInvocation invocation) { } protected String createJSONString(HttpServletRequest request, Object rootObject) throws JSONException { - String json = JSONUtil.serialize(rootObject, excludeProperties, includeProperties, ignoreHierarchy, + String json = jsonUtil.serialize(rootObject, excludeProperties, includeProperties, ignoreHierarchy, enumAsBean, excludeNullProperties, defaultDateFormat, cacheBeanInfo); json = addCallbackIfApplicable(request, json); return json; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java index b68b46cc4d..bcc3d81c4a 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java @@ -61,11 +61,16 @@ public class JSONUtil { private static final Logger LOG = LogManager.getLogger(JSONUtil.class); - private static JSONWriter writer = new DefaultJSONWriter(); + private JSONWriter writer; + + public void setWriter(JSONWriter writer) { + this.writer = writer; + } @Inject - public static void setContainer(Container container) { - JSONUtil.writer = container.getInstance(JSONWriter.class, container.getInstance(String.class, JSONConstants.JSON_WRITER)); + public void setContainer(Container container) { + setWriter(container.getInstance(JSONWriter.class, container.getInstance(String.class, + JSONConstants.JSON_WRITER))); } /** @@ -78,7 +83,7 @@ public static void setContainer(Container container) { * @return JSON string * @throws JSONException in case of error during serialize */ - public static String serialize(Object object, boolean cacheBeanInfo) throws JSONException { + public String serialize(Object object, boolean cacheBeanInfo) throws JSONException { writer.setCacheBeanInfo(cacheBeanInfo); return writer.write(object); } @@ -101,7 +106,7 @@ public static String serialize(Object object, boolean cacheBeanInfo) throws JSON * @return JSON string * @throws JSONException in case of error during serialize */ - public static String serialize(Object object, Collection excludeProperties, + public String serialize(Object object, Collection excludeProperties, Collection includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties) throws JSONException { return serialize(object, excludeProperties, includeProperties, @@ -128,7 +133,7 @@ public static String serialize(Object object, Collection excludePropert * @return JSON string * @throws JSONException in case of error during serialize */ - public static String serialize(Object object, Collection excludeProperties, + public String serialize(Object object, Collection excludeProperties, Collection includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties, boolean cacheBeanInfo) throws JSONException { @@ -159,7 +164,7 @@ public static String serialize(Object object, Collection excludePropert * @return JSON string * @throws JSONException in case of error during serialize */ - public static String serialize(Object object, Collection excludeProperties, + public String serialize(Object object, Collection excludeProperties, Collection includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat) throws JSONException { return serialize(object, excludeProperties, includeProperties, ignoreHierarchy, enumAsBean, @@ -190,7 +195,7 @@ public static String serialize(Object object, Collection excludePropert * @return JSON string * @throws JSONException in case of error during serialize */ - public static String serialize(Object object, Collection excludeProperties, + public String serialize(Object object, Collection excludeProperties, Collection includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat, boolean cacheBeanInfo) throws JSONException { writer.setIgnoreHierarchy(ignoreHierarchy); @@ -210,7 +215,7 @@ public static String serialize(Object object, Collection excludePropert * @throws IOException in case of IO errors * @throws JSONException in case of error during serialize */ - public static void serialize(Writer writer, Object object) throws IOException, JSONException { + public void serialize(Writer writer, Object object) throws IOException, JSONException { serialize(writer, object, CACHE_BEAN_INFO_DEFAULT); } @@ -226,7 +231,7 @@ public static void serialize(Writer writer, Object object) throws IOException, J * @throws IOException in case of IO errors * @throws JSONException in case of error during serialize */ - public static void serialize(Writer writer, Object object, boolean cacheBeanInfo) throws IOException, JSONException { + public void serialize(Writer writer, Object object, boolean cacheBeanInfo) throws IOException, JSONException { writer.write(serialize(object, cacheBeanInfo)); } @@ -248,7 +253,7 @@ public static void serialize(Writer writer, Object object, boolean cacheBeanInfo * @throws IOException in case of IO errors * @throws JSONException in case of error during serialize */ - public static void serialize(Writer writer, Object object, Collection excludeProperties, + public void serialize(Writer writer, Object object, Collection excludeProperties, Collection includeProperties, boolean excludeNullProperties) throws IOException, JSONException { serialize(writer, object, excludeProperties, includeProperties, excludeNullProperties, CACHE_BEAN_INFO_DEFAULT); @@ -274,7 +279,7 @@ public static void serialize(Writer writer, Object object, Collection e * @throws IOException in case of IO errors * @throws JSONException in case of error during serialize */ - public static void serialize(Writer writer, Object object, Collection excludeProperties, + public void serialize(Writer writer, Object object, Collection excludeProperties, Collection includeProperties, boolean excludeNullProperties, boolean cacheBeanInfo) throws IOException, JSONException { writer.write(serialize(object, excludeProperties, includeProperties, true, excludeNullProperties, cacheBeanInfo)); diff --git a/plugins/json/src/main/resources/struts-plugin.xml b/plugins/json/src/main/resources/struts-plugin.xml index 19171e0d15..5af6b91151 100644 --- a/plugins/json/src/main/resources/struts-plugin.xml +++ b/plugins/json/src/main/resources/struts-plugin.xml @@ -5,10 +5,11 @@ "http://struts.apache.org/dtds/struts-2.5.dtd"> - + - + diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java index 5ff929caae..5f1941273d 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java @@ -95,6 +95,9 @@ public void testSMDDisabledSMD() throws Exception { this.request.addHeader("Content-Type", "application/json-rpc"); JSONInterceptor interceptor = new JSONInterceptor(); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); this.invocation.setAction(action); @@ -115,6 +118,9 @@ public void testSMDAliasedMethodCall1() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest2 action = new SMDActionTest2(); this.invocation.setAction(action); @@ -133,6 +139,9 @@ public void testSMDAliasedMethodCall2() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest2 action = new SMDActionTest2(); this.invocation.setAction(action); @@ -151,6 +160,9 @@ public void testSMDNoMethod() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); this.invocation.setAction(action); @@ -196,6 +208,9 @@ public void testSMDPrimitivesNoResult() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); this.invocation.setAction(action); @@ -231,6 +246,9 @@ public void testSMDReturnObject() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest2 action = new SMDActionTest2(); this.invocation.setAction(action); @@ -256,6 +274,9 @@ public void testSMDObjectsNoResult() throws Exception { JSONInterceptor interceptor = new JSONInterceptor(); interceptor.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + interceptor.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); this.invocation.setAction(action); diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java index 3973841089..ea6086593c 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java @@ -62,7 +62,9 @@ public void testJSONUtilNPEOnNullMehtod() { Map map = new HashMap(); map.put("createtime", new Date()); try { - JSONUtil.serialize(map, JSONUtil.CACHE_BEAN_INFO_DEFAULT); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + jsonUtil.serialize(map, JSONUtil.CACHE_BEAN_INFO_DEFAULT); } catch (JSONException e) { fail(e.getMessage()); } @@ -77,6 +79,9 @@ public void testJSONWriterEndlessLoopOnExludedProperties() throws JSONException public void testSMDDisabledSMD() throws Exception { JSONResult result = new JSONResult(); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); stack.push(action); @@ -93,6 +98,9 @@ public void testSMDDisabledSMD() throws Exception { public void testSMDDefault() throws Exception { JSONResult result = new JSONResult(); result.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); SMDActionTest1 action = new SMDActionTest1(); stack.push(action); @@ -110,6 +118,9 @@ public void testSMDDefault() throws Exception { public void testSMDDefaultAnnotations() throws Exception { JSONResult result = new JSONResult(); result.setEnableSMD(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); SMDActionTest2 action = new SMDActionTest2(); stack.push(action); @@ -127,6 +138,9 @@ public void testSMDDefaultAnnotations() throws Exception { public void testExcludeNullPropeties() throws Exception { JSONResult result = new JSONResult(); result.setExcludeNullProperties(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); action.setFoo("fool"); @@ -144,6 +158,9 @@ public void testExcludeNullPropeties() throws Exception { public void testWrapPrefix() throws Exception { JSONResult result = new JSONResult(); result.setWrapPrefix("_prefix_"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction2 action = new TestAction2(); stack.push(action); @@ -160,6 +177,9 @@ public void testWrapPrefix() throws Exception { public void testSuffix() throws Exception { JSONResult result = new JSONResult(); result.setWrapSuffix("_suffix_"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction2 action = new TestAction2(); stack.push(action); @@ -176,6 +196,9 @@ public void testSuffix() throws Exception { public void testCustomDateFormat() throws Exception { JSONResult result = new JSONResult(); result.setDefaultDateFormat("MM-dd-yyyy"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z"); SingleDateBean dateBean = new SingleDateBean(); @@ -194,6 +217,9 @@ public void testPrefixAndSuffix() throws Exception { JSONResult result = new JSONResult(); result.setWrapPrefix("_prefix_"); result.setWrapSuffix("_suffix_"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction2 action = new TestAction2(); stack.push(action); @@ -211,6 +237,9 @@ public void testPrefix() throws Exception { JSONResult result = new JSONResult(); result.setExcludeNullProperties(true); result.setPrefix(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); action.setFoo("fool"); @@ -228,6 +257,9 @@ public void testPrefix() throws Exception { @SuppressWarnings("unchecked") public void test() throws Exception { JSONResult result = new JSONResult(); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); @@ -311,6 +343,9 @@ public void test() throws Exception { public void testHierarchy() throws Exception { JSONResult result = new JSONResult(); result.setIgnoreHierarchy(false); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction3 action = new TestAction3(); stack.push(action); @@ -327,6 +362,9 @@ public void testHierarchy() throws Exception { @SuppressWarnings("unchecked") public void testCommentWrap() throws Exception { JSONResult result = new JSONResult(); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); @@ -406,6 +444,9 @@ public void testCommentWrap() throws Exception { } private void executeTest2Action(JSONResult result) throws Exception { + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); @@ -448,6 +489,9 @@ public void test2() throws Exception { public void testJSONP() throws Exception { JSONResult result = new JSONResult(); result.setCallbackParameter("callback"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); request.addParameter("callback", "exec"); executeTest2Action(result); @@ -462,6 +506,9 @@ public void testJSONP() throws Exception { public void testNoCache() throws Exception { JSONResult result = new JSONResult(); result.setNoCache(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); executeTest2Action(result); @@ -473,6 +520,9 @@ public void testNoCache() throws Exception { public void testContentType() throws Exception { JSONResult result = new JSONResult(); result.setContentType("some_super_content"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); executeTest2Action(result); @@ -482,6 +532,9 @@ public void testContentType() throws Exception { public void testStatusCode() throws Exception { JSONResult result = new JSONResult(); result.setStatusCode(HttpServletResponse.SC_CONTINUE); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); executeTest2Action(result); @@ -494,6 +547,9 @@ public void testStatusCode() throws Exception { public void test2WithEnumBean() throws Exception { JSONResult result = new JSONResult(); result.setEnumAsBean(true); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); executeTest2Action(result); @@ -512,6 +568,9 @@ public void test2WithEnumBean() throws Exception { public void testIncludeProperties() throws Exception { JSONResult result = new JSONResult(); result.setIncludeProperties("foo"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); action.setFoo("fooValue"); @@ -529,6 +588,9 @@ public void testIncludeProperties() throws Exception { public void testIncludePropertiesWithList() throws Exception { JSONResult result = new JSONResult(); result.setIncludeProperties("^list\\[\\d+\\]\\.booleanField"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); @@ -553,6 +615,9 @@ public void testIncludePropertiesWithList() throws Exception { public void testIncludePropertiesWithSetList() throws Exception { JSONResult result = new JSONResult(); result.setIncludeProperties("^set\\[\\d+\\]\\.list\\[\\d+\\]\\.booleanField"); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + result.setJsonUtil(jsonUtil); TestAction action = new TestAction(); stack.push(action); diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java index dab5924531..b086f01a2a 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java @@ -45,7 +45,9 @@ public void testSerializeDeserialize() throws Exception { bean1.setEnumField(AnEnum.ValueA); bean1.setEnumBean(AnEnumBean.Two); - String json = JSONUtil.serialize(bean1, JSONUtil.CACHE_BEAN_INFO_DEFAULT); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + String json = jsonUtil.serialize(bean1, JSONUtil.CACHE_BEAN_INFO_DEFAULT); Map result = (Map) JSONUtil.deserialize(json); assertEquals("str", result.get("stringField")); @@ -72,7 +74,9 @@ public void testSerializeListOfList() throws Exception { // This additional 'listOfLists' pattern should be omitted, but not with current version of JSONUtil List includeProperties = JSONUtil.processIncludePatterns(JSONUtil.asSet("listOfLists,listOfLists\\[\\d+\\]\\[\\d+\\]"), JSONUtil.REGEXP_PATTERN); - String actual = JSONUtil.serialize(bean, null, new ArrayList(includeProperties), false, false); + JSONUtil jsonUtil = new JSONUtil(); + jsonUtil.setWriter(new DefaultJSONWriter()); + String actual = jsonUtil.serialize(bean, null, new ArrayList(includeProperties), false, false); assertEquals("{\"listOfLists\":[[\"1\",\"2\"],[\"3\",\"4\"],[\"5\",\"6\"],[\"7\",\"8\"],[\"9\",\"0\"]]}", actual); } From d41bd50a6ef5ddc14dd0502fd9cd36dff09e9e6c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 19 Sep 2017 09:19:42 +0200 Subject: [PATCH 0167/2288] WW-4859 WW-4860 Upgrades jackson and json-lib jars --- plugins/rest/pom.xml | 5 ----- pom.xml | 13 ++++++++++++- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index caa6808963..f85b4962a2 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -34,7 +34,6 @@ jar - 2.6.1 UTF-8 @@ -52,14 +51,10 @@ com.fasterxml.jackson.core jackson-core - ${jackson.version} - compile com.fasterxml.jackson.core jackson-databind - ${jackson.version} - compile diff --git a/pom.xml b/pom.xml index 5af929e3e8..3a83b32ccb 100644 --- a/pom.xml +++ b/pom.xml @@ -919,7 +919,18 @@ net.sf.json-lib json-lib jdk15 - 2.3 + 2.4 + + + + com.fasterxml.jackson.core + jackson-core + 2.8.2 + + + com.fasterxml.jackson.core + jackson-databind + 2.8.2 From 50a0a72e9d4bcf96bdcb6e1d9adaefa8c11f19e8 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 19 Sep 2017 09:24:08 +0200 Subject: [PATCH 0168/2288] WW-4861 Adds fallback to lookup container using ActionContext --- .../opensymphony/xwork2/ActionSupport.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java index cb1ac47337..7d794716e7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java @@ -19,6 +19,9 @@ import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.ValidationAware; import com.opensymphony.xwork2.util.ValueStack; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.struts2.StrutsConstants; import java.io.Serializable; import java.util.*; @@ -29,6 +32,8 @@ */ public class ActionSupport implements Action, Validateable, ValidationAware, TextProvider, LocaleProvider, Serializable { + private static final Logger LOG = LogManager.getLogger(ActionSupport.class); + private final ValidationAwareSupport validationAware = new ValidationAwareSupport(); private transient TextProvider textProvider; @@ -274,6 +279,7 @@ public void pause(String result) { * @return reference to field with TextProvider */ protected TextProvider getTextProvider() { + checkContainer(); if (textProvider == null) { TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); textProvider = tpf.createInstance(getClass()); @@ -282,6 +288,7 @@ protected TextProvider getTextProvider() { } protected LocaleProvider getLocaleProvider() { + checkContainer(); if (localeProvider == null) { LocaleProviderFactory localeProviderFactory = container.getInstance(LocaleProviderFactory.class); localeProvider = localeProviderFactory.createLocaleProvider(); @@ -289,6 +296,25 @@ protected LocaleProvider getLocaleProvider() { return localeProvider; } + /** + * TODO: This a temporary solution, maybe we should consider stop injecting container into beans + */ + private void checkContainer() { + if (container == null) { + container = ActionContext.getContext().getContainer(); + if (container != null) { + boolean devMode = Boolean.parseBoolean(container.getInstance(String.class, StrutsConstants.STRUTS_DEVMODE)); + if (devMode) { + LOG.warn("Container is null, action was created manually? Fallback to ActionContext"); + } else { + LOG.debug("Container is null, action was created manually? Fallback to ActionContext"); + } + } else { + LOG.warn("Container is null, action was created out of ActionContext scope?!?"); + } + } + } + @Inject public void setContainer(Container container) { this.container = container; From fe31a24b74719b5583c38139f64532b51bb6e915 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 19 Sep 2017 10:27:57 +0200 Subject: [PATCH 0169/2288] WW-4861 Makes code more re-usable --- .../main/java/com/opensymphony/xwork2/ActionSupport.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java index 7d794716e7..434e699f20 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java @@ -279,8 +279,8 @@ public void pause(String result) { * @return reference to field with TextProvider */ protected TextProvider getTextProvider() { - checkContainer(); if (textProvider == null) { + Container container = getContainer(); TextProviderFactory tpf = container.getInstance(TextProviderFactory.class); textProvider = tpf.createInstance(getClass()); } @@ -288,8 +288,8 @@ protected TextProvider getTextProvider() { } protected LocaleProvider getLocaleProvider() { - checkContainer(); if (localeProvider == null) { + Container container = getContainer(); LocaleProviderFactory localeProviderFactory = container.getInstance(LocaleProviderFactory.class); localeProvider = localeProviderFactory.createLocaleProvider(); } @@ -299,7 +299,7 @@ protected LocaleProvider getLocaleProvider() { /** * TODO: This a temporary solution, maybe we should consider stop injecting container into beans */ - private void checkContainer() { + protected Container getContainer() { if (container == null) { container = ActionContext.getContext().getContainer(); if (container != null) { @@ -313,6 +313,7 @@ private void checkContainer() { LOG.warn("Container is null, action was created out of ActionContext scope?!?"); } } + return container; } @Inject From 2acf0ab16ea48f2c7d6acbeb8535cc4d669186fd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 26 Sep 2017 08:47:10 +0200 Subject: [PATCH 0170/2288] Reverts changes introduced with WW-4827 and adds default constructors --- .../main/java/com/opensymphony/xwork2/ObjectFactory.java | 7 +++++-- .../opensymphony/xwork2/spring/SpringObjectFactory.java | 8 +++----- .../xwork2/spring/SpringProxyableObjectFactory.java | 7 +------ .../spring/interceptor/ActionAutowiringInterceptor.java | 3 ++- .../java/com/opensymphony/xwork2/ProxyObjectFactory.java | 7 +------ .../interceptor/ScopedModelDrivenInterceptorTest.java | 4 +++- .../org/apache/struts2/dispatcher/DispatcherTest.java | 8 ++++---- .../java/org/apache/struts2/cdi/CdiObjectFactory.java | 5 +---- .../java/org/apache/struts2/cdi/CdiObjectFactoryTest.java | 6 +++--- .../convention/PackageBasedActionConfigBuilderTest.java | 7 +++++-- .../org/apache/struts2/osgi/DelegatingObjectFactory.java | 4 +--- .../org/apache/struts2/osgi/SpringOsgiObjectFactory.java | 5 +---- .../org/apache/struts2/plexus/PlexusObjectFactory.java | 5 +---- .../apache/struts2/spring/StrutsSpringObjectFactory.java | 6 ++++-- 14 files changed, 35 insertions(+), 47 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java index 652ef94a80..5dd6962efb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java @@ -49,8 +49,8 @@ public class ObjectFactory implements Serializable { private static final Logger LOG = LogManager.getLogger(ObjectFactory.class); private transient ClassLoader ccl; - private final Container container; + private Container container; private ActionFactory actionFactory; private ResultFactory resultFactory; private InterceptorFactory interceptorFactory; @@ -58,8 +58,11 @@ public class ObjectFactory implements Serializable { private ConverterFactory converterFactory; private UnknownHandlerFactory unknownHandlerFactory; + public ObjectFactory() { + } + @Inject - public ObjectFactory(Container container) { + public void setContainer(Container container) { this.container = container; } diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java index fffb037cd8..e2490b14c4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java @@ -61,6 +61,9 @@ public class SpringObjectFactory extends ObjectFactory implements ApplicationCon @Deprecated private boolean enableAopSupport = false; + public SpringObjectFactory() { + } + @Inject(value="applicationContextPath",required=false) public void setApplicationContextPath(String ctx) { if (ctx != null) { @@ -73,11 +76,6 @@ public void setEnableAopSupport(String enableAopSupport) { this.enableAopSupport = BooleanUtils.toBoolean(enableAopSupport); } - @Inject - public SpringObjectFactory(Container container) { - super(container); - } - /** * Set the Spring ApplicationContext that should be used to look beans up with. * diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java index b6ec98625e..6e1344ba2f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java @@ -23,9 +23,6 @@ import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.context.ApplicationContext; -import com.opensymphony.xwork2.inject.Container; -import com.opensymphony.xwork2.inject.Inject; - import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -41,9 +38,7 @@ public class SpringProxyableObjectFactory extends SpringObjectFactory { private List skipBeanNames = new ArrayList<>(); - @Inject - public SpringProxyableObjectFactory(Container container) { - super(container); + public SpringProxyableObjectFactory() { } @Override diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java index b3de475b3e..e351c74bf8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java @@ -106,7 +106,8 @@ public void setAutowireStrategy(Integer autowireStrategy) { LOG.warn("ApplicationContext could not be found. Action classes will not be autowired."); } else { setApplicationContext(applicationContext); - factory = new SpringObjectFactory(ActionContext.getContext().getContainer()); + factory = new SpringObjectFactory(); + factory.setContainer(ActionContext.getContext().getContainer()); factory.setApplicationContext(getApplicationContext()); if (autowireStrategy != null) { factory.setAutowireStrategy(autowireStrategy); diff --git a/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java b/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java index 93200ae5c2..7667b976d9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java +++ b/core/src/test/java/com/opensymphony/xwork2/ProxyObjectFactory.java @@ -5,17 +5,12 @@ import java.lang.reflect.Proxy; import java.util.Map; -import com.opensymphony.xwork2.inject.Container; -import com.opensymphony.xwork2.inject.Inject; - /** * ObjectFactory that returns a FooProxy in the buildBean if the clazz is FooAction */ public class ProxyObjectFactory extends ObjectFactory { - @Inject - public ProxyObjectFactory(Container container) { - super(container); + public ProxyObjectFactory() { } /** diff --git a/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java b/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java index 4f44aa2644..2623b46acb 100644 --- a/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptorTest.java @@ -36,7 +36,9 @@ public class ScopedModelDrivenInterceptorTest extends XWorkTestCase { public void setUp() throws Exception { super.setUp(); inter = new ScopedModelDrivenInterceptor(); - inter.setObjectFactory(new ProxyObjectFactory(container)); + ProxyObjectFactory factory = new ProxyObjectFactory(); + factory.setContainer(container); + inter.setObjectFactory(factory); } public void testResolveModel() throws Exception { diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index b920dcc09c..f555a19b12 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -230,7 +230,8 @@ public void testObjectFactoryDestroy() throws Exception { String reloadConfigs = container.getInstance(String.class, XWorkConstants.RELOAD_XML_CONFIGURATION); mockContainer.expectAndReturn("getInstance", C.args(C.eq(String.class), C.eq(XWorkConstants.RELOAD_XML_CONFIGURATION)), reloadConfigs); - final InnerDestroyableObjectFactory destroyedObjectFactory = new InnerDestroyableObjectFactory((Container) mockContainer.proxy()); + final InnerDestroyableObjectFactory destroyedObjectFactory = new InnerDestroyableObjectFactory(); + destroyedObjectFactory.setContainer((Container) mockContainer.proxy()); mockContainer.expectAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), destroyedObjectFactory); mockConfiguration.expectAndReturn("getContainer", mockContainer.proxy()); @@ -261,7 +262,7 @@ public void testInterceptorDestroy() throws Exception { packageConfigs.put("test", packageConfig); Mock mockContainer = new Mock(Container.class); - mockContainer.matchAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), new ObjectFactory((Container) mockContainer.proxy())); + mockContainer.matchAndReturn("getInstance", C.args(C.eq(ObjectFactory.class)), new ObjectFactory()); String reloadConfigs = container.getInstance(String.class, XWorkConstants.RELOAD_XML_CONFIGURATION); mockContainer.expectAndReturn("getInstance", C.args(C.eq(String.class), C.eq(XWorkConstants.RELOAD_XML_CONFIGURATION)), reloadConfigs); @@ -316,8 +317,7 @@ class DispatcherListenerState { public static class InnerDestroyableObjectFactory extends ObjectFactory implements ObjectFactoryDestroyable { public boolean destroyed = false; - public InnerDestroyableObjectFactory(Container container) { - super(container); + public InnerDestroyableObjectFactory() { } public void destroy() { diff --git a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java index b26581cfe7..e14103b050 100644 --- a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java +++ b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java @@ -20,7 +20,6 @@ package org.apache.struts2.cdi; import com.opensymphony.xwork2.ObjectFactory; -import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -74,9 +73,7 @@ public void setJndiKey( String jndiKey ) { Map, InjectionTarget> injectionTargetCache = new ConcurrentHashMap, InjectionTarget>(); - @Inject - public CdiObjectFactory(Container container) { - super(container); + public CdiObjectFactory() { LOG.info("Initializing Struts2 CDI integration..."); this.beanManager = findBeanManager(); if (beanManager != null) { diff --git a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java index 74c6f024a3..f35ac55637 100644 --- a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java +++ b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java @@ -27,19 +27,19 @@ public void setUp() throws Exception { @Test public void testFindBeanManager() throws Exception { - assertNotNull(new CdiObjectFactory(null).findBeanManager()); + assertNotNull(new CdiObjectFactory().findBeanManager()); } @Test public void testGetBean() throws Exception { - final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(null); + final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(); FooConsumer fooConsumer = (FooConsumer) cdiObjectFactory.buildBean(FooConsumer.class.getCanonicalName(), null, false); assertNotNull(fooConsumer); assertNotNull(fooConsumer.fooService); } @Test public void testGetInjectionTarget() throws Exception { - final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(null); + final CdiObjectFactory cdiObjectFactory = new CdiObjectFactory(); final InjectionTarget injectionTarget = cdiObjectFactory.getInjectionTarget(FooConsumer.class); assertNotNull(injectionTarget); assertTrue(cdiObjectFactory.injectionTargetCache.containsKey(FooConsumer.class)); diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java index f6bbbcc1d2..1bdc5a3e9f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java @@ -338,7 +338,8 @@ public Container getContainer() { configuration.addPackageConfig("class-level", classLevelParentPkg); ActionNameBuilder actionNameBuilder = new SEOActionNameBuilder("true", "-"); - ObjectFactory of = new ObjectFactory(mockContainer); + ObjectFactory of = new ObjectFactory(); + of.setContainer(mockContainer); DefaultInterceptorMapBuilder interceptorBuilder = new DefaultInterceptorMapBuilder(); interceptorBuilder.setConfiguration(configuration); @@ -780,7 +781,9 @@ public T getInstance(Class type) { } T obj; if (type == ObjectFactory.class) { - obj = type.getConstructor(Container.class).newInstance(this); + obj = type.getConstructor().newInstance(); + ((ObjectFactory)obj).setContainer(this); + OgnlReflectionProvider rp = new OgnlReflectionProvider() { @Override diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java index ed82d1bf92..0b069b0569 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java @@ -35,9 +35,7 @@ public class DelegatingObjectFactory extends ObjectFactory implements ObjectFact private BundleAccessor bundleResourceLoader; private OsgiConfigurationProvider osgiConfigurationProvider; - @Inject - public DelegatingObjectFactory(Container container) { - super(container); + public DelegatingObjectFactory() { } @Inject diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java index ac596e22e8..254f73ec65 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java @@ -23,7 +23,6 @@ import com.opensymphony.xwork2.ObjectFactory; import com.opensymphony.xwork2.util.ClassLoaderUtil; -import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import org.osgi.framework.ServiceReference; @@ -39,9 +38,7 @@ public class SpringOsgiObjectFactory extends ObjectFactory { private BundleAccessor bundleAccessor; - @Inject - public SpringOsgiObjectFactory(Container container) { - super(container); + public SpringOsgiObjectFactory() { } public Object buildBean(String className, Map extraContext, boolean injectInternal) throws Exception { diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java index 7131f579d5..24742998d4 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java @@ -28,7 +28,6 @@ import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.config.entities.InterceptorConfig; import com.opensymphony.xwork2.config.entities.ResultConfig; -import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.Interceptor; import org.apache.logging.log4j.Logger; @@ -81,9 +80,7 @@ public class PlexusObjectFactory extends ObjectFactory { private PlexusContainer base; private ReflectionProvider reflectionProvider; - @Inject - public PlexusObjectFactory(Container container) { - super(container); + public PlexusObjectFactory() { } @Inject diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java index cd524dd150..b1b3ea1f48 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java @@ -48,8 +48,12 @@ *

*/ public class StrutsSpringObjectFactory extends SpringObjectFactory { + private static final Logger LOG = LogManager.getLogger(StrutsSpringObjectFactory.class); + public StrutsSpringObjectFactory() { + } + /** * Constructs the spring object factory * @param autoWire The type of autowiring to use @@ -58,7 +62,6 @@ public class StrutsSpringObjectFactory extends SpringObjectFactory { * @param enableAopSupport enable AOP support * @param servletContext The servlet context * @param devMode development mode - * @param container container * @since 2.1.3 */ @Inject @@ -71,7 +74,6 @@ public StrutsSpringObjectFactory( @Inject(StrutsConstants.STRUTS_DEVMODE) String devMode, @Inject Container container) { - super(container); boolean useClassCache = BooleanUtils.toBoolean(useClassCacheStr); LOG.info("Initializing Struts-Spring integration..."); From 4dfc8a2d6a537c5a3028866617981c9c5165dae1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 26 Sep 2017 08:47:42 +0200 Subject: [PATCH 0171/2288] Introduces a new interface to allow initialise beans at the end of setup --- .../xwork2/inject/ContainerBuilder.java | 32 ++++++++++++++++++- .../xwork2/inject/Initializable.java | 29 +++++++++++++++++ 2 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java index 447a3d04a5..14f9e1595e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java @@ -21,7 +21,12 @@ package com.opensymphony.xwork2.inject; import java.lang.reflect.Member; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; import java.util.logging.Logger; /** @@ -42,6 +47,7 @@ public final class ContainerBuilder { final Map, InternalFactory> factories = new HashMap<>(); final List> singletonFactories = new ArrayList<>(); + final List> initializableFactories = new ArrayList<>(); final List> staticInjections = new ArrayList<>(); boolean created; boolean allowDuplicates = false; @@ -95,6 +101,20 @@ public T create(InternalContext context) { } }); } + if (Initializable.class.isAssignableFrom(key.getType())) { + initializableFactories.add( + new InternalFactory() { + public T create(InternalContext context) { + try { + context.setExternalContext(ExternalContext.newInstance(null, key, context.getContainerImpl())); + return scopedFactory.create(context); + } finally { + context.setExternalContext(null); + } + } + } + ); + } return this; } @@ -574,6 +594,16 @@ public Void call(InternalContext context) { } }); } + container.callInContext(new ContainerImpl.ContextualCallable() { + public Void call(InternalContext context) { + for (InternalFactory factory : initializableFactories) { + Initializable instance = (Initializable) factory.create(context); + instance.init(); + } + return null; + } + }); + container.injectStatics(staticInjections); return container; } diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java new file mode 100644 index 0000000000..0148b64548 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java @@ -0,0 +1,29 @@ +/* + * 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.inject; + +/** + * Beans marked with this interface will be always initialised + * after the internal DI mechanism will be created. + * + * It should be only used internally! + */ +public interface Initializable { + + void init(); + +} From 61931d7a3afab85111ecd03393feeac1f8060003 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 26 Sep 2017 08:48:42 +0200 Subject: [PATCH 0172/2288] Uses the new interface to init bean on the beginning --- .../xwork2/conversion/ConversionPropertiesProcessor.java | 4 +++- .../impl/DefaultConversionPropertiesProcessor.java | 7 +++++++ .../xwork2/conversion/impl/XWorkConverter.java | 6 ------ 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java index 6f5bd38223..84ad153eb0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java @@ -15,10 +15,12 @@ */ package com.opensymphony.xwork2.conversion; +import com.opensymphony.xwork2.inject.Initializable; + /** * Used to read converters from Properties file */ -public interface ConversionPropertiesProcessor { +public interface ConversionPropertiesProcessor extends Initializable { /** * Process given property to load converters as not required (Properties file doesn't have to exist) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java index f658967a10..691d07e0f8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java @@ -48,6 +48,13 @@ public void setTypeConverterHolder(TypeConverterHolder converterHolder) { this.converterHolder = converterHolder; } + @Override + public void init() { + LOG.debug("Processing default conversion properties files"); + processRequired("struts-default-conversion.properties"); + process("xwork-conversion.properties"); + } + public void process(String propsName) { loadConversionProperties(propsName, false); } diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index 0d556139bf..012d440558 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -171,12 +171,6 @@ public void setReloadingConfigs(String reloadingConfigs) { this.reloadingConfigs = Boolean.parseBoolean(reloadingConfigs); } - @Inject - public void setConversionPropertiesProcessor(ConversionPropertiesProcessor propertiesProcessor) { - propertiesProcessor.processRequired("struts-default-conversion.properties"); - propertiesProcessor.process("xwork-conversion.properties"); - } - @Inject public void setConversionFileProcessor(ConversionFileProcessor fileProcessor) { this.fileProcessor = fileProcessor; From 1a1a2e0b00bd28d4fc0a6bda78854b902b38b226 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 27 Sep 2017 08:05:12 +0200 Subject: [PATCH 0173/2288] Adds comment how to use a method --- .../java/com/opensymphony/xwork2/inject/Initializable.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java index 0148b64548..d66a0aae8e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java @@ -24,6 +24,9 @@ */ public interface Initializable { + /** + * Use this method to initialise your bean, the whole dependency graph was already built + */ void init(); } From ca63540256614f74f062134a82c0d1b1dc40eaa1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 27 Sep 2017 08:37:20 +0200 Subject: [PATCH 0174/2288] Extracts duplicated code into a method --- .../xwork2/inject/ContainerBuilder.java | 37 ++++++++----------- 1 file changed, 15 insertions(+), 22 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java index 14f9e1595e..0a51606b78 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java @@ -90,34 +90,27 @@ private ContainerBuilder factory(final Key key, final InternalFactory scopedFactory = scope.scopeFactory(key.getType(), key.getName(), factory); factories.put(key, scopedFactory); if (scope == Scope.SINGLETON) { - singletonFactories.add(new InternalFactory() { - public T create(InternalContext context) { - try { - context.setExternalContext(ExternalContext.newInstance(null, key, context.getContainerImpl())); - return scopedFactory.create(context); - } finally { - context.setExternalContext(null); - } - } - }); + singletonFactories.add(createCallableFactory(key, scopedFactory)); } if (Initializable.class.isAssignableFrom(key.getType())) { - initializableFactories.add( - new InternalFactory() { - public T create(InternalContext context) { - try { - context.setExternalContext(ExternalContext.newInstance(null, key, context.getContainerImpl())); - return scopedFactory.create(context); - } finally { - context.setExternalContext(null); - } - } - } - ); + initializableFactories.add(createCallableFactory(key, scopedFactory)); } return this; } + private InternalFactory createCallableFactory(final Key key, final InternalFactory scopedFactory) { + return new InternalFactory() { + public T create(InternalContext context) { + try { + context.setExternalContext(ExternalContext.newInstance(null, key, context.getContainerImpl())); + return scopedFactory.create(context); + } finally { + context.setExternalContext(null); + } + } + }; + } + /** * Ensures a key isn't already mapped. * From 15a6942789cb910860a9f3e12f6754c550bc5173 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 27 Sep 2017 08:48:19 +0200 Subject: [PATCH 0175/2288] Adds since tag --- .../main/java/com/opensymphony/xwork2/inject/Initializable.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java index d66a0aae8e..fbbed28aa6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Initializable.java @@ -21,6 +21,8 @@ * after the internal DI mechanism will be created. * * It should be only used internally! + * + * @since Struts 2.5.14 */ public interface Initializable { From 502c8976bdee948d464d483148cd6f11bff0e251 Mon Sep 17 00:00:00 2001 From: Burton Rhodes Date: Mon, 2 Oct 2017 10:39:51 -0500 Subject: [PATCH 0176/2288] Added requiredValue to Checkbox Struts Tag as a parameter. When requiredValue set to "false", unchecked checkbox elements will not be submitted with the form (i.e. no hidden input html elements will be created for the checkbox) --- .../apache/struts2/components/Checkbox.java | 10 ++++++++++ .../struts2/views/jsp/ui/CheckboxTag.java | 6 ++++++ .../resources/template/simple/checkbox.ftl | 7 +++++-- core/src/site/resources/tags/checkbox.html | 8 ++++++++ .../struts2/views/jsp/ui/CheckboxTest.java | 19 +++++++++++++++++++ .../struts2/views/jsp/ui/Checkbox-7.txt | 8 ++++++++ 6 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 core/src/test/resources/org/apache/struts2/views/jsp/ui/Checkbox-7.txt diff --git a/core/src/main/java/org/apache/struts2/components/Checkbox.java b/core/src/main/java/org/apache/struts2/components/Checkbox.java index a9f0fdc6b6..084d21047d 100644 --- a/core/src/main/java/org/apache/struts2/components/Checkbox.java +++ b/core/src/main/java/org/apache/struts2/components/Checkbox.java @@ -60,6 +60,7 @@ public class Checkbox extends UIBean { final public static String TEMPLATE = "checkbox"; protected String fieldValue; + protected String requiredValue; public Checkbox(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); @@ -75,6 +76,11 @@ protected void evaluateExtraParams() { } else { addParameter("fieldValue", "true"); } + if (requiredValue != null) { + addParameter("requiredValue", findString(requiredValue)); + } else { + addParameter("requiredValue", "true"); + } } protected Class getValueClassType() { @@ -86,4 +92,8 @@ public void setFieldValue(String fieldValue) { this.fieldValue = fieldValue; } + @StrutsTagAttribute(description="If set to false, unchecked elements will not be submitted with the form.", defaultValue="true") + public void setRequiredValue(String requiredValue) { + this.requiredValue = requiredValue; + } } diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java index ccf31bb2b0..d1771fc24c 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java @@ -38,6 +38,7 @@ public class CheckboxTag extends AbstractUITag { private static final long serialVersionUID = -350752809266337636L; protected String fieldValue; + protected String requiredValue; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new Checkbox(stack, req, res); @@ -47,9 +48,14 @@ protected void populateParams() { super.populateParams(); ((Checkbox) component).setFieldValue(fieldValue); + ((Checkbox) component).setRequiredValue(requiredValue); } public void setFieldValue(String aValue) { this.fieldValue = aValue; } + + public void setRequiredValue(String aValue) { + this.requiredValue = aValue; + } } diff --git a/core/src/main/resources/template/simple/checkbox.ftl b/core/src/main/resources/template/simple/checkbox.ftl index fd47810442..d3dfdb8e59 100644 --- a/core/src/main/resources/template/simple/checkbox.ftl +++ b/core/src/main/resources/template/simple/checkbox.ftl @@ -40,8 +40,11 @@ <#include "/${parameters.templateDir}/${parameters.expandTheme}/scripting-events.ftl" /> <#include "/${parameters.templateDir}/${parameters.expandTheme}/common-attributes.ftl" /> <#include "/${parameters.templateDir}/${parameters.expandTheme}/dynamic-attributes.ftl" /> -/> +/> +<#if (parameters.requiredValue?boolean)!true> + <#if parameters.disabled!false> disabled="disabled"<#rt/> - /> \ No newline at end of file + /> + \ No newline at end of file diff --git a/core/src/site/resources/tags/checkbox.html b/core/src/site/resources/tags/checkbox.html index 75cd10679b..42aa376288 100644 --- a/core/src/site/resources/tags/checkbox.html +++ b/core/src/site/resources/tags/checkbox.html @@ -289,6 +289,14 @@

Attributes

String Define required position of required form element (left|right) + + requiredValue + false + true + false + String + If set to true, unchecked elements will be submitted with the form. + style false diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java index d6971e8e0e..89240605e6 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java @@ -197,4 +197,23 @@ public void testDisabled() throws Exception { verify(CheckboxTag.class.getResource("Checkbox-6.txt")); } + + public void testRequiredValue() throws Exception { + TestAction testAction = (TestAction) action; + testAction.setFoo("true"); + + CheckboxTag tag = new CheckboxTag(); + tag.setPageContext(pageContext); + tag.setLabel("mylabel"); + tag.setName("foo"); + tag.setFieldValue("baz"); + tag.setRequiredValue("false"); + tag.setTitle("mytitle"); + tag.setDisabled("true"); + + tag.doStartTag(); + tag.doEndTag(); + + verify(CheckboxTag.class.getResource("Checkbox-7.txt")); + } } diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/Checkbox-7.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Checkbox-7.txt new file mode 100644 index 0000000000..0c6d470682 --- /dev/null +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/Checkbox-7.txt @@ -0,0 +1,8 @@ + + + + + + + + From 78ef9b204a7a78b901ce8fd5335e8862ff215202 Mon Sep 17 00:00:00 2001 From: Burton Rhodes Date: Tue, 3 Oct 2017 14:37:45 -0500 Subject: [PATCH 0177/2288] Change Checkbox tag parameter from requiredValue to submitUnchecked --- .../java/org/apache/struts2/components/Checkbox.java | 12 ++++++------ .../org/apache/struts2/views/jsp/ui/CheckboxTag.java | 8 ++++---- core/src/main/resources/template/simple/checkbox.ftl | 2 +- core/src/site/resources/tags/checkbox.html | 12 ++++++------ .../apache/struts2/views/jsp/ui/CheckboxTest.java | 4 ++-- 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/components/Checkbox.java b/core/src/main/java/org/apache/struts2/components/Checkbox.java index 084d21047d..3acc130f61 100644 --- a/core/src/main/java/org/apache/struts2/components/Checkbox.java +++ b/core/src/main/java/org/apache/struts2/components/Checkbox.java @@ -60,7 +60,7 @@ public class Checkbox extends UIBean { final public static String TEMPLATE = "checkbox"; protected String fieldValue; - protected String requiredValue; + protected String submitUnchecked; public Checkbox(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); @@ -76,10 +76,10 @@ protected void evaluateExtraParams() { } else { addParameter("fieldValue", "true"); } - if (requiredValue != null) { - addParameter("requiredValue", findString(requiredValue)); + if (submitUnchecked != null) { + addParameter("submitUnchecked", findString(submitUnchecked)); } else { - addParameter("requiredValue", "true"); + addParameter("submitUnchecked", "true"); } } @@ -93,7 +93,7 @@ public void setFieldValue(String fieldValue) { } @StrutsTagAttribute(description="If set to false, unchecked elements will not be submitted with the form.", defaultValue="true") - public void setRequiredValue(String requiredValue) { - this.requiredValue = requiredValue; + public void setSubmitUnchecked(String submitUnchecked) { + this.submitUnchecked = submitUnchecked; } } diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java index d1771fc24c..55d8104acb 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java @@ -38,7 +38,7 @@ public class CheckboxTag extends AbstractUITag { private static final long serialVersionUID = -350752809266337636L; protected String fieldValue; - protected String requiredValue; + protected String submitUnchecked; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new Checkbox(stack, req, res); @@ -48,14 +48,14 @@ protected void populateParams() { super.populateParams(); ((Checkbox) component).setFieldValue(fieldValue); - ((Checkbox) component).setRequiredValue(requiredValue); + ((Checkbox) component).setSubmitUnchecked(submitUnchecked); } public void setFieldValue(String aValue) { this.fieldValue = aValue; } - public void setRequiredValue(String aValue) { - this.requiredValue = aValue; + public void setSubmitUnchecked(String aValue) { + this.submitUnchecked = aValue; } } diff --git a/core/src/main/resources/template/simple/checkbox.ftl b/core/src/main/resources/template/simple/checkbox.ftl index d3dfdb8e59..605ed5c840 100644 --- a/core/src/main/resources/template/simple/checkbox.ftl +++ b/core/src/main/resources/template/simple/checkbox.ftl @@ -41,7 +41,7 @@ <#include "/${parameters.templateDir}/${parameters.expandTheme}/common-attributes.ftl" /> <#include "/${parameters.templateDir}/${parameters.expandTheme}/dynamic-attributes.ftl" /> /> -<#if (parameters.requiredValue?boolean)!true> +<#if (parameters.submitUnchecked?boolean)!true> <#if parameters.disabled!false> disabled="disabled"<#rt/> diff --git a/core/src/site/resources/tags/checkbox.html b/core/src/site/resources/tags/checkbox.html index 42aa376288..5633423bbe 100644 --- a/core/src/site/resources/tags/checkbox.html +++ b/core/src/site/resources/tags/checkbox.html @@ -290,20 +290,20 @@

Attributes

Define required position of required form element (left|right) - requiredValue + style false - true + false String - If set to true, unchecked elements will be submitted with the form. + The css style definitions for element to use - it's an alias of cssStyle attribute. - style + submitUnchecked false - + true false String - The css style definitions for element to use - it's an alias of cssStyle attribute. + If set to false, unchecked elements will not be submitted with the form. tabindex diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java index 89240605e6..f491aeac5d 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java @@ -198,7 +198,7 @@ public void testDisabled() throws Exception { verify(CheckboxTag.class.getResource("Checkbox-6.txt")); } - public void testRequiredValue() throws Exception { + public void testSubmitUnchecked() throws Exception { TestAction testAction = (TestAction) action; testAction.setFoo("true"); @@ -207,7 +207,7 @@ public void testRequiredValue() throws Exception { tag.setLabel("mylabel"); tag.setName("foo"); tag.setFieldValue("baz"); - tag.setRequiredValue("false"); + tag.setSubmitUnchecked("false"); tag.setTitle("mytitle"); tag.setDisabled("true"); From 0bf6bb24be9c23fc10b854d5e6caf553c3643865 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Thu, 5 Oct 2017 16:17:04 +0330 Subject: [PATCH 0178/2288] Fixes a snippet typo --- ...ExampleAction-submitVisitorValidatorsExamples-validation.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml index 91ddeb6e8d..3789b1c394 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml @@ -16,5 +16,5 @@ - + From ecdc0f837914913fc5f4813744f17f8d17a1814d Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Fri, 6 Oct 2017 14:03:22 +0330 Subject: [PATCH 0179/2288] WW-4034 a few non-functional changes --- .../org/apache/struts2/json/DefaultJSONWriter.java | 13 +++++++++---- plugins/json/src/main/resources/struts-plugin.xml | 6 +++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java index bdee41664a..bd2ebe90e5 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/DefaultJSONWriter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -40,7 +38,14 @@ import java.text.DateFormat; import java.text.SimpleDateFormat; import java.text.StringCharacterIterator; -import java.util.*; +import java.util.Calendar; +import java.util.Collection; +import java.util.Date; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Locale; +import java.util.Map; +import java.util.Stack; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.regex.Pattern; @@ -72,7 +77,7 @@ public class DefaultJSONWriter implements JSONWriter { private boolean enumAsBean = ENUM_AS_BEAN_DEFAULT; private boolean excludeNullProperties; private boolean cacheBeanInfo = true; - private boolean excludeProxyProperties = false; + private boolean excludeProxyProperties; @Inject(value = JSONConstants.RESULT_EXCLUDE_PROXY_PROPERTIES, required = false) public void setExcludeProxyProperties(String excludeProxyProperties) { diff --git a/plugins/json/src/main/resources/struts-plugin.xml b/plugins/json/src/main/resources/struts-plugin.xml index 5af6b91151..3e6f16834c 100644 --- a/plugins/json/src/main/resources/struts-plugin.xml +++ b/plugins/json/src/main/resources/struts-plugin.xml @@ -5,10 +5,10 @@ "http://struts.apache.org/dtds/struts-2.5.dtd"> - - - + + From 9e087e4c49330d59f839b06e81efa8905196d16f Mon Sep 17 00:00:00 2001 From: Pengyu Nie Date: Thu, 12 Oct 2017 14:51:25 -0500 Subject: [PATCH 0180/2288] remove an obsolete TODO comment --- .../struts2/views/freemarker/FreemarkerResultMockedTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java index 2a9fda6768..e050020271 100644 --- a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java +++ b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java @@ -100,7 +100,6 @@ public void testDynamicAttributesSupport() throws Exception { ActionMapping mapping = container.getInstance(ActionMapper.class).getMapping(request, configurationManager); dispatcher.serviceAction(request, response, mapping); - // TODO lukaszlenart: remove expectedJDK15 and if() after switching to Java 1.6 String expectedJDK17 = "" + "" From 3d33a82da59eaf44a404de2ef37d62c569a236bb Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 13 Oct 2017 18:37:49 +0200 Subject: [PATCH 0181/2288] Fixes JavaDoc --- .../struts2/dispatcher/multipart/MultiPartRequestWrapper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java index 571f5c3d36..a947caea7c 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java @@ -47,7 +47,7 @@ * *

* The files are uploaded when the object is instantiated. If there are any errors they are logged using - * {@link #addError(String)}. An action handling a multipart form should first check {@link #hasErrors()} + * {@link #addError(LocalizedMessage)}. An action handling a multipart form should first check {@link #hasErrors()} * before doing any other processing. *

* From c1e0528d46424e31e0706d873f5e07bca4c898eb Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 14 Oct 2017 18:01:40 +0330 Subject: [PATCH 0182/2288] WW-4869 Fixes JarEntryRevision --- .../xwork2/util/fs/JarEntryRevision.java | 73 +++++++++---------- 1 file changed, 34 insertions(+), 39 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java index 4b962af08d..268710fb83 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java @@ -3,12 +3,10 @@ import com.opensymphony.xwork2.FileManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; -import org.apache.commons.io.FileUtils; import java.io.IOException; +import java.net.JarURLConnection; import java.net.URL; -import java.util.jar.JarFile; -import java.util.zip.ZipEntry; /** * Represents jar resource revision, used for jar://* resource @@ -17,66 +15,63 @@ public class JarEntryRevision extends Revision { private static Logger LOG = LogManager.getLogger(JarEntryRevision.class); - private static final String JAR_FILE_NAME_SEPARATOR = "!/"; - private static final String JAR_FILE_EXTENSION_END = ".jar/"; - - private String jarFileName; - private String fileNameInJar; + private URL jarFileURL; private long lastModified; public static Revision build(URL fileUrl, FileManager fileManager) { // File within a Jar // Find separator index of jar filename and filename within jar - String jarFileName = ""; + JarURLConnection conn = null; try { - String fileName = fileUrl.toString(); - int separatorIndex = fileName.indexOf(JAR_FILE_NAME_SEPARATOR); - if (separatorIndex == -1) { - separatorIndex = fileName.lastIndexOf(JAR_FILE_EXTENSION_END); - } - if (separatorIndex == -1) { - LOG.warn("Could not find end of jar file!"); - return null; - } - - // Split file name - jarFileName = fileName.substring(0, separatorIndex); - int index = separatorIndex + JAR_FILE_NAME_SEPARATOR.length(); - String fileNameInJar = fileName.substring(index).replaceAll("%20", " "); - + conn = (JarURLConnection) fileUrl.openConnection(); + conn.setUseCaches(false); URL url = fileManager.normalizeToFileProtocol(fileUrl); if (url != null) { - JarFile jarFile = new JarFile(FileUtils.toFile(url)); - ZipEntry entry = jarFile.getEntry(fileNameInJar); - return new JarEntryRevision(jarFileName, fileNameInJar, entry.getTime()); + return new JarEntryRevision(fileUrl, conn.getJarEntry().getTime()); } else { return null; } } catch (Throwable e) { - LOG.warn("Could not create JarEntryRevision for [{}]!", jarFileName, e); + LOG.warn("Could not create JarEntryRevision for [{}]!", fileUrl, e); return null; } + finally { + if(null != conn) { + try { + conn.getInputStream().close(); + } catch (IOException ignored) { + } + } + } } - private JarEntryRevision(String jarFileName, String fileNameInJar, long lastModified) { - if ((jarFileName == null) || (fileNameInJar == null)) { - throw new IllegalArgumentException("JarFileName and FileNameInJar cannot be null"); + private JarEntryRevision(URL jarFileURL, long lastModified) { + if (jarFileURL == null) { + throw new IllegalArgumentException("jarFileURL cannot be null"); } - this.jarFileName = jarFileName; - this.fileNameInJar = fileNameInJar; + this.jarFileURL = jarFileURL; this.lastModified = lastModified; } public boolean needsReloading() { - ZipEntry entry; + JarURLConnection conn = null; + long lastLastModified = lastModified; try { - JarFile jarFile = new JarFile(this.jarFileName); - entry = jarFile.getEntry(this.fileNameInJar); - } catch (IOException e) { - entry = null; + conn = (JarURLConnection) jarFileURL.openConnection(); + conn.setUseCaches(false); + lastLastModified = conn.getJarEntry().getTime(); + } catch (IOException ignored) { + } + finally { + if(null != conn) { + try { + conn.getInputStream().close(); + } catch (IOException ignored) { + } + } } - return entry != null && (lastModified < entry.getTime()); + return lastModified < lastLastModified; } } From 8e17f5aeaa8a30cf4b25fd7279acb68e06cc5fdf Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 15 Oct 2017 17:58:17 +0330 Subject: [PATCH 0183/2288] WW-4869 Adds unit tests --- .../xwork2/util/fs/JarEntryRevisionTest.java | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java diff --git a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java new file mode 100644 index 0000000000..da36ab9b8a --- /dev/null +++ b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java @@ -0,0 +1,54 @@ +package com.opensymphony.xwork2.util.fs; + +import com.opensymphony.xwork2.FileManager; +import com.opensymphony.xwork2.FileManagerFactory; +import com.opensymphony.xwork2.XWorkTestCase; +import org.apache.commons.io.IOUtils; + +import java.io.FileOutputStream; +import java.io.InputStream; +import java.net.URL; +import java.util.jar.Attributes; +import java.util.jar.JarOutputStream; +import java.util.jar.Manifest; +import java.util.zip.ZipEntry; + +public class JarEntryRevisionTest extends XWorkTestCase { + + private FileManager fileManager; + + @Override + public void setUp() throws Exception { + super.setUp(); + fileManager = container.getInstance(FileManagerFactory.class).getFileManager(); + } + + private void createJarFile(long time) throws Exception { + Manifest manifest = new Manifest(); + manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, "1.0"); + FileOutputStream fos = new FileOutputStream("target/testNeedsReloading.jar", false); + JarOutputStream target = new JarOutputStream(fos, manifest); + target.putNextEntry(new ZipEntry("com/opensymphony/xwork2/util/fs/")); + ZipEntry entry = new ZipEntry("com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); + entry.setTime(time); + target.putNextEntry(entry); + InputStream source = getClass().getResourceAsStream("/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); + IOUtils.copy(source, target); + source.close(); + target.closeEntry(); + target.close(); + fos.close(); + } + + public void testNeedsReloading() throws Exception { + long now = System.currentTimeMillis(); + + createJarFile(now); + URL url = new URL("jar:file:target/testNeedsReloading.jar!/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); + Revision entry = JarEntryRevision.build(url, fileManager); + assertFalse(entry.needsReloading()); + + createJarFile(now + 60000); + assertTrue(entry.needsReloading()); + } +} From 518bcef7ea92fff0fe829894afb3ccb33d5db5f5 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 15 Oct 2017 18:06:01 +0330 Subject: [PATCH 0184/2288] WW-4869 Fixes demo created jar file name in unit tests --- .../com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java index da36ab9b8a..04826d502d 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java @@ -26,7 +26,7 @@ public void setUp() throws Exception { private void createJarFile(long time) throws Exception { Manifest manifest = new Manifest(); manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, "1.0"); - FileOutputStream fos = new FileOutputStream("target/testNeedsReloading.jar", false); + FileOutputStream fos = new FileOutputStream("target/JarEntryRevisionTest_testNeedsReloading.jar", false); JarOutputStream target = new JarOutputStream(fos, manifest); target.putNextEntry(new ZipEntry("com/opensymphony/xwork2/util/fs/")); ZipEntry entry = new ZipEntry("com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); @@ -44,7 +44,7 @@ public void testNeedsReloading() throws Exception { long now = System.currentTimeMillis(); createJarFile(now); - URL url = new URL("jar:file:target/testNeedsReloading.jar!/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); + URL url = new URL("jar:file:target/JarEntryRevisionTest_testNeedsReloading.jar!/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class"); Revision entry = JarEntryRevision.build(url, fileManager); assertFalse(entry.needsReloading()); From 8af1d014cbd3b5b3e1e524dbcf8b554b7a6b954c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 16 Oct 2017 12:08:38 +0330 Subject: [PATCH 0185/2288] WW-4871 Fixes StringConverter and improves it's tests --- .../conversion/impl/StringConverter.java | 9 ++-- .../conversion/impl/StringConverterTest.java | 46 +++++++++++++++---- 2 files changed, 42 insertions(+), 13 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index d8895e8c2a..ca5e7a1520 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -65,9 +65,12 @@ protected String convertToString(Locale locale, Object value) { if (Number.class.isInstance(value)) { NumberFormat format = NumberFormat.getNumberInstance(locale); format.setGroupingUsed(false); - if (Double.class.isInstance(value) || BigDecimal.class.isInstance(value)) { - format.setMinimumFractionDigits(1); - } + if (BigDecimal.class.isInstance(value)) + format.setMaximumFractionDigits(Integer.MAX_VALUE); + else if (Double.class.isInstance(value)) + format.setMaximumFractionDigits(15); + else if (Float.class.isInstance(value)) + format.setMaximumFractionDigits(7); return format.format(value); } else { return Objects.toString(value, null); diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index 27fbb6bc50..1be3a9756b 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -17,10 +17,10 @@ public void testIntegerToStringConversionPL() throws Exception { context.put(ActionContext.LOCALE, new Locale("pl", "PL")); // when - Object value = converter.convertValue(context, null, null, null, 234, null); + Object value = converter.convertValue(context, null, null, null, Integer.MIN_VALUE, null); // then - assertEquals("234", value); + assertEquals("" + Integer.MIN_VALUE, value); } public void testDoubleToStringConversionPL() throws Exception { @@ -29,11 +29,36 @@ public void testDoubleToStringConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when - Object value = converter.convertValue(context, null, null, null, 234.12, null); + // when has max fraction digits + Object value = converter.convertValue(context, null, null, null, Math.PI, null); - // then - assertEquals("234,12", value); + // then does not lose fraction digits + assertEquals("3,141592653589793", value); + + // when has max integer digits + value = converter.convertValue(context, null, null, null, Double.MAX_VALUE, null); + + // then does not lose integer digits + assertEquals(String.format("%.0f", Double.MAX_VALUE), value); + } + + public void testFloatToStringConversionPL() throws Exception { + // given + StringConverter converter = new StringConverter(); + Map context = new HashMap<>(); + context.put(ActionContext.LOCALE, new Locale("pl", "PL")); + + // when has max fraction digits + Object value = converter.convertValue(context, null, null, null, ((Double)Math.PI).floatValue(), null); + + // then does not lose fraction digits + assertEquals("3,1415927", value); + + // when has max integer digits + value = converter.convertValue(context, null, null, null, Float.MAX_VALUE, null); + + // then does not lose integer digits + assertEquals(String.format("%.0f", Float.MAX_VALUE), value); } public void testBigDecimalToStringConversionPL() throws Exception { @@ -42,11 +67,12 @@ public void testBigDecimalToStringConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when - Object value = converter.convertValue(context, null, null, null, BigDecimal.valueOf(234.12), null); + // when a bit bigger than double (310 integer and 17 fraction digits) + BigDecimal bd = new BigDecimal(String.format("%.0f", Double.MAX_VALUE) + "1.00000000000000001"); + Object value = converter.convertValue(context, null, null, null, bd, null); - // then - assertEquals("234,12", value); + // then does not lose integer and fraction digits + assertEquals(String.format("%.0f", Double.MAX_VALUE) + "1,00000000000000001", value); } public void testStringArrayToStringConversion() { From 69d6287566f23dcfded5fdcf8f25ac14f9c257e3 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 16 Oct 2017 23:15:26 +0330 Subject: [PATCH 0186/2288] WW-4871 Reverts setMinimumFractionDigits(1) to pass rest tests --- .../xwork2/conversion/impl/StringConverter.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index ca5e7a1520..97ac2506bd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -65,12 +65,15 @@ protected String convertToString(Locale locale, Object value) { if (Number.class.isInstance(value)) { NumberFormat format = NumberFormat.getNumberInstance(locale); format.setGroupingUsed(false); - if (BigDecimal.class.isInstance(value)) - format.setMaximumFractionDigits(Integer.MAX_VALUE); - else if (Double.class.isInstance(value)) - format.setMaximumFractionDigits(15); - else if (Float.class.isInstance(value)) - format.setMaximumFractionDigits(7); + if (BigDecimal.class.isInstance(value) || Double.class.isInstance(value) || Float.class.isInstance(value)) { + format.setMinimumFractionDigits(1); + if (BigDecimal.class.isInstance(value)) + format.setMaximumFractionDigits(Integer.MAX_VALUE); + else if (Double.class.isInstance(value)) + format.setMaximumFractionDigits(15); + else if (Float.class.isInstance(value)) + format.setMaximumFractionDigits(7); + } return format.format(value); } else { return Objects.toString(value, null); From 3514e4f68287dc7e36875dc878fa9a0bc7e1ee01 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 16 Oct 2017 23:32:42 +0330 Subject: [PATCH 0187/2288] WW-4871 Fixes previous unit tests after setMinimumFractionDigits(1) --- .../xwork2/conversion/impl/StringConverter.java | 9 ++++++--- .../xwork2/conversion/impl/StringConverterTest.java | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 97ac2506bd..5f4a290ecf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -67,12 +67,15 @@ protected String convertToString(Locale locale, Object value) { format.setGroupingUsed(false); if (BigDecimal.class.isInstance(value) || Double.class.isInstance(value) || Float.class.isInstance(value)) { format.setMinimumFractionDigits(1); - if (BigDecimal.class.isInstance(value)) + if (BigDecimal.class.isInstance(value)) { format.setMaximumFractionDigits(Integer.MAX_VALUE); - else if (Double.class.isInstance(value)) + } + else if (Double.class.isInstance(value)) { format.setMaximumFractionDigits(15); - else if (Float.class.isInstance(value)) + } + else if (Float.class.isInstance(value)) { format.setMaximumFractionDigits(7); + } } return format.format(value); } else { diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index 1be3a9756b..4b74c6a71a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -39,7 +39,7 @@ public void testDoubleToStringConversionPL() throws Exception { value = converter.convertValue(context, null, null, null, Double.MAX_VALUE, null); // then does not lose integer digits - assertEquals(String.format("%.0f", Double.MAX_VALUE), value); + assertEquals(String.format("%.0f", Double.MAX_VALUE) + ",0", value); } public void testFloatToStringConversionPL() throws Exception { @@ -58,7 +58,7 @@ public void testFloatToStringConversionPL() throws Exception { value = converter.convertValue(context, null, null, null, Float.MAX_VALUE, null); // then does not lose integer digits - assertEquals(String.format("%.0f", Float.MAX_VALUE), value); + assertEquals(String.format("%.0f", Float.MAX_VALUE) + ",0", value); } public void testBigDecimalToStringConversionPL() throws Exception { From 86bb7fced47e9735554d15b87c3b6a77c3c9d128 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 18 Oct 2017 09:09:14 +0330 Subject: [PATCH 0188/2288] WW-4871 Fixes max fraction digits to bigger than max precision --- .../conversion/impl/StringConverter.java | 4 ++-- .../conversion/impl/StringConverterTest.java | 23 +++++++++++-------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 5f4a290ecf..8d05190c00 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -71,10 +71,10 @@ protected String convertToString(Locale locale, Object value) { format.setMaximumFractionDigits(Integer.MAX_VALUE); } else if (Double.class.isInstance(value)) { - format.setMaximumFractionDigits(15); + format.setMaximumFractionDigits(325); //double MIN_VALUE } else if (Float.class.isInstance(value)) { - format.setMaximumFractionDigits(7); + format.setMaximumFractionDigits(60); //float MIN_VALUE } } return format.format(value); diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index 4b74c6a71a..c85a96cbe9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -1,6 +1,7 @@ package com.opensymphony.xwork2.conversion.impl; import com.opensymphony.xwork2.ActionContext; +import org.apache.commons.lang3.StringUtils; import org.apache.struts2.StrutsInternalTestCase; import java.math.BigDecimal; @@ -30,16 +31,16 @@ public void testDoubleToStringConversionPL() throws Exception { context.put(ActionContext.LOCALE, new Locale("pl", "PL")); // when has max fraction digits - Object value = converter.convertValue(context, null, null, null, Math.PI, null); + Object value = converter.convertValue(context, null, null, null, Double.MIN_VALUE, null); // then does not lose fraction digits - assertEquals("3,141592653589793", value); + assertEquals("0," + StringUtils.repeat('0', 323) + "49", value); // when has max integer digits value = converter.convertValue(context, null, null, null, Double.MAX_VALUE, null); // then does not lose integer digits - assertEquals(String.format("%.0f", Double.MAX_VALUE) + ",0", value); + assertEquals("17976931348623157" + StringUtils.repeat('0', 292) + ",0", value); } public void testFloatToStringConversionPL() throws Exception { @@ -49,16 +50,16 @@ public void testFloatToStringConversionPL() throws Exception { context.put(ActionContext.LOCALE, new Locale("pl", "PL")); // when has max fraction digits - Object value = converter.convertValue(context, null, null, null, ((Double)Math.PI).floatValue(), null); + Object value = converter.convertValue(context, null, null, null, Float.MIN_VALUE, null); // then does not lose fraction digits - assertEquals("3,1415927", value); + assertEquals("0," + StringUtils.repeat('0', 44) + "1401298464324817", value); // when has max integer digits value = converter.convertValue(context, null, null, null, Float.MAX_VALUE, null); // then does not lose integer digits - assertEquals(String.format("%.0f", Float.MAX_VALUE) + ",0", value); + assertEquals("34028234663852886" + StringUtils.repeat('0', 22) + ",0", value); } public void testBigDecimalToStringConversionPL() throws Exception { @@ -67,12 +68,14 @@ public void testBigDecimalToStringConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when a bit bigger than double (310 integer and 17 fraction digits) - BigDecimal bd = new BigDecimal(String.format("%.0f", Double.MAX_VALUE) + "1.00000000000000001"); - Object value = converter.convertValue(context, null, null, null, bd, null); + // when a bit bigger than double + String aBitBiggerThanDouble = "17976931348623157" + StringUtils.repeat('0', 291) + "1." + + StringUtils.repeat('0', 324) + "49"; + Object value = converter.convertValue(context, null, null, null, + new BigDecimal(aBitBiggerThanDouble), null); // then does not lose integer and fraction digits - assertEquals(String.format("%.0f", Double.MAX_VALUE) + "1,00000000000000001", value); + assertEquals(aBitBiggerThanDouble.substring(0, 309) + "," + aBitBiggerThanDouble.substring(310), value); } public void testStringArrayToStringConversion() { From f01475f08ca6d7f0915e841ac8144ef99a091f3c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 18 Oct 2017 11:45:38 +0330 Subject: [PATCH 0189/2288] WW-4871 Makes NumberConverter's test harder --- .../conversion/impl/NumberConverterTest.java | 43 +++++++++++++------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java index 4ffa684acf..27ea51aace 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/NumberConverterTest.java @@ -3,6 +3,7 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.SimpleFooAction; import com.opensymphony.xwork2.XWorkTestCase; +import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; import java.math.BigInteger; @@ -48,11 +49,13 @@ public void testStringToBigDecimalConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when - Object value = converter.convertValue(context, null, null, null, "1234,4567", BigDecimal.class); + // when a bit bigger than double + String aBitBiggerThanDouble = "17976931348623157" + StringUtils.repeat('0', 291) + "1," + + StringUtils.repeat('0', 324) + "49"; + Object value = converter.convertValue(context, null, null, null, aBitBiggerThanDouble, BigDecimal.class); - // then - assertEquals(BigDecimal.valueOf(1234.4567), value); + // then does not lose integer and fraction digits + assertEquals(new BigDecimal(aBitBiggerThanDouble.substring(0, 309) + "." + aBitBiggerThanDouble.substring(310)), value); } public void testStringToBigDecimalConversionWithDotsPL() throws Exception { @@ -87,11 +90,19 @@ public void testStringToDoubleConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when - Object value = converter.convertValue(context, null, null, null, "1234,4567", Double.class); + // when has max fraction digits + Object value = converter.convertValue(context, null, null, null, + "0," + StringUtils.repeat('0', 323) + "49", Double.class); - // then - assertEquals(1234.4567, value); + // then does not lose fraction digits + assertEquals(Double.MIN_VALUE, value); + + // when has max integer digits + value = converter.convertValue(context, null, null, null, + "17976931348623157" + StringUtils.repeat('0', 292) + ",0", Double.class); + + // then does not lose integer digits + assertEquals(Double.MAX_VALUE, value); } public void testStringToDoubleConversionWithDotsPL() throws Exception { @@ -113,11 +124,19 @@ public void testStringToFloatConversionPL() throws Exception { Map context = new HashMap<>(); context.put(ActionContext.LOCALE, new Locale("pl", "PL")); - // when - Object value = converter.convertValue(context, null, null, null, "1234,4567", Float.class); + // when has max fraction digits + Object value = converter.convertValue(context, null, null, null, + "0," + StringUtils.repeat('0', 44) + "1401298464324817", Float.class); - // then - assertEquals(1234.4567F, value); + // then does not lose fraction digits + assertEquals(Float.MIN_VALUE, value); + + // when has max integer digits + value = converter.convertValue(context, null, null, null, + "34028234663852886" + StringUtils.repeat('0', 22) + ",0", Float.class); + + // then does not lose integer digits + assertEquals(Float.MAX_VALUE, value); } public void testStringToFloatConversionWithDotsPL() throws Exception { From 7ada6c4c6bebd751fbbbcf279192144c08e16246 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 20 Oct 2017 09:04:40 +0200 Subject: [PATCH 0190/2288] Adds missing dependency and drops unused properties --- pom.xml | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/pom.xml b/pom.xml index 3a83b32ccb..2eb242fce5 100644 --- a/pom.xml +++ b/pom.xml @@ -82,6 +82,8 @@ + UTF-8 + ${project.version} 4.1.6.RELEASE 3.1.15 @@ -90,12 +92,8 @@ 1.0.6 2.9.0 - - ${project.build.directory}/site - ${site.mainDirectory}/staging - ${site.mainDirectory}/scm - file://${siteContent.path} - UTF-8 + + 1.6 @@ -257,22 +255,18 @@ org.apache.maven.plugins maven-source-plugin - - org.apache.maven.plugins - maven-scm-publish-plugin - - ${scmCheckout.path} - ${siteContent.path} - - org.apache.maven.plugins maven-site-plugin - ${siteDeploy.url} false + + org.apache.maven.doxia + doxia-core + 1.7 + org.apache.maven.doxia doxia-module-markdown @@ -291,6 +285,9 @@ org.apache.maven.plugins maven-project-info-reports-plugin + + false + org.apache.maven.plugins From 726a0391e43b890587181a2a9ca95fdc4ac0f02d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 20 Oct 2017 09:05:01 +0200 Subject: [PATCH 0191/2288] Simplifies sipping modules --- apps/pom.xml | 18 +++++++----------- assembly/pom.xml | 21 +++++++-------------- bom/pom.xml | 15 ++------------- 3 files changed, 16 insertions(+), 38 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 3c3c11e846..ffc4b1f055 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -36,6 +36,13 @@ rest-showcase + + UTF-8 + + true + true + + @@ -78,14 +85,6 @@ WEB-INF/classes/LICENSE.txt,WEB-INF/classes/NOTICE.txt - - maven-site-plugin - - true - true - false - - ${project.artifactId} @@ -107,7 +106,4 @@ - - UTF-8 - diff --git a/assembly/pom.xml b/assembly/pom.xml index 3df1767792..0e7d342469 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -10,18 +10,15 @@ pom Struts 2 Assembly - - + + UTF-8 - - maven-site-plugin - - true - true - false - - + true + true + + + org.codehaus.mojo dependency-maven-plugin @@ -249,8 +246,4 @@ - - - UTF-8 - diff --git a/bom/pom.xml b/bom/pom.xml index b01a9f7270..482fb1985d 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -26,21 +26,10 @@ 2.5.14-SNAPSHOT + true + true - - - - maven-site-plugin - - true - true - false - - - - - From cb389d292d04922576a453e0d66502ca73db2b63 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 20 Oct 2017 09:05:29 +0200 Subject: [PATCH 0192/2288] Fixes Maven site generation --- core/src/site/site.xml | 15 +++++++-------- plugins/cdi/src/site/site.xml | 15 +++++++-------- plugins/config-browser/src/site/site.xml | 15 +++++++-------- plugins/convention/src/site/site.xml | 15 +++++++-------- plugins/dwr/src/site/site.xml | 15 +++++++-------- plugins/embeddedjsp/src/site/site.xml | 15 +++++++-------- plugins/gxp/src/site/site.xml | 15 +++++++-------- plugins/jasperreports/src/site/site.xml | 15 +++++++-------- plugins/javatemplates/src/site/site.xml | 15 +++++++-------- plugins/jfreechart/src/site/site.xml | 15 +++++++-------- plugins/json/src/site/site.xml | 15 +++++++-------- plugins/junit/src/site/site.xml | 15 +++++++-------- plugins/osgi/src/site/site.xml | 15 +++++++-------- plugins/oval/src/site/site.xml | 15 +++++++-------- plugins/pell-multipart/src/site/site.xml | 15 +++++++-------- plugins/plexus/src/site/site.xml | 15 +++++++-------- plugins/portlet-tiles/src/site/site.xml | 15 +++++++-------- plugins/portlet/src/site/site.xml | 15 +++++++-------- plugins/rest/src/site/site.xml | 15 +++++++-------- plugins/sitegraph/src/site/site.xml | 15 +++++++-------- plugins/sitemesh/src/site/site.xml | 15 +++++++-------- plugins/spring/src/site/site.xml | 15 +++++++-------- plugins/src/site/site.xml | 15 +++++++-------- plugins/testng/src/site/site.xml | 15 +++++++-------- plugins/tiles/src/site/site.xml | 15 +++++++-------- src/site/site.xml | 22 +++++++++++++--------- 26 files changed, 188 insertions(+), 209 deletions(-) diff --git a/core/src/site/site.xml b/core/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/core/src/site/site.xml +++ b/core/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/cdi/src/site/site.xml b/plugins/cdi/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/cdi/src/site/site.xml +++ b/plugins/cdi/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/config-browser/src/site/site.xml b/plugins/config-browser/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/config-browser/src/site/site.xml +++ b/plugins/config-browser/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/convention/src/site/site.xml b/plugins/convention/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/convention/src/site/site.xml +++ b/plugins/convention/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/dwr/src/site/site.xml b/plugins/dwr/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/dwr/src/site/site.xml +++ b/plugins/dwr/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/embeddedjsp/src/site/site.xml b/plugins/embeddedjsp/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/embeddedjsp/src/site/site.xml +++ b/plugins/embeddedjsp/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/gxp/src/site/site.xml b/plugins/gxp/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/gxp/src/site/site.xml +++ b/plugins/gxp/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/jasperreports/src/site/site.xml b/plugins/jasperreports/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/jasperreports/src/site/site.xml +++ b/plugins/jasperreports/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/javatemplates/src/site/site.xml b/plugins/javatemplates/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/javatemplates/src/site/site.xml +++ b/plugins/javatemplates/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/jfreechart/src/site/site.xml b/plugins/jfreechart/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/jfreechart/src/site/site.xml +++ b/plugins/jfreechart/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/json/src/site/site.xml b/plugins/json/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/json/src/site/site.xml +++ b/plugins/json/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/junit/src/site/site.xml b/plugins/junit/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/junit/src/site/site.xml +++ b/plugins/junit/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/osgi/src/site/site.xml b/plugins/osgi/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/osgi/src/site/site.xml +++ b/plugins/osgi/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/oval/src/site/site.xml b/plugins/oval/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/oval/src/site/site.xml +++ b/plugins/oval/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/pell-multipart/src/site/site.xml b/plugins/pell-multipart/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/pell-multipart/src/site/site.xml +++ b/plugins/pell-multipart/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/plexus/src/site/site.xml b/plugins/plexus/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/plexus/src/site/site.xml +++ b/plugins/plexus/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/portlet-tiles/src/site/site.xml b/plugins/portlet-tiles/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/portlet-tiles/src/site/site.xml +++ b/plugins/portlet-tiles/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/portlet/src/site/site.xml b/plugins/portlet/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/portlet/src/site/site.xml +++ b/plugins/portlet/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/rest/src/site/site.xml b/plugins/rest/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/rest/src/site/site.xml +++ b/plugins/rest/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/sitegraph/src/site/site.xml b/plugins/sitegraph/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/sitegraph/src/site/site.xml +++ b/plugins/sitegraph/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/sitemesh/src/site/site.xml b/plugins/sitemesh/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/sitemesh/src/site/site.xml +++ b/plugins/sitemesh/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/spring/src/site/site.xml b/plugins/spring/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/spring/src/site/site.xml +++ b/plugins/spring/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/src/site/site.xml b/plugins/src/site/site.xml index e03d26d5c1..4065327fd6 100644 --- a/plugins/src/site/site.xml +++ b/plugins/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -48,11 +48,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/testng/src/site/site.xml b/plugins/testng/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/testng/src/site/site.xml +++ b/plugins/testng/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/plugins/tiles/src/site/site.xml b/plugins/tiles/src/site/site.xml index 07a667ec71..3c5109b0c7 100644 --- a/plugins/tiles/src/site/site.xml +++ b/plugins/tiles/src/site/site.xml @@ -23,7 +23,7 @@ org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -47,11 +47,10 @@
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
- diff --git a/src/site/site.xml b/src/site/site.xml index 07aaf75884..b27ae54bf7 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -19,11 +19,11 @@ * under the License. */ --> - + org.apache.maven.skins maven-fluido-skin - 1.3.1 + ${fluido-skin.version} Apache Software Foundation @@ -35,8 +35,8 @@ http://struts.apache.org/img/struts-logo.svg http://struts.apache.org/ - - + + @@ -48,13 +48,17 @@
- + + + + +
-
- Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts - project logos are trademarks of The Apache Software Foundation. -
+ + Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project + logos are trademarks of The Apache Software Foundation. + ]]>
From 80045fcdf37ea277991a6fd5433d176d8bbe3edd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 08:43:58 +0200 Subject: [PATCH 0193/2288] Tries fix tests when running on JDK9 --- pom.xml | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2eb242fce5..11e723197a 100644 --- a/pom.xml +++ b/pom.xml @@ -164,6 +164,25 @@ + + jdk9 + + 9 + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + --add-modules java.activation --add-modules java.xml.bind + + + + + + @@ -177,7 +196,7 @@ org.apache.maven.plugins maven-surefire-plugin - 2.19.1 + 2.20.1 -Duser.language=en -Duser.region=US From 0ae6aa84eed74fefd5dbfd1407d61023000140d9 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 09:26:10 +0200 Subject: [PATCH 0194/2288] Adds missing header with license or updates the existing one --- .../java/com/opensymphony/xwork2/Action.java | 29 ++++++----- .../xwork2/ActionChainResult.java | 30 ++++++------ .../opensymphony/xwork2/ActionContext.java | 30 ++++++------ .../xwork2/ActionEventListener.java | 29 ++++++----- .../opensymphony/xwork2/ActionInvocation.java | 30 ++++++------ .../com/opensymphony/xwork2/ActionProxy.java | 30 ++++++------ .../xwork2/ActionProxyFactory.java | 30 ++++++------ .../opensymphony/xwork2/ActionSupport.java | 29 ++++++----- .../xwork2/CompositeTextProvider.java | 19 +++++++- .../xwork2/DefaultActionInvocation.java | 30 ++++++------ .../xwork2/DefaultActionProxy.java | 5 +- .../xwork2/DefaultActionProxyFactory.java | 30 ++++++------ .../xwork2/DefaultLocaleProvider.java | 25 +++++----- .../xwork2/DefaultLocaleProviderFactory.java | 18 +++++++ .../xwork2/DefaultTextProvider.java | 29 ++++++----- .../xwork2/DefaultUnknownHandlerManager.java | 29 ++++++----- .../com/opensymphony/xwork2/FileManager.java | 18 +++++++ .../xwork2/FileManagerFactory.java | 18 +++++++ .../xwork2/InvalidMetadataException.java | 32 ++++++++----- .../opensymphony/xwork2/LocaleProvider.java | 29 ++++++----- .../xwork2/LocaleProviderFactory.java | 29 ++++++----- .../xwork2/LocalizedTextProvider.java | 3 +- .../com/opensymphony/xwork2/ModelDriven.java | 30 ++++++------ .../opensymphony/xwork2/ObjectFactory.java | 30 ++++++------ .../com/opensymphony/xwork2/Preparable.java | 30 ++++++------ .../xwork2/ResourceBundleTextProvider.java | 29 ++++++----- .../java/com/opensymphony/xwork2/Result.java | 30 ++++++------ .../xwork2/StrutsTextProviderFactory.java | 29 ++++++----- .../xwork2/TestNGXWorkTestCase.java | 29 ++++++----- .../com/opensymphony/xwork2/TextProvider.java | 30 ++++++------ .../xwork2/TextProviderFactory.java | 25 +++++----- .../xwork2/TextProviderSupport.java | 30 ++++++------ .../com/opensymphony/xwork2/Unchainable.java | 30 ++++++------ .../opensymphony/xwork2/UnknownHandler.java | 29 ++++++----- .../xwork2/UnknownHandlerManager.java | 29 ++++++----- .../com/opensymphony/xwork2/Validateable.java | 30 ++++++------ .../xwork2/ValidationAwareSupport.java | 29 ++++++----- .../opensymphony/xwork2/XWorkConstants.java | 18 +++++++ .../opensymphony/xwork2/XWorkException.java | 30 ++++++------ .../xwork2/XWorkJUnit4TestCase.java | 25 +++++----- .../opensymphony/xwork2/XWorkTestCase.java | 31 ++++++------ .../xwork2/config/BeanSelectionProvider.java | 18 +++++++ .../xwork2/config/Configuration.java | 29 ++++++----- .../xwork2/config/ConfigurationException.java | 29 ++++++----- .../xwork2/config/ConfigurationManager.java | 29 ++++++----- .../xwork2/config/ConfigurationProvider.java | 29 ++++++----- .../xwork2/config/ConfigurationUtil.java | 29 ++++++----- .../xwork2/config/ContainerProvider.java | 29 ++++++----- .../config/FileManagerFactoryProvider.java | 18 +++++++ .../xwork2/config/FileManagerProvider.java | 18 +++++++ .../xwork2/config/PackageProvider.java | 29 ++++++----- .../config/ReferenceResolverException.java | 32 ++++++++----- .../xwork2/config/RuntimeConfiguration.java | 29 ++++++----- ...vletContextAwareConfigurationProvider.java | 25 +++++----- .../xwork2/config/entities/ActionConfig.java | 25 +++++----- .../config/entities/AllowedMethods.java | 25 +++++----- .../entities/ExceptionMappingConfig.java | 30 ++++++------ .../config/entities/InterceptorConfig.java | 29 ++++++----- .../entities/InterceptorListHolder.java | 29 ++++++----- .../config/entities/InterceptorLocator.java | 18 +++++++ .../config/entities/InterceptorMapping.java | 30 ++++++------ .../entities/InterceptorStackConfig.java | 29 ++++++----- .../xwork2/config/entities/PackageConfig.java | 25 +++++----- .../config/entities/Parameterizable.java | 29 ++++++----- .../xwork2/config/entities/ResultConfig.java | 29 ++++++----- .../config/entities/ResultTypeConfig.java | 29 ++++++----- .../config/entities/UnknownHandlerConfig.java | 29 ++++++----- .../xwork2/config/impl/AbstractMatcher.java | 27 ++++++----- .../config/impl/ActionConfigMatcher.java | 27 ++++++----- .../config/impl/DefaultConfiguration.java | 29 ++++++----- .../config/impl/LocatableConstantFactory.java | 19 +++++++- .../xwork2/config/impl/LocatableFactory.java | 18 +++++++ .../xwork2/config/impl/MockConfiguration.java | 29 ++++++----- .../xwork2/config/impl/NamespaceMatch.java | 29 ++++++----- .../xwork2/config/impl/NamespaceMatcher.java | 29 ++++++----- .../config/providers/CycleDetector.java | 18 +++++++ .../config/providers/DirectedGraph.java | 18 +++++++ .../providers/EnvsValueSubstitutor.java | 25 +++++----- .../config/providers/InterceptorBuilder.java | 29 ++++++----- .../config/providers/ValueSubstitutor.java | 25 +++++----- .../providers/XWorkConfigurationProvider.java | 18 +++++++ .../providers/XmlConfigurationProvider.java | 25 +++++----- .../xwork2/config/providers/XmlHelper.java | 29 ++++++----- .../ConversionAnnotationProcessor.java | 18 +++++++ .../conversion/ConversionFileProcessor.java | 18 +++++++ .../ConversionPropertiesProcessor.java | 25 +++++----- .../xwork2/conversion/NullHandler.java | 48 +++++++------------ .../conversion/ObjectTypeDeterminer.java | 29 ++++++----- .../conversion/TypeConversionException.java | 29 ++++++----- .../xwork2/conversion/TypeConverter.java | 48 +++++++------------ .../conversion/TypeConverterCreator.java | 18 +++++++ .../conversion/TypeConverterHolder.java | 18 +++++++ .../conversion/annotations/Conversion.java | 29 ++++++----- .../annotations/ConversionRule.java | 29 ++++++----- .../annotations/ConversionType.java | 29 ++++++----- .../annotations/TypeConversion.java | 29 ++++++----- .../conversion/impl/ArrayConverter.java | 18 +++++++ .../conversion/impl/CollectionConverter.java | 18 +++++++ .../xwork2/conversion/impl/DateConverter.java | 18 +++++++ .../DefaultConversionAnnotationProcessor.java | 18 +++++++ .../impl/DefaultConversionFileProcessor.java | 18 +++++++ .../DefaultConversionPropertiesProcessor.java | 25 +++++----- .../impl/DefaultObjectTypeDeterminer.java | 29 ++++++----- .../conversion/impl/DefaultTypeConverter.java | 48 +++++++------------ .../impl/DefaultTypeConverterCreator.java | 18 +++++++ .../impl/DefaultTypeConverterHolder.java | 18 +++++++ .../impl/InstantiatingNullHandler.java | 29 ++++++----- .../conversion/impl/NumberConverter.java | 18 +++++++ .../conversion/impl/StringConverter.java | 18 +++++++ .../conversion/impl/XWorkBasicConverter.java | 29 ++++++----- .../conversion/impl/XWorkConverter.java | 29 ++++++----- .../metadata/ConversionDescription.java | 32 ++++++++----- .../xwork2/factory/ActionFactory.java | 18 +++++++ .../xwork2/factory/ConverterFactory.java | 18 +++++++ .../xwork2/factory/DefaultActionFactory.java | 18 +++++++ .../factory/DefaultConverterFactory.java | 18 +++++++ .../factory/DefaultInterceptorFactory.java | 18 +++++++ .../xwork2/factory/DefaultResultFactory.java | 18 +++++++ .../factory/DefaultUnknownHandlerFactory.java | 18 +++++++ .../factory/DefaultValidatorFactory.java | 18 +++++++ .../xwork2/factory/InterceptorFactory.java | 18 +++++++ .../xwork2/factory/ResultFactory.java | 18 +++++++ .../xwork2/factory/UnknownHandlerFactory.java | 18 +++++++ .../xwork2/factory/ValidatorFactory.java | 18 +++++++ .../interceptor/AbstractInterceptor.java | 29 ++++++----- .../xwork2/interceptor/AliasInterceptor.java | 30 ++++++------ .../interceptor/ChainingInterceptor.java | 29 ++++++----- .../ConversionErrorInterceptor.java | 29 ++++++----- .../DefaultWorkflowInterceptor.java | 29 ++++++----- .../xwork2/interceptor/ExceptionHolder.java | 29 ++++++----- .../ExceptionMappingInterceptor.java | 29 ++++++----- .../xwork2/interceptor/Interceptor.java | 30 ++++++------ .../interceptor/LoggingInterceptor.java | 29 ++++++----- .../interceptor/MethodFilterInterceptor.java | 31 ++++++------ .../MethodFilterInterceptorUtil.java | 29 ++++++----- .../interceptor/ModelDrivenInterceptor.java | 30 ++++++------ .../xwork2/interceptor/NoParameters.java | 30 ++++++------ .../ParameterFilterInterceptor.java | 29 ++++++----- .../interceptor/ParameterNameAware.java | 29 ++++++----- .../ParameterRemoverInterceptor.java | 29 ++++++----- .../interceptor/ParametersInterceptor.java | 25 +++++----- .../xwork2/interceptor/PreResultListener.java | 30 ++++++------ .../PrefixMethodInvocationUtil.java | 29 ++++++----- .../interceptor/PrepareInterceptor.java | 31 ++++++------ .../xwork2/interceptor/ScopedModelDriven.java | 29 ++++++----- .../ScopedModelDrivenInterceptor.java | 29 ++++++----- .../StaticParametersInterceptor.java | 30 ++++++------ .../xwork2/interceptor/TimerInterceptor.java | 29 ++++++----- .../xwork2/interceptor/ValidationAware.java | 29 ++++++----- .../interceptor/ValidationErrorAware.java | 26 +++++----- .../interceptor/ValidationWorkflowAware.java | 18 +++++++ .../xwork2/interceptor/WithLazyParams.java | 18 +++++++ .../xwork2/interceptor/annotations/After.java | 29 ++++++----- .../interceptor/annotations/Allowed.java | 18 +++++++ .../AnnotationParameterFilterInterceptor.java | 19 +++++++- .../AnnotationWorkflowInterceptor.java | 29 ++++++----- .../interceptor/annotations/Before.java | 29 ++++++----- .../interceptor/annotations/BeforeResult.java | 29 ++++++----- .../annotations/BlockByDefault.java | 18 +++++++ .../interceptor/annotations/InputConfig.java | 29 ++++++----- .../xwork2/mock/MockActionInvocation.java | 30 ++++++------ .../xwork2/mock/MockActionProxy.java | 30 ++++++------ .../xwork2/mock/MockContainer.java | 18 +++++++ .../xwork2/mock/MockInterceptor.java | 29 ++++++----- .../xwork2/mock/MockObjectTypeDeterminer.java | 29 ++++++----- .../opensymphony/xwork2/mock/MockResult.java | 29 ++++++----- .../xwork2/ognl/ErrorMessageBuilder.java | 18 +++++++ .../opensymphony/xwork2/ognl/ObjectProxy.java | 30 ++++++------ .../xwork2/ognl/OgnlNullHandlerWrapper.java | 18 +++++++ .../ognl/OgnlReflectionContextFactory.java | 18 +++++++ .../xwork2/ognl/OgnlReflectionProvider.java | 18 +++++++ .../xwork2/ognl/OgnlTypeConverterWrapper.java | 29 ++++++----- .../opensymphony/xwork2/ognl/OgnlUtil.java | 29 ++++++----- .../xwork2/ognl/OgnlValueStack.java | 29 ++++++----- .../xwork2/ognl/OgnlValueStackFactory.java | 29 ++++++----- .../xwork2/ognl/SecurityMemberAccess.java | 29 ++++++----- .../ognl/XWorkTypeConverterWrapper.java | 29 ++++++----- .../ognl/accessor/CompoundRootAccessor.java | 29 ++++++----- .../HttpParametersPropertyAccessor.java | 17 ++++++- .../xwork2/ognl/accessor/ObjectAccessor.java | 19 +++++++- .../accessor/ObjectProxyPropertyAccessor.java | 30 ++++++------ .../accessor/ParameterPropertyAccessor.java | 17 ++++++- .../XWorkCollectionPropertyAccessor.java | 30 ++++++------ .../accessor/XWorkEnumerationAccessor.java | 29 ++++++----- .../XWorkIteratorPropertyAccessor.java | 29 ++++++----- .../accessor/XWorkListPropertyAccessor.java | 29 ++++++----- .../accessor/XWorkMapPropertyAccessor.java | 30 ++++++------ .../ognl/accessor/XWorkMethodAccessor.java | 30 ++++++------ .../accessor/XWorkObjectPropertyAccessor.java | 29 ++++++----- .../xwork2/result/ParamNameAwareResult.java | 18 +++++++ .../security/AcceptedPatternsChecker.java | 18 +++++++ .../DefaultAcceptedPatternsChecker.java | 18 +++++++ .../DefaultExcludedPatternsChecker.java | 18 +++++++ .../security/ExcludedPatternsChecker.java | 18 +++++++ .../xwork2/spring/SpringObjectFactory.java | 29 ++++++----- .../spring/SpringProxyableObjectFactory.java | 29 ++++++----- .../ActionAutowiringInterceptor.java | 30 ++++++------ .../test/StubConfigurationProvider.java | 18 +++++++ .../util/AbstractLocalizedTextProvider.java | 18 +++++++ .../xwork2/util/AnnotationUtils.java | 29 ++++++----- .../xwork2/util/ClassLoaderUtil.java | 29 ++++++----- .../xwork2/util/ClassPathFinder.java | 27 ++++++----- .../xwork2/util/ClearableValueStack.java | 27 ++++++----- .../xwork2/util/CompoundRoot.java | 29 ++++++----- .../xwork2/util/CreateIfNull.java | 30 ++++++------ .../opensymphony/xwork2/util/DomHelper.java | 29 ++++++----- .../com/opensymphony/xwork2/util/Element.java | 30 ++++++------ .../opensymphony/xwork2/util/Evaluated.java | 18 +++++++ .../util/GlobalLocalizedTextProvider.java | 5 +- .../com/opensymphony/xwork2/util/Key.java | 30 ++++++------ .../opensymphony/xwork2/util/KeyProperty.java | 30 ++++++------ .../xwork2/util/MemberAccessValueStack.java | 18 +++++++ .../util/NamedVariablePatternMatcher.java | 29 ++++++----- .../xwork2/util/OgnlTextParser.java | 18 +++++++ .../xwork2/util/PatternMatcher.java | 27 ++++++----- .../xwork2/util/PropertiesReader.java | 30 ++++++------ .../opensymphony/xwork2/util/ProxyUtil.java | 25 +++++----- .../xwork2/util/ResolverUtil.java | 26 +++++----- .../util/StrutsLocalizedTextProvider.java | 5 +- .../xwork2/util/TextParseUtil.java | 29 ++++++----- .../opensymphony/xwork2/util/TextParser.java | 18 +++++++ .../opensymphony/xwork2/util/ValueStack.java | 29 ++++++----- .../xwork2/util/ValueStackFactory.java | 29 ++++++----- .../xwork2/util/WildcardHelper.java | 27 ++++++----- .../xwork2/util/WildcardUtil.java | 25 +++++----- .../opensymphony/xwork2/util/XWorkList.java | 30 ++++++------ .../xwork2/util/XWorkTestCaseHelper.java | 29 ++++++----- .../classloader/AbstractResourceStore.java | 25 +++++----- .../util/classloader/FileResourceStore.java | 29 ++++++----- .../util/classloader/JarResourceStore.java | 30 ++++++------ .../classloader/ReloadingClassLoader.java | 29 ++++++----- .../util/classloader/ResourceStore.java | 29 ++++++----- .../classloader/ResourceStoreClassLoader.java | 29 ++++++----- .../xwork2/util/finder/ClassFinder.java | 18 +++++++ .../util/finder/ClassFinderFactory.java | 25 +++++----- .../util/finder/ClassLoaderInterface.java | 29 ++++++----- .../finder/ClassLoaderInterfaceDelegate.java | 29 ++++++----- .../xwork2/util/finder/ResourceFinder.java | 29 ++++++----- .../opensymphony/xwork2/util/finder/Test.java | 29 ++++++----- .../xwork2/util/finder/UrlSet.java | 29 ++++++----- .../xwork2/util/fs/DefaultFileManager.java | 29 ++++++----- .../util/fs/DefaultFileManagerFactory.java | 18 +++++++ .../xwork2/util/fs/FileRevision.java | 18 +++++++ .../xwork2/util/fs/JarEntryRevision.java | 18 +++++++ .../opensymphony/xwork2/util/fs/Revision.java | 18 +++++++ .../xwork2/util/location/Locatable.java | 29 ++++++----- .../util/location/LocatableProperties.java | 18 +++++++ .../xwork2/util/location/Located.java | 29 ++++++----- .../xwork2/util/location/Location.java | 29 ++++++----- .../util/location/LocationAttributes.java | 29 ++++++----- .../xwork2/util/location/LocationImpl.java | 29 ++++++----- .../xwork2/util/location/LocationUtils.java | 29 ++++++----- .../xwork2/util/logging/Logger.java | 29 ++++++----- .../xwork2/util/logging/LoggerFactory.java | 29 ++++++----- .../xwork2/util/logging/LoggerUtils.java | 29 ++++++----- .../util/logging/commons/CommonsLogger.java | 29 ++++++----- .../logging/commons/CommonsLoggerFactory.java | 29 ++++++----- .../xwork2/util/logging/jdk/JdkLogger.java | 29 ++++++----- .../util/logging/jdk/JdkLoggerFactory.java | 29 ++++++----- .../util/logging/log4j2/Log4j2Logger.java | 29 ++++++----- .../logging/log4j2/Log4j2LoggerFactory.java | 29 ++++++----- .../util/logging/slf4j/Slf4jLogger.java | 29 ++++++----- .../logging/slf4j/Slf4jLoggerFactory.java | 29 ++++++----- .../reflection/ReflectionContextFactory.java | 18 +++++++ .../reflection/ReflectionContextState.java | 30 ++++++------ .../util/reflection/ReflectionException.java | 18 +++++++ .../ReflectionExceptionHandler.java | 18 +++++++ .../util/reflection/ReflectionProvider.java | 18 +++++++ .../reflection/ReflectionProviderFactory.java | 22 +++++++++ .../validator/ActionValidatorManager.java | 29 ++++++----- .../AnnotationActionValidatorManager.java | 30 ++++++------ ...otationValidationConfigurationBuilder.java | 29 ++++++----- .../DefaultActionValidatorManager.java | 30 ++++++------ .../validator/DefaultValidatorFactory.java | 30 ++++++------ .../validator/DefaultValidatorFileParser.java | 30 ++++++------ .../validator/DelegatingValidatorContext.java | 30 ++++++------ .../xwork2/validator/FieldValidator.java | 29 ++++++----- .../validator/ShortCircuitableValidator.java | 30 ++++++------ .../xwork2/validator/ValidationException.java | 30 ++++++------ .../validator/ValidationInterceptor.java | 29 ++++++----- .../xwork2/validator/Validator.java | 30 ++++++------ .../xwork2/validator/ValidatorConfig.java | 29 ++++++----- .../xwork2/validator/ValidatorContext.java | 30 ++++++------ .../xwork2/validator/ValidatorFactory.java | 18 +++++++ .../xwork2/validator/ValidatorFileParser.java | 18 +++++++ .../ConditionalVisitorFieldValidator.java | 18 +++++++ .../ConversionErrorFieldValidator.java | 30 ++++++------ .../annotations/CreditCardValidator.java | 30 ++++++------ .../annotations/CustomValidator.java | 30 ++++++------ .../annotations/DateRangeFieldValidator.java | 30 ++++++------ .../DoubleRangeFieldValidator.java | 30 ++++++------ .../validator/annotations/EmailValidator.java | 30 ++++++------ .../annotations/ExpressionValidator.java | 30 ++++++------ .../annotations/FieldExpressionValidator.java | 30 ++++++------ .../annotations/IntRangeFieldValidator.java | 30 ++++++------ .../annotations/LongRangeFieldValidator.java | 30 ++++++------ .../annotations/RegexFieldValidator.java | 30 ++++++------ .../annotations/RequiredFieldValidator.java | 30 ++++++------ .../annotations/RequiredStringValidator.java | 30 ++++++------ .../annotations/ShortRangeFieldValidator.java | 30 ++++++------ .../StringLengthFieldValidator.java | 30 ++++++------ .../validator/annotations/UrlValidator.java | 29 ++++++----- .../validator/annotations/Validation.java | 31 ++++++------ .../annotations/ValidationParameter.java | 30 ++++++------ .../validator/annotations/Validations.java | 30 ++++++------ .../validator/annotations/ValidatorType.java | 30 ++++++------ .../annotations/VisitorFieldValidator.java | 30 ++++++------ .../ConditionalVisitorFieldValidator.java | 18 +++++++ .../ConversionErrorFieldValidator.java | 30 ++++++------ .../validators/CreditCardValidator.java | 30 ++++++------ .../validators/DateRangeFieldValidator.java | 29 ++++++----- .../validators/DoubleRangeFieldValidator.java | 30 ++++++------ .../validator/validators/EmailValidator.java | 30 ++++++------ .../validators/ExpressionValidator.java | 29 ++++++----- .../validators/FieldExpressionValidator.java | 30 ++++++------ .../validators/FieldValidatorSupport.java | 29 ++++++----- .../validators/IntRangeFieldValidator.java | 29 ++++++----- .../validators/LongRangeFieldValidator.java | 29 ++++++----- .../validators/RangeValidatorSupport.java | 29 ++++++----- .../validators/RegexFieldValidator.java | 34 +++++++------ ...eConversionErrorFieldValidatorSupport.java | 29 ++++++----- .../validators/RequiredFieldValidator.java | 30 ++++++------ .../validators/RequiredStringValidator.java | 29 ++++++----- .../validators/ShortRangeFieldValidator.java | 29 ++++++----- .../StringLengthFieldValidator.java | 29 ++++++----- .../validator/validators/URLValidator.java | 29 ++++++----- .../validators/ValidatorSupport.java | 30 ++++++------ .../validators/VisitorFieldValidator.java | 30 ++++++------ 328 files changed, 5309 insertions(+), 3322 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/Action.java b/core/src/main/java/com/opensymphony/xwork2/Action.java index c9274c5785..4fcddaf5ff 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Action.java +++ b/core/src/main/java/com/opensymphony/xwork2/Action.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java b/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java index 5ec151326e..c29494be3c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -23,7 +26,6 @@ import java.util.*; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java index 3e5c6d6aee..32234b0c40 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -24,7 +27,6 @@ import java.util.Locale; import java.util.Map; - /** *

* The ActionContext is the context in which an {@link Action} is executed. Each context is basically a diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java b/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java index 58c992a518..47bbf7c0fe 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java index 1289c84483..07b018b702 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; @@ -20,7 +23,6 @@ import java.io.Serializable; - /** * An {@link ActionInvocation} represents the execution state of an {@link Action}. It holds the Interceptors and the Action instance. * By repeated re-entrant execution of the invoke() method, initially by the {@link ActionProxy}, then by the Interceptors, the diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java index 6064d26918..1ce71ceb53 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java @@ -1,23 +1,25 @@ /* - * Copyright 2002-2007,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. + * 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.config.entities.ActionConfig; - /** * ActionProxy is an extra layer between XWork and the action so that different proxies are possible. * diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java b/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java index efbc1e6a0b..2229a3eb95 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java @@ -1,23 +1,25 @@ /* - * Copyright 2002-2007,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. + * 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 java.util.Map; - /** * The {@link ActionProxyFactory} is used to create {@link ActionProxy}s to be executed. * diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java index 434e699f20..61e0cad8d1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java index 28b79da55a..266cb60ec0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java @@ -1,3 +1,21 @@ +/* + * 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; @@ -6,7 +24,6 @@ import java.util.*; - /** * This is a composite {@link TextProvider} that takes in an array or {@link java.util.List} of {@link TextProvider}s, it will * consult each of them in order to get a composite result. To know how each method behaves, please refer to the diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java index 754ae5ae44..08360b2a65 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -38,7 +41,6 @@ import java.util.List; import java.util.Map; - /** * The Default ActionInvocation implementation * diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java index 87838bc89b..234b4186c9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java @@ -1,6 +1,4 @@ /* - * $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 @@ -9,7 +7,7 @@ * "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 + * 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 @@ -33,7 +31,6 @@ import java.io.Serializable; import java.util.Locale; - /** * The Default ActionProxy implementation * diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java index cf0c552e75..4bca2cde89 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; @@ -20,7 +23,6 @@ import java.util.Map; - /** * Default factory for {@link com.opensymphony.xwork2.ActionProxyFactory}. * diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index 9eea2b3829..b2511a6beb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java index 7abb64f25c..3205609401 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java @@ -1,3 +1,21 @@ +/* + * 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; public class DefaultLocaleProviderFactory implements LocaleProviderFactory { diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index 116a0a14d2..82dd2b9be6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java b/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java index 46af876629..6f53d67a9f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/FileManager.java b/core/src/main/java/com/opensymphony/xwork2/FileManager.java index ef4656716c..03633f6940 100644 --- a/core/src/main/java/com/opensymphony/xwork2/FileManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/FileManager.java @@ -1,3 +1,21 @@ +/* + * 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 java.io.IOException; diff --git a/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java b/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java index f0eafc09ac..cd8b46e08b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java @@ -1,3 +1,21 @@ +/* + * 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; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java b/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java index eb556f5a48..05cb2de4d2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java +++ b/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -20,7 +23,10 @@ * * @author Rainer Hermanns * @version $Id$ + * + * @deprecated to be removed */ +@Deprecated public class InvalidMetadataException extends RuntimeException { /** diff --git a/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java index 9efcfae95e..9a55648ac8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java index 930418d9f5..2cad5cb6f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java index 85c5458e3b..cb8b097ee0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package com.opensymphony.xwork2; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java b/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java index 2f5f6c7ef2..179466be6c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java +++ b/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java @@ -1,21 +1,23 @@ /* - * Copyright 2002-2007,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. + * 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; - /** * ModelDriven Actions provide a model object to be pushed onto the ValueStack * in addition to the Action itself, allowing a FormBean type approach like Struts. diff --git a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java index 5dd6962efb..aff55881b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -32,7 +35,6 @@ import java.io.Serializable; import java.util.Map; - /** * ObjectFactory is responsible for building the core framework objects. Users may register their * own implementation of the ObjectFactory to control instantiation of these Objects. diff --git a/core/src/main/java/com/opensymphony/xwork2/Preparable.java b/core/src/main/java/com/opensymphony/xwork2/Preparable.java index 58a2412cda..04cdaa1964 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Preparable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Preparable.java @@ -1,21 +1,23 @@ /* - * Copyright 2002-2007,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. + * 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; - /** * Preparable Actions will have their prepare() method called if the {@link com.opensymphony.xwork2.interceptor.PrepareInterceptor} * is applied to the ActionConfig. diff --git a/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java index 1415e716e7..835d0cf999 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/Result.java b/core/src/main/java/com/opensymphony/xwork2/Result.java index c8d8bed759..2f3ef8af88 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Result.java +++ b/core/src/main/java/com/opensymphony/xwork2/Result.java @@ -1,23 +1,25 @@ /* - * Copyright 2002-2007,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. + * 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 java.io.Serializable; - /** * All results (except for Action.NONE) of an {@link Action} are mapped to a View implementation. * diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index d398e698f2..c56bf213f1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java index 823e764bef..8d9ce62009 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProvider.java b/core/src/main/java/com/opensymphony/xwork2/TextProvider.java index 70f88df665..845f3cc941 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -20,7 +23,6 @@ import java.util.List; import java.util.ResourceBundle; - /** * Provides access to {@link ResourceBundle}s and their underlying text messages. * Implementing classes can delegate {@link TextProviderSupport}. Messages will be diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java index e9b06238a9..e98b384239 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java index d63291acda..6d4ac6ad0d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -20,7 +23,6 @@ import java.util.*; - /** * Default TextProvider implementation. * diff --git a/core/src/main/java/com/opensymphony/xwork2/Unchainable.java b/core/src/main/java/com/opensymphony/xwork2/Unchainable.java index 19d88ef4fb..e37370fed6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Unchainable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Unchainable.java @@ -1,19 +1,21 @@ /* - * 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. + * 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; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java b/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java index 51556d6a44..69962bc335 100644 --- a/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java b/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java index d8cce9f78b..9d76542572 100644 --- a/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/Validateable.java b/core/src/main/java/com/opensymphony/xwork2/Validateable.java index 889a284401..60c23db195 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Validateable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Validateable.java @@ -1,21 +1,23 @@ /* - * 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. + * 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; - /** * Provides an interface in which a call for a validation check can be done. * diff --git a/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java b/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java index 2f64a987a1..7db1cf0575 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java index 2499ab9d20..a6adf97b69 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java @@ -1,3 +1,21 @@ +/* + * 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; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkException.java b/core/src/main/java/com/opensymphony/xwork2/XWorkException.java index ec3ad3e82b..c4da8cff18 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkException.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkException.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; @@ -19,7 +22,6 @@ import com.opensymphony.xwork2.util.location.Location; import com.opensymphony.xwork2.util.location.LocationUtils; - /** * A generic runtime exception that optionally contains Location information * diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java index 90b53d2135..3b86b650c9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java index c9b4e32f97..f8a4ba38df 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.config.Configuration; @@ -26,7 +28,6 @@ import com.opensymphony.xwork2.util.location.LocatableProperties; import junit.framework.TestCase; - /** * Base JUnit TestCase to extend for XWork specific JUnit tests. Uses * the generic test setup for logic. diff --git a/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java index d6cef8b41d..0e777ff9c3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java @@ -1,3 +1,21 @@ +/* + * 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.config; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java b/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java index 9af002fde0..7878fff8dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java index af505f72e3..384a8c1192 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java index f937e9d668..a97474b26f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java index 146532bf57..21792547de 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java index e7ba7a6167..761a30f398 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java index de943f0a19..240e0b782c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java index 392b138fcd..d866574b02 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java @@ -1,3 +1,21 @@ +/* + * 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.config; import com.opensymphony.xwork2.FileManagerFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java index 100f458522..04068627dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java @@ -1,3 +1,21 @@ +/* + * 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.config; import com.opensymphony.xwork2.FileManager; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java index 9020e3ce74..41f7f9b307 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java b/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java index 00f1adb7bb..50803de5ab 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; @@ -22,7 +25,10 @@ * Exception when a reference can't be resolved. * * @author Mike + * + * @deprecated to be removed */ +@Deprecated public class ReferenceResolverException extends XWorkException { public ReferenceResolverException() { diff --git a/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java index f24c766ccb..c86edce588 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java index 506d9063ac..6312917ae1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java index 1b83738221..6e97720986 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java index d81de5a2e8..4a6e6d28e0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java index 21a791e964..03888f09f1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.config.entities; import com.opensymphony.xwork2.util.location.Located; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java index 6baa481786..fcff6358f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java index 432311626f..4d1092ecd6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java index aa74960953..0b4cfedec7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java @@ -1,3 +1,21 @@ +/* + * 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.config.entities; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java index 36ba95c888..31f21f7004 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.config.entities; import com.opensymphony.xwork2.interceptor.Interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java index 51632b5905..ff645b1aa9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java index 95f6f6633c..62e4cc93ad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java index 363f502938..7ecbdebadc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java index b74ce03dd7..a08adfcbc5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java index a32ebcae3c..b0ce480fae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java index 3d6692f0ce..13604a63b4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.entities; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java index 954657f85f..93f86dad10 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003,2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java index 07a8c46a29..480e73ac01 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003,2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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.config.impl; 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 a1b64904bb..dab0867a22 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 @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java index eb218f8592..435b66d6da 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java @@ -1,5 +1,20 @@ -/** - * +/* + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java index 2f95dfe701..000e1f7eb0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java @@ -1,3 +1,21 @@ +/* + * 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.config.impl; import com.opensymphony.xwork2.inject.Context; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java index 120d3f9ae2..9b71f4f3d3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java index ce2ae705a4..dd76cf1a35 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java index 6fa9ec39a7..eb47a1b705 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java index 0e45f5dadd..9013a1e026 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java @@ -1,3 +1,21 @@ +/* + * 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.config.providers; import java.util.ArrayList; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java index d7c6edc425..92df5af9eb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java @@ -1,3 +1,21 @@ +/* + * 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.config.providers; import java.util.Collections; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java index b4b1086e94..8f443380ba 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.providers; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java index 8044c1a7cb..eae0e688c5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.providers; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java index ceedb6a58b..12906ae9c7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.providers; 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 e5692a1cfa..7489afff1b 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 @@ -1,3 +1,21 @@ +/* + * 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.config.providers; import com.opensymphony.xwork2.ActionProxyFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java index 0e2c45107e..1d8abe24ce 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.config.providers; diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java index 9ab196db9a..b285543285 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.config.providers; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java index 159f8d524e..175dd726f7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java @@ -1,3 +1,21 @@ +/* + * 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.conversion; import com.opensymphony.xwork2.conversion.annotations.TypeConversion; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java index 0fc0124276..5b946dbdc7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java @@ -1,3 +1,21 @@ +/* + * 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.conversion; import java.util.Map; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java index 84ad153eb0..e741692a5e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.conversion; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java b/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java index 9edfda52b4..7716ece8f4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java @@ -1,33 +1,21 @@ -//-------------------------------------------------------------------------- -//Copyright (c) 1998-2004, Drew Davidson and Luke Blanshard -//All rights reserved. -// -//Redistribution and use in source and binary forms, with or without -//modification, are permitted provided that the following conditions are -//met: -// -//Redistributions of source code must retain the above copyright notice, -//this list of conditions and the following disclaimer. -//Redistributions in binary form must reproduce the above copyright -//notice, this list of conditions and the following disclaimer in the -//documentation and/or other materials provided with the distribution. -//Neither the name of the Drew Davidson nor the names of its contributors -//may be used to endorse or promote products derived from this software -//without specific prior written permission. -// -//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -//"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -//FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -//COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -//INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -//BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -//OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -//AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -//OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -//THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH -//DAMAGE. -//-------------------------------------------------------------------------- +/* + * 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.conversion; import java.util.Map; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java index dee9b152b2..084faa14fa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.conversion; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java index 82e4f3476f..239c91c0ce 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java index 0fb67d78a7..64d22c9c1e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java @@ -1,33 +1,21 @@ -//-------------------------------------------------------------------------- -// Copyright (c) 1998-2004, Drew Davidson and Luke Blanshard -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// Neither the name of the Drew Davidson nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH -// DAMAGE. -//-------------------------------------------------------------------------- +/* + * 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.conversion; import java.lang.reflect.Member; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java index 438d31ca65..ef80ead132 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java @@ -1,3 +1,21 @@ +/* + * 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.conversion; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java index 6a67b8bf9f..de76bf257a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java @@ -1,3 +1,21 @@ +/* + * 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.conversion; import java.util.Map; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java index aa02df766a..712edef412 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java index e30bea48aa..ff181ba9b7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java index d80a926860..b564cf1dab 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java index 609936c6a0..f41b2b22fb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java index 09addae854..b2542bb69d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.conversion.TypeConverter; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java index df7cf8cf3b..8f3b39e6d4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.conversion.ObjectTypeDeterminer; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java index bde36f7733..6f923bd709 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.XWorkException; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java index 5396712b27..238b5a3e2f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.conversion.ConversionAnnotationProcessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java index 488d9ce855..23b18064a6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.FileManager; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java index 691d07e0f8..fa8418b452 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2006,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.conversion.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java index 1b77f7c5ab..023c64c609 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java index f191680c58..b2373258f5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java @@ -1,33 +1,21 @@ -//-------------------------------------------------------------------------- -// Copyright (c) 1998-2004, Drew Davidson and Luke Blanshard -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// Redistributions of source code must retain the above copyright notice, -// this list of conditions and the following disclaimer. -// Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// Neither the name of the Drew Davidson nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF -// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH -// DAMAGE. -//-------------------------------------------------------------------------- +/* + * 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.conversion.impl; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java index d9613b25a9..89bca43203 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java index c05ed8f303..a5fd5c9df6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.conversion.TypeConverter; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java index e94eb4e12d..f60c0a0326 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index 1fa2512fe6..222567c681 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import com.opensymphony.xwork2.XWorkException; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index d8895e8c2a..98fa95b80d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -1,3 +1,21 @@ +/* + * 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.conversion.impl; import org.apache.commons.lang3.StringUtils; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java index 8f4a74b82c..7add4db35a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.conversion.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index 012d440558..a73e54437b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.impl; diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java index 3dc59dc225..406e116ea5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.conversion.metadata; @@ -28,7 +31,10 @@ * * @author Rainer Hermanns * @version $Id$ + * + * @deprecated class will be removed */ +@Deprecated public class ConversionDescription { /** diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java index 4cc41a9173..4611b5d019 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.config.entities.ActionConfig; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java index 81f1d4bf0c..135b7b1f38 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.conversion.TypeConverter; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java index a17484a124..07be4f5283 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java index e35222e02e..3e277cd823 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.conversion.TypeConverter; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java index 3cdf6b553e..a573cfabe0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java index a5a6c79fe2..53a3a9216f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java index 58fb339acf..90565f0830 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.UnknownHandler; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java index 8ce8b7753e..a937d7bad9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java index d12601c4db..fb8a9ebe2a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.config.ConfigurationException; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java index c7191cb1bb..988bdcdf7b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.Result; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java index 9fe8687324..99ddc5c304 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.UnknownHandler; diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java index f0beaa337d..095e795532 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java @@ -1,3 +1,21 @@ +/* + * 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.factory; import com.opensymphony.xwork2.validator.Validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java index 470d349509..d608ab36e4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java index b82b773195..fa1780d4ea 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index 67f5939550..2a4365a6d3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java index 67fc1ada5f..6fdac73dbf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java index d88d6f84ff..1fb10e0543 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java index 6959357f46..d112d411e2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java index 259fa46254..5f2f9bf6aa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java index d87f23fd3f..0a3d60f491 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; @@ -19,7 +22,6 @@ import java.io.Serializable; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java index c6d913188d..915f7d91ea 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java index 2fec0421d1..46e631f747 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.interceptor; import com.opensymphony.xwork2.ActionInvocation; @@ -24,7 +26,6 @@ import java.util.Collections; import java.util.Set; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java index 987d782f39..d1cb3268ad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java index afc6edcb7b..2b60dc986b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; @@ -20,7 +23,6 @@ import com.opensymphony.xwork2.util.CompoundRoot; import com.opensymphony.xwork2.util.ValueStack; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java index 2de46b1909..b64af46c92 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java @@ -1,21 +1,23 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; - /** * Marker interface to indicate no auto setting of parameters. * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java index cb4cd1afcf..809ff87e1a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java index 78f53f1a1e..661ae66a4a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java index 6155c61f1d..1ba4dab7fb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java index eeba99375b..3926649a03 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java index 12643a3d2f..d86ac3b155 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java @@ -1,23 +1,25 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; import com.opensymphony.xwork2.ActionInvocation; - /** * PreResultListeners may be registered with an {@link ActionInvocation} to get a callback after the * {@link com.opensymphony.xwork2.Action} has been executed but before the {@link com.opensymphony.xwork2.Result} diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java index 70516cddc0..e15dc0cf72 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java index e1d0b52777..d04b0b98a1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java @@ -1,18 +1,20 @@ /* - * $Id$ - * Copyright 2002-2007,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. + * 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.interceptor; @@ -23,7 +25,6 @@ import java.lang.reflect.InvocationTargetException; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java index d8f84c5418..95686b68ed 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java index 858a33e899..dc9fd47706 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java index e4eaa4705d..f43749f5ce 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; @@ -35,7 +38,6 @@ import java.util.Collections; import java.util.Map; - /** * * diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java index e5433abd60..45e007a18c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java index 53c72f1c92..f8cdb7a559 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.interceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java index 2e5e82ccd1..ec6f97728b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java @@ -1,19 +1,21 @@ /* - * Copyright 2002-2007,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.interceptor; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java index f0ea87d14d..07554e2c45 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java @@ -1,3 +1,21 @@ +/* + * 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.interceptor; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java index e54cc7337a..59b9b7626f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java @@ -1,3 +1,21 @@ +/* + * 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.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java index 13b0a7414f..6be6de4469 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java index 42633444ec..65b431c79b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java @@ -1,3 +1,21 @@ +/* + * 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.interceptor.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java index b7c6e0e0f0..e1efcf6b9b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java @@ -1,6 +1,23 @@ +/* + * 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.interceptor.annotations; - import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java index 36faa09088..014f829eba 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java index abc2b510fe..c430b22170 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java index 84e15fa835..649eee022b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.interceptor.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java index a87ac0b97c..23106f4e03 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java @@ -1,3 +1,21 @@ +/* + * 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.interceptor.annotations; import com.opensymphony.xwork2.Action; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java index 6ef8ee060e..b824918060 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-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. + * 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.interceptor.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java index 074968905f..e7afa415c5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.mock; import com.opensymphony.xwork2.*; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java index f3735910ad..c5c7b22e17 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.mock; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java index bcad8a9751..36e5e86b8e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java @@ -1,3 +1,21 @@ +/* + * 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.mock; import com.opensymphony.xwork2.inject.Container; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java index b6488364d4..054b480039 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.mock; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java index f01261a809..765cfeb20f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.mock; diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java index 571469cb76..72564ccfe4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.mock; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java b/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java index e136241a16..76506121d6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java @@ -1,3 +1,21 @@ +/* + * 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.ognl; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java b/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java index b01fd6736f..b9ef1ea28f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.ognl; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java index 95a0e35a2c..b04a7d73fb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java @@ -1,3 +1,21 @@ +/* + * 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.ognl; import com.opensymphony.xwork2.conversion.NullHandler; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java index 03a5537f14..170a46d9dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java @@ -1,3 +1,21 @@ +/* + * 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.ognl; import com.opensymphony.xwork2.util.reflection.ReflectionContextFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java index b1cd339709..e3053730e7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java @@ -1,3 +1,21 @@ +/* + * 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.ognl; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java index ad79542cc8..1b1d5e92d5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index d15977fa56..0584ce259e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java index 4ea6b4445d..d329c7f8fd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java index 674d7e2e5d..6310673f55 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 7a84a34a6e..bcd2317ae1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java index dbf21f67be..b7f545232f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.ognl; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java index 3beb14a0db..e550453e21 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java index 589d914712..40a64b6140 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java @@ -1,5 +1,20 @@ -/** +/* + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java index 255a0fce6f..86d0e37c43 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java @@ -1,5 +1,20 @@ -/** - * +/* + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java index f9f12719ca..6c1ae21d3a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.ognl.accessor; import com.opensymphony.xwork2.ognl.ObjectProxy; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java index 48027df62c..332c66dbde 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java @@ -1,5 +1,20 @@ -/** +/* + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java index a1e7536cdd..a43f6f5802 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.ognl.accessor; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java index 84745e430a..ec249367a5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java index 2a6184bc14..4d4a0824ae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java index ca30f49d77..2ee841be09 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java index e30f07e163..0d88e169da 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.ognl.accessor; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java index 74a34711ae..577c131e16 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; @@ -25,7 +28,6 @@ import java.util.Collection; import java.util.Map; - /** * Allows methods to be executed under normal cirumstances, except when {@link ReflectionContextState#DENY_METHOD_EXECUTION} * is in the action context with a value of true. diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java index 5351401bf7..d05db69d6d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.ognl.accessor; diff --git a/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java b/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java index 1067984c8e..347eedc35d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java @@ -1,3 +1,21 @@ +/* + * 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.result; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java index 64592fa643..1d4b7e970d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java @@ -1,3 +1,21 @@ +/* + * 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.security; import java.util.Set; diff --git a/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java index 00e9f794c7..d611a58990 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java @@ -1,3 +1,21 @@ +/* + * 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.security; import com.opensymphony.xwork2.XWorkConstants; diff --git a/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java index 687d17f8d9..df8864ddd5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java @@ -1,3 +1,21 @@ +/* + * 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.security; import com.opensymphony.xwork2.XWorkConstants; diff --git a/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java index 5a3bc0720a..aaacdfad24 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java @@ -1,3 +1,21 @@ +/* + * 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.security; import java.util.Set; diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java index e2490b14c4..1e2e2a4d6c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.spring; diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java index 6e1344ba2f..a3d03fc4b5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.spring; diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java index e351c74bf8..61831f109a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.spring.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java index 309db06230..046190d349 100644 --- a/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java @@ -1,3 +1,21 @@ +/* + * 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.test; import com.opensymphony.xwork2.config.Configuration; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java index fcef47e9e6..273401f2f1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -1,3 +1,21 @@ +/* + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index eb8570fd79..936ab01e64 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java index 84877d2cf1..296747d081 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java index 289ab8c807..1eac74340d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003-2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java index e4d129e94c..61e46b3240 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003-2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java b/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java index 49b47dad08..51e14a0ed5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java b/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java index 1511da737b..3360f380b6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java @@ -1,19 +1,21 @@ /* - * 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. + * 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 java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java b/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java index 1b38373b7e..2a08fbbad6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java @@ -1,17 +1,20 @@ /* - * Copyright 1999-2005 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Element.java b/core/src/main/java/com/opensymphony/xwork2/util/Element.java index 1b41f57719..edce26a3ae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Element.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Element.java @@ -1,19 +1,21 @@ /* - * 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. + * 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 java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java b/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java index 219e85cc21..1f66679dac 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java @@ -1,3 +1,21 @@ +/* + * 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; public class Evaluated { diff --git a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java index dff5cbf290..e704ba503b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -9,7 +7,7 @@ * "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 + * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package com.opensymphony.xwork2.util; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Key.java b/core/src/main/java/com/opensymphony/xwork2/util/Key.java index 0448b3fbfb..68f3fb2209 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Key.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Key.java @@ -1,19 +1,21 @@ /* - * 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. + * 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 java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java b/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java index 1a702ba77a..4abbcd4984 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java @@ -1,19 +1,21 @@ /* - * 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. + * 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 java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java index 51f4e489c2..35c2cadacc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java @@ -1,3 +1,21 @@ +/* + * 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 java.util.Set; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java b/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java index 3e640cb65f..8178047ebc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java b/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java index 899c3754d0..aa4a0686bb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.commons.lang3.StringUtils; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java b/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java index f4728930d3..3790892d95 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003-2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java b/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java index 04cb3e7154..4d136d49f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java @@ -1,18 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index b275bad531..8b24d971d1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -1,17 +1,20 @@ /* - * Copyright 2017 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java index 226a89afd5..5452297022 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java @@ -1,16 +1,20 @@ -/* Copyright 2005-2006 Tim Fennell +/* + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index a31c4aed36..b250a10dff 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -9,7 +7,7 @@ * "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 + * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package com.opensymphony.xwork2.util; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java index 0e5c9a19f6..2ee31cd1de 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java b/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java index 2f53bb02d0..e6646a45b5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java @@ -1,3 +1,21 @@ +/* + * 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; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java index 3bfe0ff9be..8265db0c21 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java index aa8256d680..324968c3d8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java b/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java index 86a3b9a807..df32b04e59 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003-2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java index 8e6a573913..deafbb7bef 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java @@ -1,17 +1,20 @@ /* - * Copyright 2010 Yahoo, Inc. All rights reserved. + * 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 * - * 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 * - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java b/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java index fa1f05b165..248c6aabd9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; @@ -28,7 +31,6 @@ import java.util.Iterator; import java.util.Map; - /** * A simple list that guarantees that inserting and retrieving objects will always work regardless * of the current size of the list. Upon insertion, type conversion is also performed if necessary. 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 4d0183c484..1596ef9e06 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java @@ -1,17 +1,20 @@ /* - * 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. + * 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; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java index 9166389193..4d12cd04b5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2015 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.classloader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java index c2c79ea616..c693660d2d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.classloader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java index c5c1cc7c07..6275e3c4fc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.classloader; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java index e44e261c98..e623936116 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.classloader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java index 80e6ce9588..0a9323bf7b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.classloader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java index 8d4a6882b0..0206e14c71 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.classloader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java index a0962648e1..2b3636c079 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java @@ -1,3 +1,21 @@ +/* + * 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.finder; import java.lang.annotation.Annotation; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java index 7998c3cfd3..673df6dc5e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,2009 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java index f9b4a0fbcb..008ded7114 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java index 79fa46084d..47771b86ac 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java index 819cec7613..75ee34c07a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java index b78d6f4b67..2cc830c3fd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java index 0a1960fec9..6ba5d4c9de 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.finder; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java index 55833ee14b..d0df70513d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2003,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. + * 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.fs; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java index 60512caa5a..b503423508 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java @@ -1,3 +1,21 @@ +/* + * 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.fs; import com.opensymphony.xwork2.FileManager; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java index f59d1d4e19..7347f1c151 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java @@ -1,3 +1,21 @@ +/* + * 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.fs; import java.io.File; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java index 4b962af08d..2d2d0f61c6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java @@ -1,3 +1,21 @@ +/* + * 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.fs; import com.opensymphony.xwork2.FileManager; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java index 8da65fcd33..ca9d8de16d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java @@ -1,3 +1,21 @@ +/* + * 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.fs; import java.net.URL; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java index fc6f69cd19..e9901df701 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java index 8df44f3c69..aa92b58a4e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java @@ -1,3 +1,21 @@ +/* + * 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.location; import com.opensymphony.xwork2.util.PropertiesReader; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java index 7c2c795ed8..1f0cfaf0dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java index 7791d4fd2d..256e6f8a72 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java index 553f1a4c9f..085cd931be 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java index 01b14ba02c..049545f00b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java index ef1d921ab3..215f01791c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java @@ -1,17 +1,20 @@ /* - * Copyright 2005 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. + * 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.location; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java index b16605505b..9472cc9d0f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java index 79e7e59163..e9fe688e28 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java index 47fe3396b5..af91154419 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java index ff96d5073c..926be2c5cf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.commons; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java index 06e39b1b97..e1c095700c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.commons; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java index acab3a82e7..e79865fbec 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.jdk; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java index 268ccce55d..3c4f02e7bf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.jdk; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java index 1e0cda5bb6..1c1d3dae57 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.log4j2; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java index 04cae8034d..f8c539e6f2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.log4j2; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java index 4dea191617..f4ae4689e9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.slf4j; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java index aba7d8647b..d79fbfe5ea 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.logging.slf4j; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java index 704b5af71b..ffca5751e0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java @@ -1,3 +1,21 @@ +/* + * 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.reflection; import java.util.Map; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java index 9534ebc302..98caaf62a9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.reflection; import com.opensymphony.xwork2.conversion.impl.XWorkConverter; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java index a6d107d9bb..906cdd294e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java @@ -1,3 +1,21 @@ +/* + * 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.reflection; import com.opensymphony.xwork2.XWorkException; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java index b5c7d8a5d6..6f28aa7225 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java @@ -1,3 +1,21 @@ +/* + * 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.reflection; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java index 72211ec771..c424b37445 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java @@ -1,3 +1,21 @@ +/* + * 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.reflection; import java.beans.IntrospectionException; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java index a05b7d6065..2379de12d9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java @@ -1,7 +1,29 @@ +/* + * 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.reflection; import com.opensymphony.xwork2.ActionContext; +/** + * @deprecated inject RefectionProvider directly + */ +@Deprecated public class ReflectionProviderFactory { public static ReflectionProvider getInstance() { diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java index 6650817cc3..87a01f3f8d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java index cd6fa4e857..2004fcc44a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java @@ -1,21 +1,23 @@ /* - * 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. + * 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.validator; - import com.opensymphony.xwork2.*; import com.opensymphony.xwork2.config.entities.ActionConfig; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java index f0f3e12b9b..4f4531b703 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java index 48d552a010..03a8f75807 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.validator; @@ -31,7 +34,6 @@ import java.net.URL; import java.util.*; - /** *

* This is the entry point into XWork's rule-based validation framework. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java index d4d7ff74d9..530495a054 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; @@ -34,7 +37,6 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; - /** * Default validator factory * diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java index 779cdf8252..1e244e546e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; @@ -29,7 +32,6 @@ import java.io.InputStream; import java.util.*; - /** * Parse the validation file. (eg. MyAction-validation.xml, MyAction-actionAlias-validation.xml) * to return a List of ValidatorConfig encapsulating the validator information. 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 0e3fe97dd4..84f54ef275 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; @@ -23,7 +26,6 @@ import java.util.*; - /** * A default implementation of the {@link ValidatorContext} interface. * diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java index 3077671453..4c9bd0fc41 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java index dde5044301..1ea55440e7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java @@ -1,21 +1,23 @@ /* - * Copyright 2002-2007,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. + * 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.validator; - /** * This interface should be implemented by validators that can short-circuit the validator queue * that it is in. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java index 2573b9f58d..16d9c6b9c3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java @@ -1,21 +1,23 @@ /* - * 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. + * 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.validator; - /** * ValidationException. * diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java index 169f054e05..ad05b2ae42 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java @@ -1,17 +1,20 @@ /* - * Copyright 2002-2007,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. + * 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.validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java b/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java index 43dda0fcd1..0720a2974c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java @@ -1,23 +1,25 @@ /* - * Copyright 2002-2007,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. + * 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.validator; import com.opensymphony.xwork2.util.ValueStack; - /** * *

The validators supplied by the XWork distribution (and any validators you diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java index da6292f6ed..e3cd3e779c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java index 82d01fd796..ba9bbb75cb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator; @@ -19,7 +22,6 @@ import com.opensymphony.xwork2.TextProvider; import com.opensymphony.xwork2.interceptor.ValidationAware; - /** * The context for validation. This interface extends others to provide methods for reporting * errors and messages as well as looking up error messages in a resource bundle using a specific locale. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java index f3bb27a414..e86cd2ebe7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java @@ -1,3 +1,21 @@ +/* + * 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.validator; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java index 25b8b11e49..fcd246bc9e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java @@ -1,3 +1,21 @@ +/* + * 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.validator; import java.io.InputStream; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java index 3830774f0f..e10ac2f2ca 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java @@ -1,3 +1,21 @@ +/* + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java index b1f4585975..a8c1f3d751 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java index f007ab780b..da99a34266 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java index f8c89e9154..1dd886e2dc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java index 30c4d84379..7a63e0b61a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java index 614931c916..f9aa53fe43 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java index a96ad6d4b3..0c55cb8b2c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java index d5db36090b..7cf42fdb11 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java index 559c53d8b4..22867013b4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java index b3ccaffb42..bfd7a5a0d0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java index 18861646c5..0ce5112878 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java index 94eea0b6d6..69fa644b7a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java index 900d5160be..efb05fcae6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java index b44ef0f325..92ae62ce98 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java index 6f779714f6..114627abab 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java index 7d7d1ea623..d588551b01 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java index 924770a07d..19606c6b18 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.annotations; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java index dd4ee6d5c2..d1de024a11 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; @@ -125,6 +127,7 @@ * @author Rainer Hermanns * @deprecated Since Struts 2.1 because it isn't necessary anymore */ +@Deprecated @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) public @interface Validation { diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java index edfc24d611..4409a7bc63 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java index 2b5c0b9569..2897fa035d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java index aed95d71fb..9d03c132a3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java index 5a63234412..dd9b192609 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java index 395269897f..8d5004a44c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java @@ -1,3 +1,21 @@ +/* + * 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.validator.validators; import com.opensymphony.xwork2.validator.ValidationException; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java index 6c49380953..ee0cdffd47 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; @@ -22,7 +25,6 @@ import java.util.Map; - /** * * Field Validator that checks if a conversion error occurred for this field. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java index 94ee646a1b..7372b01d29 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java @@ -1,21 +1,23 @@ /* - * 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. + * 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.validator.validators; - import org.apache.commons.lang3.StringUtils; /** diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java index 0adbc5c3e4..c2b0cdb908 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java index fa775d813f..fb662ee531 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java @@ -1,19 +1,21 @@ /* - * 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. + * 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.validator.validators; import com.opensymphony.xwork2.validator.ValidationException; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java index 98958a0a8e..53e9635196 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java @@ -1,21 +1,23 @@ /* - * 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. + * 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.validator.validators; - /** * * EmailValidator checks that a given String field, if not empty, is a valid email address. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java index f3e3da0e07..bb76a0d27a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java index e1f5618a21..50a01557c6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; @@ -19,7 +22,6 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; - /** * * Validates a field using an OGNL expression. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index 8ffffad5ab..64b921df29 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java index 0f1c82f2a6..81e489afad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java index 7c2999aed4..5d391bea3b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java index 5d156e34a0..a2dcb14e50 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index f6e9748f90..dfc6263296 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -1,30 +1,28 @@ /* - * 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. + * 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.validator.validators; -import com.opensymphony.xwork2.ObjectFactory; -import org.apache.commons.lang3.ObjectUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.opensymphony.xwork2.validator.ValidationException; import org.apache.commons.lang3.StringUtils; -import java.lang.reflect.Array; -import java.util.Arrays; import java.util.Collection; import java.util.Objects; import java.util.regex.Matcher; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java index af0edf3d42..3d5d27da0a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java index 44fd92f5c3..a0f4511803 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; @@ -20,7 +23,6 @@ import java.lang.reflect.Array; import java.util.Collection; - /** * * RequiredFieldValidator checks if the specified field is not null. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java index d11ff4ec80..77ea75ff59 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java index 8e5a9e6b28..122c23f91d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java index 2e1957d047..3c28817387 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index a75b5a58f6..2ae0afd06d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java index dabb4e39e3..7a87863204 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; @@ -27,7 +30,6 @@ import java.util.ArrayList; import java.util.List; - /** * Abstract implementation of the Validator interface suitable for subclassing. * diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java index ce87316636..9ec8fd0aed 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java @@ -1,17 +1,20 @@ /* - * 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. + * 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.validator.validators; @@ -31,7 +34,6 @@ import java.util.LinkedList; import java.util.List; - /** * * From b37af16aeea4cb3a9f9a843b9fb671ade1db0101 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 09:59:06 +0200 Subject: [PATCH 0195/2288] Adds missing header with license or updates the existing one --- .../java/com/opensymphony/xwork2/Action.java | 2 +- .../xwork2/ActionChainResult.java | 2 +- .../opensymphony/xwork2/ActionContext.java | 2 +- .../xwork2/ActionEventListener.java | 2 +- .../opensymphony/xwork2/ActionInvocation.java | 2 +- .../com/opensymphony/xwork2/ActionProxy.java | 2 +- .../xwork2/ActionProxyFactory.java | 2 +- .../opensymphony/xwork2/ActionSupport.java | 2 +- .../xwork2/CompositeTextProvider.java | 2 +- .../xwork2/DefaultActionInvocation.java | 2 +- .../xwork2/DefaultActionProxy.java | 2 +- .../xwork2/DefaultActionProxyFactory.java | 2 +- .../xwork2/DefaultLocaleProvider.java | 2 +- .../xwork2/DefaultLocaleProviderFactory.java | 2 +- .../xwork2/DefaultTextProvider.java | 2 +- .../xwork2/DefaultUnknownHandlerManager.java | 2 +- .../com/opensymphony/xwork2/FileManager.java | 2 +- .../xwork2/FileManagerFactory.java | 2 +- .../xwork2/InvalidMetadataException.java | 2 +- .../opensymphony/xwork2/LocaleProvider.java | 2 +- .../xwork2/LocaleProviderFactory.java | 2 +- .../xwork2/LocalizedTextProvider.java | 2 +- .../com/opensymphony/xwork2/ModelDriven.java | 2 +- .../opensymphony/xwork2/ObjectFactory.java | 2 +- .../com/opensymphony/xwork2/Preparable.java | 2 +- .../xwork2/ResourceBundleTextProvider.java | 2 +- .../java/com/opensymphony/xwork2/Result.java | 2 +- .../xwork2/StrutsTextProviderFactory.java | 2 +- .../xwork2/TestNGXWorkTestCase.java | 2 +- .../com/opensymphony/xwork2/TextProvider.java | 2 +- .../xwork2/TextProviderFactory.java | 2 +- .../xwork2/TextProviderSupport.java | 2 +- .../com/opensymphony/xwork2/Unchainable.java | 2 +- .../opensymphony/xwork2/UnknownHandler.java | 2 +- .../xwork2/UnknownHandlerManager.java | 2 +- .../com/opensymphony/xwork2/Validateable.java | 2 +- .../xwork2/ValidationAwareSupport.java | 2 +- .../opensymphony/xwork2/XWorkConstants.java | 2 +- .../opensymphony/xwork2/XWorkException.java | 2 +- .../xwork2/XWorkJUnit4TestCase.java | 2 +- .../opensymphony/xwork2/XWorkTestCase.java | 2 +- .../xwork2/config/BeanSelectionProvider.java | 2 +- .../xwork2/config/Configuration.java | 2 +- .../xwork2/config/ConfigurationException.java | 2 +- .../xwork2/config/ConfigurationManager.java | 2 +- .../xwork2/config/ConfigurationProvider.java | 2 +- .../xwork2/config/ConfigurationUtil.java | 2 +- .../xwork2/config/ContainerProvider.java | 2 +- .../config/FileManagerFactoryProvider.java | 2 +- .../xwork2/config/FileManagerProvider.java | 2 +- .../xwork2/config/PackageProvider.java | 2 +- .../config/ReferenceResolverException.java | 2 +- .../xwork2/config/RuntimeConfiguration.java | 2 +- ...vletContextAwareConfigurationProvider.java | 2 +- .../xwork2/config/entities/ActionConfig.java | 2 +- .../config/entities/AllowedMethods.java | 2 +- .../entities/ExceptionMappingConfig.java | 2 +- .../config/entities/InterceptorConfig.java | 2 +- .../entities/InterceptorListHolder.java | 2 +- .../config/entities/InterceptorLocator.java | 2 +- .../config/entities/InterceptorMapping.java | 2 +- .../entities/InterceptorStackConfig.java | 2 +- .../xwork2/config/entities/PackageConfig.java | 2 +- .../config/entities/Parameterizable.java | 2 +- .../xwork2/config/entities/ResultConfig.java | 2 +- .../config/entities/ResultTypeConfig.java | 2 +- .../config/entities/UnknownHandlerConfig.java | 2 +- .../xwork2/config/impl/AbstractMatcher.java | 2 +- .../config/impl/ActionConfigMatcher.java | 2 +- .../config/impl/DefaultConfiguration.java | 2 +- .../config/impl/LocatableConstantFactory.java | 2 +- .../xwork2/config/impl/LocatableFactory.java | 2 +- .../xwork2/config/impl/MockConfiguration.java | 2 +- .../xwork2/config/impl/NamespaceMatch.java | 2 +- .../xwork2/config/impl/NamespaceMatcher.java | 2 +- .../config/providers/CycleDetector.java | 2 +- .../config/providers/DirectedGraph.java | 2 +- .../providers/EnvsValueSubstitutor.java | 2 +- .../config/providers/InterceptorBuilder.java | 2 +- .../config/providers/ValueSubstitutor.java | 2 +- .../providers/XWorkConfigurationProvider.java | 2 +- .../providers/XmlConfigurationProvider.java | 2 +- .../xwork2/config/providers/XmlHelper.java | 2 +- .../ConversionAnnotationProcessor.java | 2 +- .../conversion/ConversionFileProcessor.java | 2 +- .../ConversionPropertiesProcessor.java | 2 +- .../xwork2/conversion/NullHandler.java | 2 +- .../conversion/ObjectTypeDeterminer.java | 2 +- .../conversion/TypeConversionException.java | 2 +- .../xwork2/conversion/TypeConverter.java | 2 +- .../conversion/TypeConverterCreator.java | 2 +- .../conversion/TypeConverterHolder.java | 2 +- .../conversion/annotations/Conversion.java | 2 +- .../annotations/ConversionRule.java | 2 +- .../annotations/ConversionType.java | 2 +- .../annotations/TypeConversion.java | 2 +- .../conversion/impl/ArrayConverter.java | 2 +- .../conversion/impl/CollectionConverter.java | 2 +- .../xwork2/conversion/impl/DateConverter.java | 2 +- .../DefaultConversionAnnotationProcessor.java | 2 +- .../impl/DefaultConversionFileProcessor.java | 2 +- .../DefaultConversionPropertiesProcessor.java | 2 +- .../impl/DefaultObjectTypeDeterminer.java | 2 +- .../conversion/impl/DefaultTypeConverter.java | 2 +- .../impl/DefaultTypeConverterCreator.java | 2 +- .../impl/DefaultTypeConverterHolder.java | 2 +- .../impl/InstantiatingNullHandler.java | 2 +- .../conversion/impl/NumberConverter.java | 2 +- .../conversion/impl/StringConverter.java | 2 +- .../conversion/impl/XWorkBasicConverter.java | 2 +- .../conversion/impl/XWorkConverter.java | 2 +- .../metadata/ConversionDescription.java | 2 +- .../xwork2/factory/ActionFactory.java | 2 +- .../xwork2/factory/ConverterFactory.java | 2 +- .../xwork2/factory/DefaultActionFactory.java | 2 +- .../factory/DefaultConverterFactory.java | 2 +- .../factory/DefaultInterceptorFactory.java | 2 +- .../xwork2/factory/DefaultResultFactory.java | 2 +- .../factory/DefaultUnknownHandlerFactory.java | 2 +- .../factory/DefaultValidatorFactory.java | 2 +- .../xwork2/factory/InterceptorFactory.java | 2 +- .../xwork2/factory/ResultFactory.java | 2 +- .../xwork2/factory/UnknownHandlerFactory.java | 2 +- .../xwork2/factory/ValidatorFactory.java | 2 +- .../xwork2/inject/ConstructionContext.java | 2 +- .../opensymphony/xwork2/inject/Container.java | 2 +- .../xwork2/inject/ContainerBuilder.java | 2 +- .../xwork2/inject/ContainerImpl.java | 2 +- .../opensymphony/xwork2/inject/Context.java | 2 +- .../xwork2/inject/DependencyException.java | 2 +- .../xwork2/inject/ExternalContext.java | 2 +- .../opensymphony/xwork2/inject/Factory.java | 2 +- .../opensymphony/xwork2/inject/Inject.java | 2 +- .../xwork2/inject/InternalContext.java | 2 +- .../xwork2/inject/InternalFactory.java | 2 +- .../com/opensymphony/xwork2/inject/Key.java | 2 +- .../com/opensymphony/xwork2/inject/Scope.java | 2 +- .../opensymphony/xwork2/inject/Scoped.java | 2 +- .../xwork2/inject/package-info.java | 2 +- .../util/FinalizablePhantomReference.java | 2 +- .../inject/util/FinalizableReference.java | 2 +- .../util/FinalizableReferenceQueue.java | 2 +- .../inject/util/FinalizableSoftReference.java | 2 +- .../inject/util/FinalizableWeakReference.java | 2 +- .../xwork2/inject/util/Function.java | 2 +- .../xwork2/inject/util/ReferenceCache.java | 2 +- .../xwork2/inject/util/ReferenceMap.java | 2 +- .../xwork2/inject/util/ReferenceType.java | 2 +- .../xwork2/inject/util/Strings.java | 2 +- .../interceptor/AbstractInterceptor.java | 2 +- .../xwork2/interceptor/AliasInterceptor.java | 2 +- .../interceptor/ChainingInterceptor.java | 2 +- .../ConversionErrorInterceptor.java | 2 +- .../DefaultWorkflowInterceptor.java | 2 +- .../xwork2/interceptor/ExceptionHolder.java | 2 +- .../ExceptionMappingInterceptor.java | 2 +- .../xwork2/interceptor/Interceptor.java | 2 +- .../interceptor/LoggingInterceptor.java | 2 +- .../interceptor/MethodFilterInterceptor.java | 2 +- .../MethodFilterInterceptorUtil.java | 2 +- .../interceptor/ModelDrivenInterceptor.java | 2 +- .../xwork2/interceptor/NoParameters.java | 2 +- .../ParameterFilterInterceptor.java | 2 +- .../interceptor/ParameterNameAware.java | 2 +- .../ParameterRemoverInterceptor.java | 2 +- .../interceptor/ParametersInterceptor.java | 2 +- .../xwork2/interceptor/PreResultListener.java | 2 +- .../PrefixMethodInvocationUtil.java | 2 +- .../interceptor/PrepareInterceptor.java | 2 +- .../xwork2/interceptor/ScopedModelDriven.java | 2 +- .../ScopedModelDrivenInterceptor.java | 2 +- .../StaticParametersInterceptor.java | 2 +- .../xwork2/interceptor/TimerInterceptor.java | 2 +- .../xwork2/interceptor/ValidationAware.java | 2 +- .../interceptor/ValidationErrorAware.java | 2 +- .../interceptor/ValidationWorkflowAware.java | 2 +- .../xwork2/interceptor/WithLazyParams.java | 2 +- .../xwork2/interceptor/annotations/After.java | 2 +- .../interceptor/annotations/Allowed.java | 2 +- .../AnnotationParameterFilterInterceptor.java | 2 +- .../AnnotationWorkflowInterceptor.java | 2 +- .../interceptor/annotations/Before.java | 2 +- .../interceptor/annotations/BeforeResult.java | 2 +- .../annotations/BlockByDefault.java | 2 +- .../interceptor/annotations/InputConfig.java | 2 +- .../xwork2/mock/MockActionInvocation.java | 2 +- .../xwork2/mock/MockActionProxy.java | 2 +- .../xwork2/mock/MockContainer.java | 2 +- .../xwork2/mock/MockInterceptor.java | 2 +- .../xwork2/mock/MockObjectTypeDeterminer.java | 2 +- .../opensymphony/xwork2/mock/MockResult.java | 2 +- .../xwork2/ognl/ErrorMessageBuilder.java | 2 +- .../opensymphony/xwork2/ognl/ObjectProxy.java | 2 +- .../xwork2/ognl/OgnlNullHandlerWrapper.java | 2 +- .../ognl/OgnlReflectionContextFactory.java | 2 +- .../xwork2/ognl/OgnlReflectionProvider.java | 2 +- .../xwork2/ognl/OgnlTypeConverterWrapper.java | 2 +- .../opensymphony/xwork2/ognl/OgnlUtil.java | 2 +- .../xwork2/ognl/OgnlValueStack.java | 2 +- .../xwork2/ognl/OgnlValueStackFactory.java | 2 +- .../xwork2/ognl/SecurityMemberAccess.java | 2 +- .../ognl/XWorkTypeConverterWrapper.java | 2 +- .../ognl/accessor/CompoundRootAccessor.java | 2 +- .../HttpParametersPropertyAccessor.java | 2 +- .../xwork2/ognl/accessor/ObjectAccessor.java | 2 +- .../accessor/ObjectProxyPropertyAccessor.java | 2 +- .../accessor/ParameterPropertyAccessor.java | 2 +- .../XWorkCollectionPropertyAccessor.java | 2 +- .../accessor/XWorkEnumerationAccessor.java | 2 +- .../XWorkIteratorPropertyAccessor.java | 2 +- .../accessor/XWorkListPropertyAccessor.java | 2 +- .../accessor/XWorkMapPropertyAccessor.java | 2 +- .../ognl/accessor/XWorkMethodAccessor.java | 2 +- .../accessor/XWorkObjectPropertyAccessor.java | 2 +- .../xwork2/result/ParamNameAwareResult.java | 2 +- .../security/AcceptedPatternsChecker.java | 2 +- .../DefaultAcceptedPatternsChecker.java | 2 +- .../DefaultExcludedPatternsChecker.java | 2 +- .../security/ExcludedPatternsChecker.java | 2 +- .../xwork2/spring/SpringObjectFactory.java | 2 +- .../spring/SpringProxyableObjectFactory.java | 2 +- .../ActionAutowiringInterceptor.java | 2 +- .../test/StubConfigurationProvider.java | 2 +- .../util/AbstractLocalizedTextProvider.java | 2 +- .../xwork2/util/AnnotationUtils.java | 2 +- .../xwork2/util/ClassLoaderUtil.java | 2 +- .../xwork2/util/ClassPathFinder.java | 2 +- .../xwork2/util/ClearableValueStack.java | 2 +- .../xwork2/util/CompoundRoot.java | 2 +- .../xwork2/util/CreateIfNull.java | 2 +- .../opensymphony/xwork2/util/DomHelper.java | 2 +- .../com/opensymphony/xwork2/util/Element.java | 2 +- .../opensymphony/xwork2/util/Evaluated.java | 2 +- .../util/GlobalLocalizedTextProvider.java | 2 +- .../com/opensymphony/xwork2/util/Key.java | 2 +- .../opensymphony/xwork2/util/KeyProperty.java | 2 +- .../xwork2/util/MemberAccessValueStack.java | 2 +- .../util/NamedVariablePatternMatcher.java | 2 +- .../xwork2/util/OgnlTextParser.java | 2 +- .../xwork2/util/PatternMatcher.java | 2 +- .../xwork2/util/PropertiesReader.java | 2 +- .../opensymphony/xwork2/util/ProxyUtil.java | 2 +- .../xwork2/util/ResolverUtil.java | 2 +- .../util/StrutsLocalizedTextProvider.java | 2 +- .../xwork2/util/TextParseUtil.java | 2 +- .../opensymphony/xwork2/util/TextParser.java | 2 +- .../opensymphony/xwork2/util/ValueStack.java | 2 +- .../xwork2/util/ValueStackFactory.java | 2 +- .../xwork2/util/WildcardHelper.java | 2 +- .../xwork2/util/WildcardUtil.java | 2 +- .../opensymphony/xwork2/util/XWorkList.java | 2 +- .../xwork2/util/XWorkTestCaseHelper.java | 2 +- .../classloader/AbstractResourceStore.java | 2 +- .../util/classloader/FileResourceStore.java | 2 +- .../util/classloader/JarResourceStore.java | 2 +- .../classloader/ReloadingClassLoader.java | 2 +- .../util/classloader/ResourceStore.java | 2 +- .../classloader/ResourceStoreClassLoader.java | 2 +- .../xwork2/util/finder/ClassFinder.java | 2 +- .../util/finder/ClassFinderFactory.java | 2 +- .../util/finder/ClassLoaderInterface.java | 2 +- .../finder/ClassLoaderInterfaceDelegate.java | 2 +- .../xwork2/util/finder/ResourceFinder.java | 2 +- .../opensymphony/xwork2/util/finder/Test.java | 2 +- .../xwork2/util/finder/UrlSet.java | 2 +- .../xwork2/util/fs/DefaultFileManager.java | 2 +- .../util/fs/DefaultFileManagerFactory.java | 2 +- .../xwork2/util/fs/FileRevision.java | 2 +- .../xwork2/util/fs/JarEntryRevision.java | 2 +- .../opensymphony/xwork2/util/fs/Revision.java | 2 +- .../xwork2/util/location/Locatable.java | 2 +- .../util/location/LocatableProperties.java | 2 +- .../xwork2/util/location/Located.java | 2 +- .../xwork2/util/location/Location.java | 2 +- .../util/location/LocationAttributes.java | 2 +- .../xwork2/util/location/LocationImpl.java | 2 +- .../xwork2/util/location/LocationUtils.java | 2 +- .../xwork2/util/logging/Logger.java | 2 +- .../xwork2/util/logging/LoggerFactory.java | 2 +- .../xwork2/util/logging/LoggerUtils.java | 2 +- .../util/logging/commons/CommonsLogger.java | 2 +- .../logging/commons/CommonsLoggerFactory.java | 2 +- .../xwork2/util/logging/jdk/JdkLogger.java | 2 +- .../util/logging/jdk/JdkLoggerFactory.java | 2 +- .../util/logging/log4j2/Log4j2Logger.java | 2 +- .../logging/log4j2/Log4j2LoggerFactory.java | 2 +- .../util/logging/slf4j/Slf4jLogger.java | 2 +- .../logging/slf4j/Slf4jLoggerFactory.java | 2 +- .../reflection/ReflectionContextFactory.java | 2 +- .../reflection/ReflectionContextState.java | 2 +- .../util/reflection/ReflectionException.java | 2 +- .../ReflectionExceptionHandler.java | 2 +- .../util/reflection/ReflectionProvider.java | 2 +- .../reflection/ReflectionProviderFactory.java | 2 +- .../validator/ActionValidatorManager.java | 2 +- .../AnnotationActionValidatorManager.java | 2 +- ...otationValidationConfigurationBuilder.java | 2 +- .../DefaultActionValidatorManager.java | 2 +- .../validator/DefaultValidatorFactory.java | 2 +- .../validator/DefaultValidatorFileParser.java | 2 +- .../validator/DelegatingValidatorContext.java | 2 +- .../xwork2/validator/FieldValidator.java | 2 +- .../validator/ShortCircuitableValidator.java | 2 +- .../xwork2/validator/ValidationException.java | 2 +- .../validator/ValidationInterceptor.java | 2 +- .../xwork2/validator/Validator.java | 2 +- .../xwork2/validator/ValidatorConfig.java | 2 +- .../xwork2/validator/ValidatorContext.java | 2 +- .../xwork2/validator/ValidatorFactory.java | 2 +- .../xwork2/validator/ValidatorFileParser.java | 2 +- .../ConditionalVisitorFieldValidator.java | 2 +- .../ConversionErrorFieldValidator.java | 2 +- .../annotations/CreditCardValidator.java | 2 +- .../annotations/CustomValidator.java | 2 +- .../annotations/DateRangeFieldValidator.java | 2 +- .../DoubleRangeFieldValidator.java | 2 +- .../validator/annotations/EmailValidator.java | 2 +- .../annotations/ExpressionValidator.java | 2 +- .../annotations/FieldExpressionValidator.java | 2 +- .../annotations/IntRangeFieldValidator.java | 2 +- .../annotations/LongRangeFieldValidator.java | 2 +- .../annotations/RegexFieldValidator.java | 2 +- .../annotations/RequiredFieldValidator.java | 2 +- .../annotations/RequiredStringValidator.java | 2 +- .../annotations/ShortRangeFieldValidator.java | 2 +- .../StringLengthFieldValidator.java | 2 +- .../validator/annotations/UrlValidator.java | 2 +- .../validator/annotations/Validation.java | 2 +- .../annotations/ValidationParameter.java | 2 +- .../validator/annotations/Validations.java | 2 +- .../validator/annotations/ValidatorType.java | 2 +- .../annotations/VisitorFieldValidator.java | 2 +- .../ConditionalVisitorFieldValidator.java | 2 +- .../ConversionErrorFieldValidator.java | 2 +- .../validators/CreditCardValidator.java | 2 +- .../validators/DateRangeFieldValidator.java | 2 +- .../validators/DoubleRangeFieldValidator.java | 2 +- .../validator/validators/EmailValidator.java | 2 +- .../validators/ExpressionValidator.java | 2 +- .../validators/FieldExpressionValidator.java | 2 +- .../validators/FieldValidatorSupport.java | 2 +- .../validators/IntRangeFieldValidator.java | 2 +- .../validators/LongRangeFieldValidator.java | 2 +- .../validators/RangeValidatorSupport.java | 2 +- .../validators/RegexFieldValidator.java | 2 +- ...eConversionErrorFieldValidatorSupport.java | 2 +- .../validators/RequiredFieldValidator.java | 2 +- .../validators/RequiredStringValidator.java | 2 +- .../validators/ShortRangeFieldValidator.java | 2 +- .../StringLengthFieldValidator.java | 2 +- .../validator/validators/URLValidator.java | 2 +- .../validators/ValidatorSupport.java | 2 +- .../validators/VisitorFieldValidator.java | 2 +- .../java/org/apache/struts2/RequestUtils.java | 4 --- .../apache/struts2/ServletActionContext.java | 4 --- .../org/apache/struts2/StrutsConstants.java | 3 --- .../org/apache/struts2/StrutsException.java | 4 --- .../org/apache/struts2/StrutsStatics.java | 4 --- .../struts2/components/ActionComponent.java | 3 --- .../struts2/components/ActionError.java | 3 --- .../struts2/components/ActionMessage.java | 3 --- .../org/apache/struts2/components/Anchor.java | 3 --- .../struts2/components/AppendIterator.java | 3 --- .../org/apache/struts2/components/Bean.java | 3 --- .../apache/struts2/components/Checkbox.java | 3 --- .../struts2/components/CheckboxList.java | 4 --- .../struts2/components/ClosingUIBean.java | 3 --- .../apache/struts2/components/ComboBox.java | 3 --- .../apache/struts2/components/Component.java | 3 --- .../components/ComponentUrlProvider.java | 2 -- .../struts2/components/ContextBean.java | 3 --- .../org/apache/struts2/components/Date.java | 3 --- .../struts2/components/DateTextField.java | 18 +++++++++++++ .../org/apache/struts2/components/Debug.java | 3 --- .../struts2/components/DoubleListUIBean.java | 3 --- .../struts2/components/DoubleSelect.java | 3 --- .../org/apache/struts2/components/Else.java | 3 --- .../org/apache/struts2/components/ElseIf.java | 3 --- .../components/ExtraParameterProvider.java | 2 -- .../apache/struts2/components/FieldError.java | 3 --- .../org/apache/struts2/components/File.java | 3 --- .../org/apache/struts2/components/Form.java | 3 --- .../apache/struts2/components/FormButton.java | 3 --- .../struts2/components/GenericUIBean.java | 3 --- .../org/apache/struts2/components/Head.java | 3 --- .../org/apache/struts2/components/Hidden.java | 3 --- .../org/apache/struts2/components/I18n.java | 3 --- .../org/apache/struts2/components/If.java | 3 --- .../apache/struts2/components/Include.java | 3 --- .../components/InputTransferSelect.java | 3 --- .../struts2/components/IteratorComponent.java | 3 --- .../org/apache/struts2/components/Label.java | 3 --- .../apache/struts2/components/ListUIBean.java | 3 --- .../struts2/components/MergeIterator.java | 3 --- .../apache/struts2/components/OptGroup.java | 3 --- .../components/OptionTransferSelect.java | 3 --- .../org/apache/struts2/components/Param.java | 3 --- .../apache/struts2/components/Password.java | 3 --- .../apache/struts2/components/Property.java | 3 --- .../org/apache/struts2/components/Push.java | 3 --- .../org/apache/struts2/components/Radio.java | 3 --- .../org/apache/struts2/components/Reset.java | 3 --- .../org/apache/struts2/components/Select.java | 3 --- .../components/ServletUrlRenderer.java | 3 --- .../org/apache/struts2/components/Set.java | 3 --- .../org/apache/struts2/components/Submit.java | 3 --- .../org/apache/struts2/components/Text.java | 3 --- .../apache/struts2/components/TextArea.java | 3 --- .../apache/struts2/components/TextField.java | 3 --- .../org/apache/struts2/components/Token.java | 3 --- .../org/apache/struts2/components/UIBean.java | 3 --- .../org/apache/struts2/components/URL.java | 3 --- .../struts2/components/UpDownSelect.java | 3 --- .../struts2/components/UrlProvider.java | 2 -- .../struts2/components/UrlRenderer.java | 3 --- .../template/BaseTemplateEngine.java | 3 --- .../template/FreemarkerTemplateEngine.java | 3 --- .../template/JspTemplateEngine.java | 3 --- .../struts2/components/template/Template.java | 3 --- .../components/template/TemplateEngine.java | 3 --- .../template/TemplateEngineManager.java | 3 --- .../template/TemplateRenderingContext.java | 3 --- .../template/VelocityTemplateEngine.java | 3 --- .../config/AbstractBeanSelectionProvider.java | 18 +++++++++++++ .../config/DefaultBeanSelectionProvider.java | 3 --- .../config/DefaultPropertiesProvider.java | 3 --- .../struts2/config/DefaultSettings.java | 3 --- .../struts2/config/DelegatingSettings.java | 4 --- .../org/apache/struts2/config/NullResult.java | 5 +--- .../PropertiesConfigurationProvider.java | 3 --- .../struts2/config/PropertiesSettings.java | 4 --- .../org/apache/struts2/config/Settings.java | 3 --- .../StrutsXmlConfigurationProvider.java | 3 --- .../conversion/UploadedFileConverter.java | 1 - .../struts2/dispatcher/ApplicationMap.java | 4 --- .../struts2/dispatcher/ContainerHolder.java | 18 +++++++++++++ .../dispatcher/DefaultActionSupport.java | 4 --- .../DefaultDispatcherErrorHandler.java | 18 +++++++++++++ .../DefaultStaticContentLoader.java | 2 -- .../apache/struts2/dispatcher/Dispatcher.java | 3 --- .../dispatcher/DispatcherErrorHandler.java | 18 +++++++++++++ .../dispatcher/DispatcherListener.java | 3 --- .../struts2/dispatcher/ExecuteOperations.java | 2 -- .../apache/struts2/dispatcher/HostConfig.java | 2 -- .../struts2/dispatcher/HttpParameters.java | 1 - .../struts2/dispatcher/InitOperations.java | 2 -- .../struts2/dispatcher/LocalizedMessage.java | 3 --- .../struts2/dispatcher/MockDispatcher.java | 18 +++++++++++++ .../apache/struts2/dispatcher/Parameter.java | 18 +++++++++++++ .../struts2/dispatcher/PrepareOperations.java | 2 -- .../apache/struts2/dispatcher/RequestMap.java | 4 --- .../apache/struts2/dispatcher/SessionMap.java | 4 --- .../dispatcher/StaticContentLoader.java | 2 -- .../dispatcher/StrutsRequestWrapper.java | 3 --- .../dispatcher/filter/FilterHostConfig.java | 2 -- .../filter/StrutsExecuteFilter.java | 2 -- .../filter/StrutsPrepareAndExecuteFilter.java | 2 -- .../filter/StrutsPrepareFilter.java | 2 -- .../listener/ListenerHostConfig.java | 2 -- .../dispatcher/listener/StrutsListener.java | 2 -- .../dispatcher/mapper/ActionMapper.java | 3 --- .../dispatcher/mapper/ActionMapping.java | 3 --- .../mapper/CompositeActionMapper.java | 3 --- .../mapper/DefaultActionMapper.java | 3 --- .../dispatcher/mapper/ParameterAction.java | 3 --- .../mapper/PrefixBasedActionMapper.java | 18 +++++++++++++ .../mapper/Restful2ActionMapper.java | 3 --- .../mapper/RestfulActionMapper.java | 3 --- .../multipart/AbstractMultiPartRequest.java | 19 +++++++++++++- .../multipart/JakartaMultiPartRequest.java | 3 --- .../JakartaStreamMultiPartRequest.java | 18 +++++++++++++ .../multipart/MultiPartRequest.java | 4 --- .../multipart/MultiPartRequestWrapper.java | 4 --- .../multipart/StrutsUploadedFile.java | 1 - .../dispatcher/multipart/UploadedFile.java | 1 - .../dispatcher/servlet/ServletHostConfig.java | 2 -- .../dispatcher/servlet/StrutsServlet.java | 2 -- .../PrefixBasedActionProxyFactory.java | 18 +++++++++++++ .../struts2/factory/StrutsActionProxy.java | 5 ---- .../factory/StrutsActionProxyFactory.java | 5 ---- .../struts2/factory/StrutsResultFactory.java | 18 +++++++++++++ .../ActionMappingParametersInteceptor.java | 3 --- .../struts2/interceptor/ApplicationAware.java | 4 --- .../interceptor/BackgroundProcess.java | 3 --- .../interceptor/CheckboxInterceptor.java | 3 --- .../interceptor/ClearSessionInterceptor.java | 3 --- .../interceptor/CookieInterceptor.java | 3 --- .../struts2/interceptor/CookieProvider.java | 3 --- .../CookieProviderInterceptor.java | 3 --- .../struts2/interceptor/CookiesAware.java | 3 --- .../interceptor/CreateSessionInterceptor.java | 3 --- .../interceptor/DateTextFieldInterceptor.java | 18 +++++++++++++ .../ExecuteAndWaitInterceptor.java | 4 --- .../interceptor/FileUploadInterceptor.java | 3 --- .../interceptor/HttpParametersAware.java | 4 --- .../struts2/interceptor/I18nInterceptor.java | 2 -- .../interceptor/MessageStoreInterceptor.java | 3 --- .../MessageStorePreResultListener.java | 1 - .../interceptor/MultiselectInterceptor.java | 2 -- .../struts2/interceptor/NoParameters.java | 4 --- .../struts2/interceptor/ParameterAware.java | 3 --- .../struts2/interceptor/PrincipalAware.java | 3 --- .../struts2/interceptor/PrincipalProxy.java | 3 --- .../ProfilingActivationInterceptor.java | 3 --- .../struts2/interceptor/RequestAware.java | 3 --- .../struts2/interceptor/RolesInterceptor.java | 3 --- .../struts2/interceptor/ScopeInterceptor.java | 3 --- .../interceptor/ServletConfigInterceptor.java | 4 --- .../interceptor/ServletRequestAware.java | 4 --- .../interceptor/ServletResponseAware.java | 4 --- .../struts2/interceptor/SessionAware.java | 4 --- .../StrutsConversionErrorInterceptor.java | 4 --- .../struts2/interceptor/TokenInterceptor.java | 3 --- .../TokenSessionStoreInterceptor.java | 4 --- .../debugging/DebuggingInterceptor.java | 3 --- .../debugging/ObjectToHTMLWriter.java | 3 --- .../debugging/PrettyPrintWriter.java | 3 --- .../servlet/ServletPrincipalProxy.java | 3 --- .../AnnotationValidationInterceptor.java | 3 --- .../validation/SkipValidation.java | 3 --- .../struts2/result/HttpHeaderResult.java | 4 --- .../struts2/result/PlainTextResult.java | 3 --- .../apache/struts2/result/PostbackResult.java | 2 -- .../apache/struts2/result/Redirectable.java | 18 +++++++++++++ .../result/ServletActionRedirectResult.java | 3 --- .../result/ServletDispatcherResult.java | 4 --- .../struts2/result/ServletRedirectResult.java | 3 --- .../apache/struts2/result/StreamResult.java | 3 --- .../struts2/result/StrutsResultSupport.java | 4 --- .../apache/struts2/result/VelocityResult.java | 4 --- .../struts2/util/AppendIteratorFilter.java | 4 --- .../org/apache/struts2/util/AttributeMap.java | 4 --- .../apache/struts2/util/ComponentUtils.java | 18 +++++++++++++ .../org/apache/struts2/util/ContainUtil.java | 4 --- .../struts2/util/ContentTypeMatcher.java | 18 +++++++++++++ .../java/org/apache/struts2/util/Counter.java | 4 --- .../apache/struts2/util/DateFormatter.java | 5 +--- .../util/DefaultContentTypeMatcher.java | 18 +++++++++++++ .../util/FastByteArrayOutputStream.java | 4 --- .../struts2/util/InvocationSessionStore.java | 4 --- .../struts2/util/IteratorFilterSupport.java | 4 --- .../struts2/util/IteratorGenerator.java | 4 --- .../org/apache/struts2/util/ListEntry.java | 3 --- .../org/apache/struts2/util/MakeIterator.java | 4 --- .../struts2/util/MergeIteratorFilter.java | 4 --- .../util/ObjectFactoryDestroyable.java | 3 --- .../org/apache/struts2/util/PrefixTrie.java | 3 --- .../struts2/util/RegexPatternMatcher.java | 2 -- .../util/RegexPatternMatcherExpression.java | 2 -- .../struts2/util/ServletContextAware.java | 4 --- .../struts2/util/SortIteratorFilter.java | 4 --- .../struts2/util/StrutsTestCaseHelper.java | 3 --- .../struts2/util/StrutsTypeConverter.java | 3 --- .../org/apache/struts2/util/StrutsUtil.java | 3 --- .../struts2/util/SubsetIteratorFilter.java | 5 ---- .../org/apache/struts2/util/TabbedPane.java | 5 +--- .../struts2/util/TextProviderHelper.java | 3 --- .../java/org/apache/struts2/util/Timer.java | 5 +--- .../org/apache/struts2/util/TokenHelper.java | 3 --- .../java/org/apache/struts2/util/URLBean.java | 5 +--- .../apache/struts2/util/URLDecoderUtil.java | 18 +++++++++++++ .../struts2/util/VelocityStrutsUtil.java | 4 --- .../struts2/util/fs/JBossFileManager.java | 18 +++++++++++++ .../apache/struts2/util/tomcat/buf/Ascii.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/B2CConverter.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/ByteChunk.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/CharChunk.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/HexUtils.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/MessageBytes.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/StringCache.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/UDecoder.java | 26 ++++++++++--------- .../struts2/util/tomcat/buf/Utf8Decoder.java | 26 ++++++++++--------- .../struts2/views/DefaultTagLibrary.java | 3 --- .../struts2/views/JspSupportServlet.java | 3 --- .../views/TagLibraryDirectiveProvider.java | 3 --- .../views/TagLibraryModelProvider.java | 3 --- .../struts2/views/annotations/StrutsTag.java | 3 --- .../views/annotations/StrutsTagAttribute.java | 3 --- .../annotations/StrutsTagSkipInheritance.java | 7 +++-- .../views/freemarker/FreemarkerManager.java | 4 --- .../views/freemarker/FreemarkerResult.java | 1 - .../FreemarkerThemeTemplateLoader.java | 18 +++++++++++++ .../views/freemarker/ScopesHashModel.java | 4 --- .../views/freemarker/StrutsBeanWrapper.java | 3 --- .../freemarker/StrutsClassTemplateLoader.java | 3 --- .../freemarker/tags/ActionErrorModel.java | 3 --- .../freemarker/tags/ActionMessageModel.java | 3 --- .../views/freemarker/tags/ActionModel.java | 3 --- .../views/freemarker/tags/AnchorModel.java | 3 --- .../views/freemarker/tags/BeanModel.java | 3 --- .../views/freemarker/tags/CallbackWriter.java | 3 --- .../freemarker/tags/CheckboxListModel.java | 3 --- .../views/freemarker/tags/CheckboxModel.java | 3 --- .../views/freemarker/tags/ComboBoxModel.java | 3 --- .../views/freemarker/tags/ComponentModel.java | 3 --- .../views/freemarker/tags/DateModel.java | 3 --- .../freemarker/tags/DoubleSelectModel.java | 3 --- .../views/freemarker/tags/ElseIfModel.java | 3 --- .../views/freemarker/tags/ElseModel.java | 3 --- .../freemarker/tags/FieldErrorModel.java | 3 --- .../views/freemarker/tags/FileModel.java | 3 --- .../views/freemarker/tags/FormModel.java | 3 --- .../views/freemarker/tags/HeadModel.java | 3 --- .../views/freemarker/tags/HiddenModel.java | 3 --- .../views/freemarker/tags/I18nModel.java | 3 --- .../views/freemarker/tags/IfModel.java | 3 --- .../views/freemarker/tags/IncludeModel.java | 3 --- .../tags/InputTransferSelectModel.java | 3 --- .../views/freemarker/tags/IteratorModel.java | 3 --- .../views/freemarker/tags/LabelModel.java | 3 --- .../views/freemarker/tags/OptGroupModel.java | 3 --- .../tags/OptionTransferSelectModel.java | 3 --- .../views/freemarker/tags/ParamModel.java | 3 --- .../views/freemarker/tags/PasswordModel.java | 3 --- .../views/freemarker/tags/PropertyModel.java | 3 --- .../views/freemarker/tags/PushModel.java | 3 --- .../views/freemarker/tags/RadioModel.java | 3 --- .../views/freemarker/tags/ResetModel.java | 3 --- .../views/freemarker/tags/SelectModel.java | 3 --- .../views/freemarker/tags/SetModel.java | 3 --- .../views/freemarker/tags/StrutsModels.java | 3 --- .../views/freemarker/tags/SubmitModel.java | 3 --- .../views/freemarker/tags/TagModel.java | 3 --- .../views/freemarker/tags/TextAreaModel.java | 3 --- .../views/freemarker/tags/TextFieldModel.java | 3 --- .../views/freemarker/tags/TextModel.java | 3 --- .../views/freemarker/tags/TokenModel.java | 3 --- .../views/freemarker/tags/URLModel.java | 3 --- .../freemarker/tags/UpDownSelectModel.java | 3 --- .../apache/struts2/views/jsp/ActionTag.java | 3 --- .../org/apache/struts2/views/jsp/BeanTag.java | 4 --- .../views/jsp/ComponentTagSupport.java | 3 --- .../struts2/views/jsp/ContextBeanTag.java | 3 --- .../org/apache/struts2/views/jsp/DateTag.java | 3 --- .../apache/struts2/views/jsp/ElseIfTag.java | 3 --- .../org/apache/struts2/views/jsp/ElseTag.java | 4 --- .../org/apache/struts2/views/jsp/I18nTag.java | 4 --- .../org/apache/struts2/views/jsp/IfTag.java | 4 --- .../apache/struts2/views/jsp/IncludeTag.java | 4 --- .../struts2/views/jsp/IteratorStatus.java | 4 --- .../apache/struts2/views/jsp/IteratorTag.java | 3 --- .../apache/struts2/views/jsp/NumberTag.java | 5 +--- .../apache/struts2/views/jsp/ParamTag.java | 3 --- .../apache/struts2/views/jsp/PropertyTag.java | 4 --- .../org/apache/struts2/views/jsp/PushTag.java | 4 --- .../org/apache/struts2/views/jsp/SetTag.java | 4 --- .../views/jsp/StrutsBodyTagSupport.java | 4 --- .../apache/struts2/views/jsp/TagUtils.java | 6 ----- .../org/apache/struts2/views/jsp/TextTag.java | 4 --- .../org/apache/struts2/views/jsp/URLTag.java | 4 --- .../views/jsp/iterator/AppendIteratorTag.java | 4 --- .../jsp/iterator/IteratorGeneratorTag.java | 4 --- .../views/jsp/iterator/MergeIteratorTag.java | 4 --- .../views/jsp/iterator/SortIteratorTag.java | 4 --- .../views/jsp/iterator/SubsetIteratorTag.java | 4 --- .../views/jsp/ui/AbstractClosingTag.java | 5 ---- .../views/jsp/ui/AbstractDoubleListTag.java | 6 ----- .../struts2/views/jsp/ui/AbstractListTag.java | 5 ---- .../views/jsp/ui/AbstractRequiredListTag.java | 6 ----- .../struts2/views/jsp/ui/AbstractUITag.java | 4 --- .../views/jsp/ui/AbstractUITagBeanInfo.java | 5 ++-- .../struts2/views/jsp/ui/ActionErrorTag.java | 3 --- .../views/jsp/ui/ActionMessageTag.java | 3 --- .../struts2/views/jsp/ui/AnchorTag.java | 6 ----- .../struts2/views/jsp/ui/CheckboxListTag.java | 4 --- .../struts2/views/jsp/ui/CheckboxTag.java | 4 --- .../struts2/views/jsp/ui/ComboBoxTag.java | 3 --- .../struts2/views/jsp/ui/ComponentTag.java | 3 --- .../views/jsp/ui/DateTextFieldTag.java | 18 +++++++++++++ .../apache/struts2/views/jsp/ui/DebugTag.java | 3 --- .../struts2/views/jsp/ui/DoubleSelectTag.java | 3 --- .../struts2/views/jsp/ui/FieldErrorTag.java | 3 --- .../apache/struts2/views/jsp/ui/FileTag.java | 4 --- .../apache/struts2/views/jsp/ui/FormTag.java | 4 --- .../apache/struts2/views/jsp/ui/HeadTag.java | 3 --- .../struts2/views/jsp/ui/HiddenTag.java | 4 --- .../views/jsp/ui/InputTransferSelectTag.java | 3 --- .../apache/struts2/views/jsp/ui/LabelTag.java | 4 --- .../apache/struts2/views/jsp/ui/OgnlTool.java | 8 +----- .../struts2/views/jsp/ui/OptGroupTag.java | 6 ----- .../views/jsp/ui/OptionTransferSelectTag.java | 3 --- .../struts2/views/jsp/ui/PasswordTag.java | 4 --- .../apache/struts2/views/jsp/ui/RadioTag.java | 4 --- .../apache/struts2/views/jsp/ui/ResetTag.java | 3 --- .../struts2/views/jsp/ui/SelectTag.java | 4 --- .../struts2/views/jsp/ui/SubmitTag.java | 3 --- .../struts2/views/jsp/ui/TextFieldTag.java | 3 --- .../struts2/views/jsp/ui/TextareaTag.java | 4 --- .../apache/struts2/views/jsp/ui/TokenTag.java | 4 --- .../struts2/views/jsp/ui/UpDownSelectTag.java | 3 --- .../struts2/views/util/ContextUtil.java | 3 --- .../struts2/views/util/DefaultUrlHelper.java | 3 --- .../struts2/views/util/ResourceUtil.java | 3 --- .../apache/struts2/views/util/UrlHelper.java | 18 +++++++++++++ .../views/velocity/StrutsResourceLoader.java | 5 +--- .../views/velocity/StrutsVelocityContext.java | 6 ----- .../views/velocity/VelocityManager.java | 4 --- .../components/AbstractDirective.java | 3 --- .../velocity/components/ActionDirective.java | 3 --- .../components/ActionErrorDirective.java | 3 --- .../components/ActionMessageDirective.java | 3 --- .../velocity/components/AnchorDirective.java | 3 --- .../velocity/components/BeanDirective.java | 3 --- .../components/CheckBoxDirective.java | 3 --- .../components/CheckBoxListDirective.java | 3 --- .../components/ComboBoxDirective.java | 3 --- .../components/ComponentDirective.java | 3 --- .../velocity/components/DateDirective.java | 3 --- .../components/DoubleSelectDirective.java | 3 --- .../components/FieldErrorDirective.java | 3 --- .../velocity/components/FileDirective.java | 3 --- .../velocity/components/FormDirective.java | 3 --- .../velocity/components/HeadDirective.java | 3 --- .../velocity/components/HiddenDirective.java | 3 --- .../velocity/components/I18nDirective.java | 3 --- .../velocity/components/IncludeDirective.java | 3 --- .../InputTransferSelectDirective.java | 3 --- .../velocity/components/LabelDirective.java | 3 --- .../components/OptGroupDirective.java | 4 --- .../OptionTransferSelectDirective.java | 3 --- .../velocity/components/ParamDirective.java | 3 --- .../components/PasswordDirective.java | 3 --- .../components/PropertyDirective.java | 3 --- .../velocity/components/PushDirective.java | 3 --- .../velocity/components/RadioDirective.java | 3 --- .../velocity/components/ResetDirective.java | 3 --- .../velocity/components/SelectDirective.java | 3 --- .../velocity/components/SetDirective.java | 3 --- .../velocity/components/SubmitDirective.java | 3 --- .../components/TextAreaDirective.java | 3 --- .../velocity/components/TextDirective.java | 3 --- .../components/TextFieldDirective.java | 3 --- .../velocity/components/TokenDirective.java | 3 --- .../velocity/components/URLDirective.java | 3 --- .../components/UpDownSelectDirective.java | 3 --- .../views/xslt/AbstractAdapterElement.java | 3 --- .../views/xslt/AbstractAdapterNode.java | 3 --- .../struts2/views/xslt/AdapterFactory.java | 3 --- .../struts2/views/xslt/AdapterNode.java | 3 --- .../struts2/views/xslt/ArrayAdapter.java | 6 ----- .../struts2/views/xslt/BeanAdapter.java | 4 --- .../struts2/views/xslt/CollectionAdapter.java | 6 ----- .../apache/struts2/views/xslt/MapAdapter.java | 3 --- .../struts2/views/xslt/ProxyAttrAdapter.java | 3 --- .../views/xslt/ProxyElementAdapter.java | 3 --- .../struts2/views/xslt/ProxyNamedNodeMap.java | 3 --- .../struts2/views/xslt/ProxyNodeAdapter.java | 3 --- .../views/xslt/ProxyTextNodeAdapter.java | 3 --- .../views/xslt/ServletURIResolver.java | 4 --- .../views/xslt/SimpleAdapterDocument.java | 3 --- .../struts2/views/xslt/SimpleNodeList.java | 3 --- .../struts2/views/xslt/SimpleTextNode.java | 7 ----- .../struts2/views/xslt/StringAdapter.java | 3 --- .../apache/struts2/views/xslt/XSLTResult.java | 1 - .../apache/struts2/dispatcher/someJspFile.jsp | 25 ------------------ 755 files changed, 888 insertions(+), 1686 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/Action.java b/core/src/main/java/com/opensymphony/xwork2/Action.java index 4fcddaf5ff..4c96617c49 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Action.java +++ b/core/src/main/java/com/opensymphony/xwork2/Action.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java b/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java index c29494be3c..1550eb98f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionChainResult.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java index 32234b0c40..4e4367fcb3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java b/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java index 47bbf7c0fe..00690a7f44 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionEventListener.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java index 07b018b702..908349806b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java index 1ce71ceb53..5956714622 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionProxy.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java b/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java index 2229a3eb95..565afd12cf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionProxyFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java index 61e0cad8d1..8e57f6d451 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java index 266cb60ec0..f1eb68d99f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/CompositeTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java index 08360b2a65..5777007c1c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java index 234b4186c9..81afc3b2e5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java index 4bca2cde89..ea7f1dc590 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionProxyFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java index b2511a6beb..da89306c0c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java index 3205609401..7d04e010ca 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultLocaleProviderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java index 82dd2b9be6..5fe207ecd0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java b/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java index 6f53d67a9f..f538dd9877 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/FileManager.java b/core/src/main/java/com/opensymphony/xwork2/FileManager.java index 03633f6940..c100923f1b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/FileManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/FileManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java b/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java index cd8b46e08b..5bedeaaca1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/FileManagerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java b/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java index 05cb2de4d2..28f921b617 100644 --- a/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java +++ b/core/src/main/java/com/opensymphony/xwork2/InvalidMetadataException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java index 9a55648ac8..67972af341 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocaleProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java index 2cad5cb6f0..df3363ef33 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocaleProviderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java index cb8b097ee0..0992ec7bd7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/LocalizedTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java b/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java index 179466be6c..c07c6bbe76 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java +++ b/core/src/main/java/com/opensymphony/xwork2/ModelDriven.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java index aff55881b9..a5d91c68a9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ObjectFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/Preparable.java b/core/src/main/java/com/opensymphony/xwork2/Preparable.java index 04cdaa1964..23fdf68aec 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Preparable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Preparable.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java index 835d0cf999..97a783fe2b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/ResourceBundleTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/Result.java b/core/src/main/java/com/opensymphony/xwork2/Result.java index 2f3ef8af88..e92467b373 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Result.java +++ b/core/src/main/java/com/opensymphony/xwork2/Result.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java index c56bf213f1..e7d22d99a1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/StrutsTextProviderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java index 8d9ce62009..3f34dfec1c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/TestNGXWorkTestCase.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProvider.java b/core/src/main/java/com/opensymphony/xwork2/TextProvider.java index 845f3cc941..32c343be4b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java index e98b384239..bad064178e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java index 6d4ac6ad0d..abb3249af8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/TextProviderSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/Unchainable.java b/core/src/main/java/com/opensymphony/xwork2/Unchainable.java index e37370fed6..9f96b92dc8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Unchainable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Unchainable.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java b/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java index 69962bc335..32cb6d3739 100644 --- a/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/UnknownHandler.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java b/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java index 9d76542572..3e8246232c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/UnknownHandlerManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/Validateable.java b/core/src/main/java/com/opensymphony/xwork2/Validateable.java index 60c23db195..ed72263801 100644 --- a/core/src/main/java/com/opensymphony/xwork2/Validateable.java +++ b/core/src/main/java/com/opensymphony/xwork2/Validateable.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java b/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java index 7db1cf0575..378351a79a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/ValidationAwareSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java index a6adf97b69..cc6c1bdce9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkConstants.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkException.java b/core/src/main/java/com/opensymphony/xwork2/XWorkException.java index c4da8cff18..12bdf80d45 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkException.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java index 3b86b650c9..8b8979a0a7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java index f8a4ba38df..e6dfd6953d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java index 0e777ff9c3..687943d364 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/BeanSelectionProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java b/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java index 7878fff8dc..3f170b19d6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/Configuration.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java index 384a8c1192..a150a0a7d1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java index a97474b26f..24ebb29bfe 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java index 21792547de..2140d51fa6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java index 761a30f398..b85042688d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java index 240e0b782c..1fc4cbacb5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ContainerProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java index d866574b02..42ef09b47b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerFactoryProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java index 04068627dc..09c786f4ae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/FileManagerProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java index 41f7f9b307..fd25639dca 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/PackageProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java b/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java index 50803de5ab..6f06cc83f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ReferenceResolverException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java index c86edce588..9d5b5421fa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/RuntimeConfiguration.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java index 6312917ae1..20933d6673 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/ServletContextAwareConfigurationProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java index 6e97720986..069bae1862 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ActionConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java index 4a6e6d28e0..1e6c64448b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java index 03888f09f1..d2a6e735a6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ExceptionMappingConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java index fcff6358f3..10b7691d08 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java index 4d1092ecd6..ab9829afa0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorListHolder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java index 0b4cfedec7..178ec3dbc7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorLocator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java index 31f21f7004..260ae325b1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorMapping.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java index ff645b1aa9..f5445de647 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/InterceptorStackConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java index 62e4cc93ad..4d16ee81f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/PackageConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java index 7ecbdebadc..eab975d70d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/Parameterizable.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java index a08adfcbc5..50602636b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java index b0ce480fae..944c34b89f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/ResultTypeConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java index 13604a63b4..b6732fa257 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/UnknownHandlerConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java index 93f86dad10..a7c7b28111 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java index 480e73ac01..ec498d41c4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java @@ -7,7 +7,7 @@ * "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 + * 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 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 dab0867a22..9d5d430c47 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 @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java index 435b66d6da..334e72676b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java index 000e1f7eb0..05e447c6fe 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java index 9b71f4f3d3..397ae34a9a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/MockConfiguration.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java index dd76cf1a35..ce1c738f4c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatch.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java index eb47a1b705..01decd34d0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/NamespaceMatcher.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java index 9013a1e026..ac91f6de6b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java index 92df5af9eb..455838ce3e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java index 8f443380ba..de53caf52d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/EnvsValueSubstitutor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java index eae0e688c5..e2584b19d9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java index 12906ae9c7..da6a01d40c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/ValueSubstitutor.java @@ -7,7 +7,7 @@ * "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 + * 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 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 7489afff1b..04597e1cdb 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 @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java index 1d8abe24ce..3b723528ef 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java index b285543285..953aa7c557 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XmlHelper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java index 175dd726f7..9daa28b129 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionAnnotationProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java index 5b946dbdc7..f16a9eb70d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionFileProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java index e741692a5e..d9e96fc5bb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ConversionPropertiesProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java b/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java index 7716ece8f4..01cbec76bd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/NullHandler.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java index 084faa14fa..220009ef2a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/ObjectTypeDeterminer.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java index 239c91c0ce..5e8acdfea5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConversionException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java index 64d22c9c1e..19b2626780 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java index ef80ead132..57151bc9f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterCreator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java index de76bf257a..d58b65ae83 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverterHolder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java index 712edef412..3e8b173439 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java index ff181ba9b7..8a5e1785d5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionRule.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java index b564cf1dab..7f219ee8ab 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/ConversionType.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java index f41b2b22fb..8039f97bb4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/TypeConversion.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java index b2542bb69d..3de49878e3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/ArrayConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java index 8f3b39e6d4..730e4af8bd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java index 6f923bd709..bc812d1ba0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DateConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java index 238b5a3e2f..bfe355b3e3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionAnnotationProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java index 23b18064a6..d07cf3cce1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionFileProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java index fa8418b452..a76394c684 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultConversionPropertiesProcessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java index 023c64c609..c375ce1470 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultObjectTypeDeterminer.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java index b2373258f5..15ecbcf7b5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java index 89bca43203..6bfb19e3b6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterCreator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java index a5fd5c9df6..f179251d47 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverterHolder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java index f60c0a0326..9b74f76fc7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/InstantiatingNullHandler.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java index 222567c681..ec7c29b6df 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/NumberConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 98fa95b80d..5802dabbe8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java index 7add4db35a..7baa5b94b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index a73e54437b..ee1f8f4326 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java index 406e116ea5..74c6d6e6d3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/ConversionDescription.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java index 4611b5d019..15a0f780f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ActionFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java index 135b7b1f38..00610ea9e2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ConverterFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java index 07be4f5283..44c036ce48 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultActionFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java index 3e277cd823..73a45b128e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultConverterFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java index a573cfabe0..a1d9ee2ce7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultInterceptorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java index 53a3a9216f..e5fe5f8d55 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultResultFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java index 90565f0830..9429e1007b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultUnknownHandlerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java index a937d7bad9..6da7dea75c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/DefaultValidatorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java index fb8a9ebe2a..979e9a5235 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/InterceptorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java index 988bdcdf7b..b965bf8bd1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ResultFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java index 99ddc5c304..07deb682af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/UnknownHandlerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java index 095e795532..51dc0fee0f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/factory/ValidatorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ConstructionContext.java b/core/src/main/java/com/opensymphony/xwork2/inject/ConstructionContext.java index d75d464937..fcd84e4f80 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ConstructionContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ConstructionContext.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Container.java b/core/src/main/java/com/opensymphony/xwork2/inject/Container.java index 8c3ea4ba38..3411e522e8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Container.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Container.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java index 0a51606b78..4fbae8ee26 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerBuilder.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java index 7e5ab62410..43db07f045 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Context.java b/core/src/main/java/com/opensymphony/xwork2/inject/Context.java index 7e5d03da1b..2f03778146 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Context.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Context.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/DependencyException.java b/core/src/main/java/com/opensymphony/xwork2/inject/DependencyException.java index f92896defe..097476aa29 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/DependencyException.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/DependencyException.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/ExternalContext.java b/core/src/main/java/com/opensymphony/xwork2/inject/ExternalContext.java index d37e37cfaf..70c1e99525 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/ExternalContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/ExternalContext.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Factory.java b/core/src/main/java/com/opensymphony/xwork2/inject/Factory.java index 11175061e1..8ef85fb2ce 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Factory.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Factory.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Inject.java b/core/src/main/java/com/opensymphony/xwork2/inject/Inject.java index 2e45761ed2..e97cb48def 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Inject.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Inject.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/InternalContext.java b/core/src/main/java/com/opensymphony/xwork2/inject/InternalContext.java index 7014480bd0..a383721364 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/InternalContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/InternalContext.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/InternalFactory.java b/core/src/main/java/com/opensymphony/xwork2/inject/InternalFactory.java index 49fcf27e89..30391836b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/InternalFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/InternalFactory.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Key.java b/core/src/main/java/com/opensymphony/xwork2/inject/Key.java index 4c05a383d2..1789b23bf4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Key.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Key.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java b/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java index ed0e104f2d..73ca87bdb9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Scoped.java b/core/src/main/java/com/opensymphony/xwork2/inject/Scoped.java index fb708caa45..f5c272b705 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Scoped.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Scoped.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/package-info.java b/core/src/main/java/com/opensymphony/xwork2/inject/package-info.java index 6e26e24c55..b60be547dd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/package-info.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/package-info.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizablePhantomReference.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizablePhantomReference.java index 869b96bfbd..039a977bda 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizablePhantomReference.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizablePhantomReference.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReference.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReference.java index 16653e2d6d..a31fd217e6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReference.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReference.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReferenceQueue.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReferenceQueue.java index 72121efbab..2335b2722a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReferenceQueue.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableReferenceQueue.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableSoftReference.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableSoftReference.java index eeb1c20646..0601f9d519 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableSoftReference.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableSoftReference.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableWeakReference.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableWeakReference.java index 7c3a67faa5..7ec98aad9d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableWeakReference.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/FinalizableWeakReference.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/Function.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/Function.java index fd212373e7..2dfcf94b64 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/Function.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/Function.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceCache.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceCache.java index 87df2af2cb..d80b457010 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceCache.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceCache.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceMap.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceMap.java index 608deb21e1..755b6fc56c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceMap.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceMap.java @@ -7,7 +7,7 @@ * You may obtain a copy of the License at *

* - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * *

* Unless required by applicable law or agreed to in writing, software diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceType.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceType.java index a223a00ee9..474b10f33c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceType.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/ReferenceType.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java b/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java index d138e21fdd..2c4df91d97 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/Strings.java @@ -5,7 +5,7 @@ * 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 + * 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, diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java index d608ab36e4..250d68098a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/AbstractInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java index fa1780d4ea..b2d9dbdbea 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java index 2a4365a6d3..ad9928168c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ChainingInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java index 6fdac73dbf..2c2113b7e7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ConversionErrorInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java index 1fb10e0543..d2cbd0b780 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/DefaultWorkflowInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java index d112d411e2..9ba05ea0cf 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionHolder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java index 5f2f9bf6aa..61d4b83dfa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ExceptionMappingInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java index 0a3d60f491..cafa08fc0f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/Interceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java index 915f7d91ea..6ba498b3cb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/LoggingInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java index 46e631f747..e96951cfa1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java index d1cb3268ad..beacb87844 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/MethodFilterInterceptorUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java index 2b60dc986b..a70a5e35af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java index b64af46c92..6c918d0323 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/NoParameters.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java index 809ff87e1a..172b429a47 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java index 661ae66a4a..4eb7eb7632 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterNameAware.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java index 1ba4dab7fb..1003be9002 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterRemoverInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java index 3926649a03..02615d8559 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java index d86ac3b155..f9faa23778 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PreResultListener.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java index e15dc0cf72..011361431c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrefixMethodInvocationUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java index d04b0b98a1..4516d760c6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/PrepareInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java index 95686b68ed..42ddb09b32 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDriven.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java index dc9fd47706..8519aa231e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ScopedModelDrivenInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java index f43749f5ce..6ec572a175 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/StaticParametersInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java index 45e007a18c..3530cb78f2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/TimerInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java index f8cdb7a559..c19d099f90 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java index ec6f97728b..4d04fa6dc6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationErrorAware.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java index 07554e2c45..b6c25ed318 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationWorkflowAware.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java index 59b9b7626f..3e111d69c8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/WithLazyParams.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java index 6be6de4469..4df5b57d8d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/After.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java index 65b431c79b..40c6bdbbd1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Allowed.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java index e1efcf6b9b..4fc6b1fe66 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationParameterFilterInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java index 014f829eba..4cbfc7ad4f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/AnnotationWorkflowInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java index c430b22170..d8fc163f93 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/Before.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java index 649eee022b..90665932f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BeforeResult.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java index 23106f4e03..ddb855b3da 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/BlockByDefault.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java index b824918060..2d4dc1f660 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/InputConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java index e7afa415c5..9053273dcb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java index c5c7b22e17..454fdea87c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionProxy.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java index 36e5e86b8e..ae153b5cb9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockContainer.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java index 054b480039..58c60a288e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java index 765cfeb20f..40e633aae8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockObjectTypeDeterminer.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java index 72564ccfe4..f85cae4a76 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockResult.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java b/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java index 76506121d6..561f2bce52 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java b/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java index b9ef1ea28f..dac3ea65f8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/ObjectProxy.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java index b04a7d73fb..2f0a31dff1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlNullHandlerWrapper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java index 170a46d9dc..ec3db9f9af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionContextFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java index e3053730e7..d21b2f6245 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlReflectionProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java index 1b1d5e92d5..fc87e113a9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlTypeConverterWrapper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index 0584ce259e..0f2d78e5fd 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java index d329c7f8fd..ab580691b4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java index 6310673f55..6b46635efc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index bcd2317ae1..905ef775cb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java b/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java index b7f545232f..0ea356a4fe 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/XWorkTypeConverterWrapper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java index e550453e21..0bccc60fae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/CompoundRootAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java index 40a64b6140..40fe62a0bb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/HttpParametersPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java index 86d0e37c43..2edf89f296 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java index 6c1ae21d3a..8400bab4f1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ObjectProxyPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java index 332c66dbde..659b709833 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/ParameterPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java index a43f6f5802..be2d136f82 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkCollectionPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java index ec249367a5..3e6f576bda 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkEnumerationAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java index 4d4a0824ae..73ad710a38 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkIteratorPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java index 2ee841be09..cb406b79b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkListPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java index 0d88e169da..bad7932cee 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMapPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java index 577c131e16..af4608b3e8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkMethodAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java index d05db69d6d..2fb7e61655 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/accessor/XWorkObjectPropertyAccessor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java b/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java index 347eedc35d..0b80312d06 100644 --- a/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java +++ b/core/src/main/java/com/opensymphony/xwork2/result/ParamNameAwareResult.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java index 1d4b7e970d..fa92e0b2ae 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/AcceptedPatternsChecker.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java index d611a58990..8dfd6ef3fa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/DefaultAcceptedPatternsChecker.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java index df8864ddd5..0148a35cf6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java b/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java index aaacdfad24..6fa54d0d43 100644 --- a/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java +++ b/core/src/main/java/com/opensymphony/xwork2/security/ExcludedPatternsChecker.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java index 1e2e2a4d6c..9dead67ee6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringObjectFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java index a3d03fc4b5..a57df70094 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/SpringProxyableObjectFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java index 61831f109a..72f84380e9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/ActionAutowiringInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java index 046190d349..f05bd1e6b9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/test/StubConfigurationProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java index 273401f2f1..03cb7d406f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AbstractLocalizedTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java index 936ab01e64..42c113f347 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/AnnotationUtils.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java index 296747d081..acac0b1447 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java index 1eac74340d..5188149396 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClassPathFinder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java index 61e46b3240..7cb09ce13f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ClearableValueStack.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java b/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java index 51e14a0ed5..d2317e1eb6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/CompoundRoot.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java b/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java index 3360f380b6..9d7d06d723 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/CreateIfNull.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java b/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java index 2a08fbbad6..b818764758 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/DomHelper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Element.java b/core/src/main/java/com/opensymphony/xwork2/util/Element.java index edce26a3ae..50fd3a9acc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Element.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Element.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java b/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java index 1f66679dac..cea76641af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Evaluated.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java index e704ba503b..97ca7dcd05 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/Key.java b/core/src/main/java/com/opensymphony/xwork2/util/Key.java index 68f3fb2209..23559ea5f3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/Key.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/Key.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java b/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java index 4abbcd4984..88fb006aed 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/KeyProperty.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java index 35c2cadacc..801c24573b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/MemberAccessValueStack.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java b/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java index 8178047ebc..cb848868d8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/NamedVariablePatternMatcher.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java b/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java index aa4a0686bb..f3ad98b2df 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/OgnlTextParser.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java b/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java index 3790892d95..2a52ad375a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/PatternMatcher.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java b/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java index 4d136d49f3..ae527171f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/PropertiesReader.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java index 8b24d971d1..0f9ec65a21 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ProxyUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java index 5452297022..279461850f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ResolverUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index b250a10dff..6366a86910 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java index 2ee31cd1de..f22a255b6a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/TextParseUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java b/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java index e6646a45b5..767b67d577 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/TextParser.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java b/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java index 8265db0c21..c14b01bd36 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ValueStack.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java index 324968c3d8..788c904534 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/ValueStackFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java b/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java index df32b04e59..4bf1e84cf5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/WildcardHelper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java b/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java index deafbb7bef..77d4880f9d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/WildcardUtil.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java b/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java index 248c6aabd9..666ff5f1e7 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java @@ -7,7 +7,7 @@ * "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 + * 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 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 1596ef9e06..24f70e42f1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/XWorkTestCaseHelper.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java index 4d12cd04b5..75697d5330 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/AbstractResourceStore.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java index c693660d2d..fe85249194 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/FileResourceStore.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java index 6275e3c4fc..7420186417 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/JarResourceStore.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java index e623936116..c1a83e81b5 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ReloadingClassLoader.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java index 0a9323bf7b..c415b098db 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStore.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java index 0206e14c71..fef8b6b7a8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/classloader/ResourceStoreClassLoader.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java index 2b3636c079..678a2baed3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java index 673df6dc5e..ed71d9c7a4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java index 008ded7114..ca5a0b1049 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterface.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java index 47771b86ac..ca28771d8e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassLoaderInterfaceDelegate.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java index 75ee34c07a..1e99bba95a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ResourceFinder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java index 2cc830c3fd..0d3f308da2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/Test.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java index 6ba5d4c9de..299e55adeb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/UrlSet.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java index d0df70513d..f5fe7e1dfa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java index b503423508..ad9b676fad 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java index 7347f1c151..7279bcca4f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/FileRevision.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java index 2d2d0f61c6..e497e1c652 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java index ca9d8de16d..95d579402d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/Revision.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java index e9901df701..64ad92390c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Locatable.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java index aa92b58a4e..d964451477 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocatableProperties.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java index 1f0cfaf0dc..8986933441 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Located.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java b/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java index 256e6f8a72..7e6fc67690 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/Location.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java index 085cd931be..3bceb97368 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationAttributes.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java index 049545f00b..d61eff1e41 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationImpl.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java index 215f01791c..550e19e016 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/LocationUtils.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java index 9472cc9d0f..8412f9d031 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/Logger.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java index e9fe688e28..52c7ec777c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java index af91154419..30309fc5b6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/LoggerUtils.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java index 926be2c5cf..059e6ef062 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLogger.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java index e1c095700c..cd8f9f00b8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/commons/CommonsLoggerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java index e79865fbec..5d03ef4f1e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLogger.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java index 3c4f02e7bf..d32f2c8a1d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/jdk/JdkLoggerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java index 1c1d3dae57..8fe2010e0b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2Logger.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java index f8c539e6f2..7b9eed1fc3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/log4j2/Log4j2LoggerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java index f4ae4689e9..49124d1a13 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLogger.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java index d79fbfe5ea..ef267429c6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/logging/slf4j/Slf4jLoggerFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java index ffca5751e0..b8792537b3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java index 98caaf62a9..7ee435d98d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionContextState.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java index 906cdd294e..a1159bdf15 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java index 6f28aa7225..bc66de8e3b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionExceptionHandler.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java index c424b37445..85945aa791 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProvider.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java index 2379de12d9..55541add6b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/reflection/ReflectionProviderFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java index 87a01f3f8d..d78224b264 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ActionValidatorManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java index 2004fcc44a..068141248d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationActionValidatorManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java index 4f4531b703..5b41afdbfa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/AnnotationValidationConfigurationBuilder.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java index 03a8f75807..de3307a291 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultActionValidatorManager.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java index 530495a054..2770c48b02 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java index 1e244e546e..5e36f81580 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParser.java @@ -7,7 +7,7 @@ * "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 + * 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 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 84f54ef275..5c7f2c136a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DelegatingValidatorContext.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java index 4c9bd0fc41..1536ded13a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/FieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java index 1ea55440e7..9e6372dba6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ShortCircuitableValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java index 16d9c6b9c3..ec0e516a82 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationException.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java index ad05b2ae42..b0852ed035 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidationInterceptor.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java b/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java index 0720a2974c..4a8c87333b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/Validator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java index e3cd3e779c..8df32577d9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorConfig.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java index ba9bbb75cb..dd5f6f8b6f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorContext.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java index e86cd2ebe7..8510fe6bb6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java index fcd246bc9e..1927ced83c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFileParser.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java index e10ac2f2ca..693fb8faf4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConditionalVisitorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java index a8c1f3d751..b76cea8fcb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ConversionErrorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java index da99a34266..1a0bc7529f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java index 1dd886e2dc..f4ca87b48c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CustomValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java index 7a63e0b61a..69c9291dee 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DateRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java index f9aa53fe43..c617fbecf9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/DoubleRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java index 0c55cb8b2c..d42c343161 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/EmailValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java index 7cf42fdb11..51a641343a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ExpressionValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java index 22867013b4..51c28be6ba 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/FieldExpressionValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java index bfd7a5a0d0..bcf438a742 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/IntRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java index 0ce5112878..1234da5b2f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/LongRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java index 69fa644b7a..186f39f4d1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RegexFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java index efb05fcae6..55548cf5b4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java index 92ae62ce98..9636a4ce48 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/RequiredStringValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java index 114627abab..66143530ca 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ShortRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java index d588551b01..e9e9833f8b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/StringLengthFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java index 19606c6b18..9bac722ecc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/UrlValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java index d1de024a11..036b2dd35c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validation.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java index 4409a7bc63..04b80d30e4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidationParameter.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java index 2897fa035d..e4925ae1aa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/Validations.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java index 9d03c132a3..9d9c5e80f8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/ValidatorType.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java index dd9b192609..c8e7146b26 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/VisitorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java index 8d5004a44c..37f893a68b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConditionalVisitorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java index ee0cdffd47..d24e0269f0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ConversionErrorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java index 7372b01d29..4f8d3e239f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/CreditCardValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java index c2b0cdb908..2159bf7c0c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DateRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java index fb662ee531..1350866d5c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/DoubleRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java index 53e9635196..92c779152d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/EmailValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java index bb76a0d27a..e9f3fb0667 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ExpressionValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java index 50a01557c6..d53c6aaa71 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldExpressionValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java index 64b921df29..7e539aae63 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/FieldValidatorSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java index 81e489afad..25b98a1383 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/IntRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java index 5d391bea3b..028b4c2f85 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/LongRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java index a2dcb14e50..b713262c56 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RangeValidatorSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index dfc6263296..e45a02e8fe 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java index 3d5d27da0a..30799215f2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RepopulateConversionErrorFieldValidatorSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java index a0f4511803..c23e210904 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java index 77ea75ff59..53149ef020 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/RequiredStringValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java index 122c23f91d..b7e3cb8435 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ShortRangeFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java index 3c28817387..335d675476 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/StringLengthFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java index 2ae0afd06d..d4dbb38316 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/URLValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java index 7a87863204..f7da8e44c3 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/ValidatorSupport.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java index 9ec8fd0aed..d21bcb490a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/VisitorFieldValidator.java @@ -7,7 +7,7 @@ * "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 + * 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 diff --git a/core/src/main/java/org/apache/struts2/RequestUtils.java b/core/src/main/java/org/apache/struts2/RequestUtils.java index 393459a683..40ed2ddb0e 100644 --- a/core/src/main/java/org/apache/struts2/RequestUtils.java +++ b/core/src/main/java/org/apache/struts2/RequestUtils.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import org.apache.commons.lang3.StringUtils; @@ -32,7 +29,6 @@ import java.util.Locale; import java.util.TimeZone; - /** * Request handling utility class. */ diff --git a/core/src/main/java/org/apache/struts2/ServletActionContext.java b/core/src/main/java/org/apache/struts2/ServletActionContext.java index e3f50af5e0..4af8d532b6 100644 --- a/core/src/main/java/org/apache/struts2/ServletActionContext.java +++ b/core/src/main/java/org/apache/struts2/ServletActionContext.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import com.opensymphony.xwork2.ActionContext; @@ -31,7 +28,6 @@ import javax.servlet.jsp.PageContext; import java.util.Map; - /** * Web-specific context information for actions. This class subclasses ActionContext which * provides access to things like the action name, value stack, etc. This class adds access to diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index 0cc7172962..970f52b0b9 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import org.apache.struts2.dispatcher.mapper.CompositeActionMapper; diff --git a/core/src/main/java/org/apache/struts2/StrutsException.java b/core/src/main/java/org/apache/struts2/StrutsException.java index 089205aa6a..4cff2750d1 100644 --- a/core/src/main/java/org/apache/struts2/StrutsException.java +++ b/core/src/main/java/org/apache/struts2/StrutsException.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,11 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import com.opensymphony.xwork2.XWorkException; import com.opensymphony.xwork2.util.location.Locatable; - /** * A generic runtime exception that optionally contains Location information */ diff --git a/core/src/main/java/org/apache/struts2/StrutsStatics.java b/core/src/main/java/org/apache/struts2/StrutsStatics.java index d204f52734..c4e2c1ca0c 100644 --- a/core/src/main/java/org/apache/struts2/StrutsStatics.java +++ b/core/src/main/java/org/apache/struts2/StrutsStatics.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,10 +16,8 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; - /** *

* Constants used by Struts. The constants can be used to get or set objects diff --git a/core/src/main/java/org/apache/struts2/components/ActionComponent.java b/core/src/main/java/org/apache/struts2/components/ActionComponent.java index d6fb690c89..901556f5ab 100644 --- a/core/src/main/java/org/apache/struts2/components/ActionComponent.java +++ b/core/src/main/java/org/apache/struts2/components/ActionComponent.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/components/ActionError.java b/core/src/main/java/org/apache/struts2/components/ActionError.java index 4ce34a3af0..060c3c9613 100644 --- a/core/src/main/java/org/apache/struts2/components/ActionError.java +++ b/core/src/main/java/org/apache/struts2/components/ActionError.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/ActionMessage.java b/core/src/main/java/org/apache/struts2/components/ActionMessage.java index c62dd5db91..0f1680e865 100644 --- a/core/src/main/java/org/apache/struts2/components/ActionMessage.java +++ b/core/src/main/java/org/apache/struts2/components/ActionMessage.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Anchor.java b/core/src/main/java/org/apache/struts2/components/Anchor.java index 118ae6f021..1639310105 100644 --- a/core/src/main/java/org/apache/struts2/components/Anchor.java +++ b/core/src/main/java/org/apache/struts2/components/Anchor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/AppendIterator.java b/core/src/main/java/org/apache/struts2/components/AppendIterator.java index c639b08aa1..6e03d51106 100644 --- a/core/src/main/java/org/apache/struts2/components/AppendIterator.java +++ b/core/src/main/java/org/apache/struts2/components/AppendIterator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Bean.java b/core/src/main/java/org/apache/struts2/components/Bean.java index d01e63b293..e8dc3b0a7a 100644 --- a/core/src/main/java/org/apache/struts2/components/Bean.java +++ b/core/src/main/java/org/apache/struts2/components/Bean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/org/apache/struts2/components/Checkbox.java b/core/src/main/java/org/apache/struts2/components/Checkbox.java index a9f0fdc6b6..06f9997888 100644 --- a/core/src/main/java/org/apache/struts2/components/Checkbox.java +++ b/core/src/main/java/org/apache/struts2/components/Checkbox.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/CheckboxList.java b/core/src/main/java/org/apache/struts2/components/CheckboxList.java index fde4037897..e830918880 100644 --- a/core/src/main/java/org/apache/struts2/components/CheckboxList.java +++ b/core/src/main/java/org/apache/struts2/components/CheckboxList.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,14 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.views.annotations.StrutsTag; -import org.apache.struts2.views.annotations.StrutsTagAttribute; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/ClosingUIBean.java b/core/src/main/java/org/apache/struts2/components/ClosingUIBean.java index 123d58bc79..48cccb2679 100644 --- a/core/src/main/java/org/apache/struts2/components/ClosingUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/ClosingUIBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/ComboBox.java b/core/src/main/java/org/apache/struts2/components/ComboBox.java index e2f98b6dec..cfc2cd1ba4 100644 --- a/core/src/main/java/org/apache/struts2/components/ComboBox.java +++ b/core/src/main/java/org/apache/struts2/components/ComboBox.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Component.java b/core/src/main/java/org/apache/struts2/components/Component.java index 971cd53b8d..d291f99d72 100644 --- a/core/src/main/java/org/apache/struts2/components/Component.java +++ b/core/src/main/java/org/apache/struts2/components/Component.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/ComponentUrlProvider.java b/core/src/main/java/org/apache/struts2/components/ComponentUrlProvider.java index d8e32c9056..c4fdfd3953 100644 --- a/core/src/main/java/org/apache/struts2/components/ComponentUrlProvider.java +++ b/core/src/main/java/org/apache/struts2/components/ComponentUrlProvider.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/components/ContextBean.java b/core/src/main/java/org/apache/struts2/components/ContextBean.java index 86f09bfa6b..8628e3ab80 100644 --- a/core/src/main/java/org/apache/struts2/components/ContextBean.java +++ b/core/src/main/java/org/apache/struts2/components/ContextBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Date.java b/core/src/main/java/org/apache/struts2/components/Date.java index f1a3c978cb..ba2c82d89d 100644 --- a/core/src/main/java/org/apache/struts2/components/Date.java +++ b/core/src/main/java/org/apache/struts2/components/Date.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/components/DateTextField.java b/core/src/main/java/org/apache/struts2/components/DateTextField.java index 0fd3614558..1645a9395a 100644 --- a/core/src/main/java/org/apache/struts2/components/DateTextField.java +++ b/core/src/main/java/org/apache/struts2/components/DateTextField.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/Debug.java b/core/src/main/java/org/apache/struts2/components/Debug.java index a76e871915..c0b33d9345 100644 --- a/core/src/main/java/org/apache/struts2/components/Debug.java +++ b/core/src/main/java/org/apache/struts2/components/Debug.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java b/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java index 5383a53414..1ce54ad9eb 100644 --- a/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/DoubleListUIBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/DoubleSelect.java b/core/src/main/java/org/apache/struts2/components/DoubleSelect.java index 539d3aef21..a6f96b1146 100644 --- a/core/src/main/java/org/apache/struts2/components/DoubleSelect.java +++ b/core/src/main/java/org/apache/struts2/components/DoubleSelect.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Else.java b/core/src/main/java/org/apache/struts2/components/Else.java index 4ce124bac0..6b697152ba 100644 --- a/core/src/main/java/org/apache/struts2/components/Else.java +++ b/core/src/main/java/org/apache/struts2/components/Else.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/ElseIf.java b/core/src/main/java/org/apache/struts2/components/ElseIf.java index 215a58ee7c..30f4a991c7 100644 --- a/core/src/main/java/org/apache/struts2/components/ElseIf.java +++ b/core/src/main/java/org/apache/struts2/components/ElseIf.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/ExtraParameterProvider.java b/core/src/main/java/org/apache/struts2/components/ExtraParameterProvider.java index 844e6d62b4..9734c6b6bd 100644 --- a/core/src/main/java/org/apache/struts2/components/ExtraParameterProvider.java +++ b/core/src/main/java/org/apache/struts2/components/ExtraParameterProvider.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/components/FieldError.java b/core/src/main/java/org/apache/struts2/components/FieldError.java index 809253a8a0..9b30520266 100644 --- a/core/src/main/java/org/apache/struts2/components/FieldError.java +++ b/core/src/main/java/org/apache/struts2/components/FieldError.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/File.java b/core/src/main/java/org/apache/struts2/components/File.java index 752c31c824..09b91a7ad0 100644 --- a/core/src/main/java/org/apache/struts2/components/File.java +++ b/core/src/main/java/org/apache/struts2/components/File.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Form.java b/core/src/main/java/org/apache/struts2/components/Form.java index f1f779cda0..9758cf3257 100644 --- a/core/src/main/java/org/apache/struts2/components/Form.java +++ b/core/src/main/java/org/apache/struts2/components/Form.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/org/apache/struts2/components/FormButton.java b/core/src/main/java/org/apache/struts2/components/FormButton.java index ab99679cdc..7dcc7ae686 100644 --- a/core/src/main/java/org/apache/struts2/components/FormButton.java +++ b/core/src/main/java/org/apache/struts2/components/FormButton.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/GenericUIBean.java b/core/src/main/java/org/apache/struts2/components/GenericUIBean.java index 0ba693ee79..63bb131e46 100644 --- a/core/src/main/java/org/apache/struts2/components/GenericUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/GenericUIBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/Head.java b/core/src/main/java/org/apache/struts2/components/Head.java index 2cc4710a34..b09f510493 100644 --- a/core/src/main/java/org/apache/struts2/components/Head.java +++ b/core/src/main/java/org/apache/struts2/components/Head.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/Hidden.java b/core/src/main/java/org/apache/struts2/components/Hidden.java index 9a85d90673..74875d5a96 100644 --- a/core/src/main/java/org/apache/struts2/components/Hidden.java +++ b/core/src/main/java/org/apache/struts2/components/Hidden.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/I18n.java b/core/src/main/java/org/apache/struts2/components/I18n.java index 497fff8549..49565fcbd7 100644 --- a/core/src/main/java/org/apache/struts2/components/I18n.java +++ b/core/src/main/java/org/apache/struts2/components/I18n.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/If.java b/core/src/main/java/org/apache/struts2/components/If.java index d9a81155ae..fa312ee7d8 100644 --- a/core/src/main/java/org/apache/struts2/components/If.java +++ b/core/src/main/java/org/apache/struts2/components/If.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/Include.java b/core/src/main/java/org/apache/struts2/components/Include.java index 36f0a87589..aa58ade627 100644 --- a/core/src/main/java/org/apache/struts2/components/Include.java +++ b/core/src/main/java/org/apache/struts2/components/Include.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/InputTransferSelect.java b/core/src/main/java/org/apache/struts2/components/InputTransferSelect.java index c4012004d1..762bafc5b6 100644 --- a/core/src/main/java/org/apache/struts2/components/InputTransferSelect.java +++ b/core/src/main/java/org/apache/struts2/components/InputTransferSelect.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/IteratorComponent.java b/core/src/main/java/org/apache/struts2/components/IteratorComponent.java index 1474fe9848..2e8ee4ae6a 100644 --- a/core/src/main/java/org/apache/struts2/components/IteratorComponent.java +++ b/core/src/main/java/org/apache/struts2/components/IteratorComponent.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Label.java b/core/src/main/java/org/apache/struts2/components/Label.java index 644b38951d..f81d36a777 100644 --- a/core/src/main/java/org/apache/struts2/components/Label.java +++ b/core/src/main/java/org/apache/struts2/components/Label.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/ListUIBean.java b/core/src/main/java/org/apache/struts2/components/ListUIBean.java index 75b29f0d05..6e24e822e3 100644 --- a/core/src/main/java/org/apache/struts2/components/ListUIBean.java +++ b/core/src/main/java/org/apache/struts2/components/ListUIBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/MergeIterator.java b/core/src/main/java/org/apache/struts2/components/MergeIterator.java index faeb62c3d5..861d85d4c0 100644 --- a/core/src/main/java/org/apache/struts2/components/MergeIterator.java +++ b/core/src/main/java/org/apache/struts2/components/MergeIterator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/OptGroup.java b/core/src/main/java/org/apache/struts2/components/OptGroup.java index 1be09e0ab8..58d0b9a729 100644 --- a/core/src/main/java/org/apache/struts2/components/OptGroup.java +++ b/core/src/main/java/org/apache/struts2/components/OptGroup.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/OptionTransferSelect.java b/core/src/main/java/org/apache/struts2/components/OptionTransferSelect.java index 091dd64cc7..bdc4905df3 100644 --- a/core/src/main/java/org/apache/struts2/components/OptionTransferSelect.java +++ b/core/src/main/java/org/apache/struts2/components/OptionTransferSelect.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Param.java b/core/src/main/java/org/apache/struts2/components/Param.java index 9976d22546..023761ad92 100644 --- a/core/src/main/java/org/apache/struts2/components/Param.java +++ b/core/src/main/java/org/apache/struts2/components/Param.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Password.java b/core/src/main/java/org/apache/struts2/components/Password.java index 3f54b29711..d8e106457e 100644 --- a/core/src/main/java/org/apache/struts2/components/Password.java +++ b/core/src/main/java/org/apache/struts2/components/Password.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/Property.java b/core/src/main/java/org/apache/struts2/components/Property.java index 9d2c2b6d52..10e1d1e54b 100644 --- a/core/src/main/java/org/apache/struts2/components/Property.java +++ b/core/src/main/java/org/apache/struts2/components/Property.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Push.java b/core/src/main/java/org/apache/struts2/components/Push.java index f5f428ba2b..c2752e0bff 100644 --- a/core/src/main/java/org/apache/struts2/components/Push.java +++ b/core/src/main/java/org/apache/struts2/components/Push.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/Radio.java b/core/src/main/java/org/apache/struts2/components/Radio.java index 00c6616196..0315cb65bb 100644 --- a/core/src/main/java/org/apache/struts2/components/Radio.java +++ b/core/src/main/java/org/apache/struts2/components/Radio.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Reset.java b/core/src/main/java/org/apache/struts2/components/Reset.java index e489de2a3a..c1de8cc24f 100644 --- a/core/src/main/java/org/apache/struts2/components/Reset.java +++ b/core/src/main/java/org/apache/struts2/components/Reset.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Select.java b/core/src/main/java/org/apache/struts2/components/Select.java index a21aaa94b8..63b2c2cbee 100644 --- a/core/src/main/java/org/apache/struts2/components/Select.java +++ b/core/src/main/java/org/apache/struts2/components/Select.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java b/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java index 314f3dea54..7a0113b872 100644 --- a/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java +++ b/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/components/Set.java b/core/src/main/java/org/apache/struts2/components/Set.java index 7e1ca021d4..65494543b2 100644 --- a/core/src/main/java/org/apache/struts2/components/Set.java +++ b/core/src/main/java/org/apache/struts2/components/Set.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/Submit.java b/core/src/main/java/org/apache/struts2/components/Submit.java index 85fb0d2e6c..60b6aecf36 100644 --- a/core/src/main/java/org/apache/struts2/components/Submit.java +++ b/core/src/main/java/org/apache/struts2/components/Submit.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/Text.java b/core/src/main/java/org/apache/struts2/components/Text.java index 3f7c15e9e2..c7935ac7cd 100644 --- a/core/src/main/java/org/apache/struts2/components/Text.java +++ b/core/src/main/java/org/apache/struts2/components/Text.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/TextArea.java b/core/src/main/java/org/apache/struts2/components/TextArea.java index 234810df46..6e280fcc00 100644 --- a/core/src/main/java/org/apache/struts2/components/TextArea.java +++ b/core/src/main/java/org/apache/struts2/components/TextArea.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/TextField.java b/core/src/main/java/org/apache/struts2/components/TextField.java index a5b73651b7..07a983c274 100644 --- a/core/src/main/java/org/apache/struts2/components/TextField.java +++ b/core/src/main/java/org/apache/struts2/components/TextField.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/Token.java b/core/src/main/java/org/apache/struts2/components/Token.java index cac7679453..53a361f4f5 100644 --- a/core/src/main/java/org/apache/struts2/components/Token.java +++ b/core/src/main/java/org/apache/struts2/components/Token.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/components/UIBean.java b/core/src/main/java/org/apache/struts2/components/UIBean.java index 38673c9a16..fe0f65c3c9 100644 --- a/core/src/main/java/org/apache/struts2/components/UIBean.java +++ b/core/src/main/java/org/apache/struts2/components/UIBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.config.ConfigurationException; diff --git a/core/src/main/java/org/apache/struts2/components/URL.java b/core/src/main/java/org/apache/struts2/components/URL.java index 6269271573..0656340d40 100644 --- a/core/src/main/java/org/apache/struts2/components/URL.java +++ b/core/src/main/java/org/apache/struts2/components/URL.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/UpDownSelect.java b/core/src/main/java/org/apache/struts2/components/UpDownSelect.java index 1529cfd45a..77dd5d67dd 100644 --- a/core/src/main/java/org/apache/struts2/components/UpDownSelect.java +++ b/core/src/main/java/org/apache/struts2/components/UpDownSelect.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/components/UrlProvider.java b/core/src/main/java/org/apache/struts2/components/UrlProvider.java index 16da4785d7..abb47c9252 100644 --- a/core/src/main/java/org/apache/struts2/components/UrlProvider.java +++ b/core/src/main/java/org/apache/struts2/components/UrlProvider.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/components/UrlRenderer.java b/core/src/main/java/org/apache/struts2/components/UrlRenderer.java index 389fb39a5c..29890250ee 100644 --- a/core/src/main/java/org/apache/struts2/components/UrlRenderer.java +++ b/core/src/main/java/org/apache/struts2/components/UrlRenderer.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components; import org.apache.struts2.dispatcher.mapper.ActionMapper; diff --git a/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java index 59e5aacf24..7f5deb50c1 100644 --- a/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import com.opensymphony.xwork2.util.ClassLoaderUtil; diff --git a/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java index 67a332ca27..a272697eea 100644 --- a/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/components/template/JspTemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/JspTemplateEngine.java index 077e70de9e..1b9523001f 100644 --- a/core/src/main/java/org/apache/struts2/components/template/JspTemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/JspTemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/components/template/Template.java b/core/src/main/java/org/apache/struts2/components/template/Template.java index 40c30fcc0a..26dbe5e69b 100644 --- a/core/src/main/java/org/apache/struts2/components/template/Template.java +++ b/core/src/main/java/org/apache/struts2/components/template/Template.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import java.util.ArrayList; diff --git a/core/src/main/java/org/apache/struts2/components/template/TemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/TemplateEngine.java index bb24519a21..663c163117 100644 --- a/core/src/main/java/org/apache/struts2/components/template/TemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/TemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/components/template/TemplateEngineManager.java b/core/src/main/java/org/apache/struts2/components/template/TemplateEngineManager.java index a93d39e8ad..ae0e756440 100644 --- a/core/src/main/java/org/apache/struts2/components/template/TemplateEngineManager.java +++ b/core/src/main/java/org/apache/struts2/components/template/TemplateEngineManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import com.opensymphony.xwork2.config.ConfigurationException; diff --git a/core/src/main/java/org/apache/struts2/components/template/TemplateRenderingContext.java b/core/src/main/java/org/apache/struts2/components/template/TemplateRenderingContext.java index 3c02d8cbdf..7b639d85d1 100644 --- a/core/src/main/java/org/apache/struts2/components/template/TemplateRenderingContext.java +++ b/core/src/main/java/org/apache/struts2/components/template/TemplateRenderingContext.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import java.io.Writer; diff --git a/core/src/main/java/org/apache/struts2/components/template/VelocityTemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/VelocityTemplateEngine.java index 70b6073ecc..24f456471f 100644 --- a/core/src/main/java/org/apache/struts2/components/template/VelocityTemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/VelocityTemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.components.template; import com.opensymphony.xwork2.inject.Inject; 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 664c6f41a1..1b5d7e42bc 100644 --- a/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.config; import com.opensymphony.xwork2.ObjectFactory; 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 f77f8aedc9..8249a06675 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultBeanSelectionProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.ActionProxyFactory; diff --git a/core/src/main/java/org/apache/struts2/config/DefaultPropertiesProvider.java b/core/src/main/java/org/apache/struts2/config/DefaultPropertiesProvider.java index 72552512a3..35faaa5e80 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultPropertiesProvider.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultPropertiesProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.config.Configuration; diff --git a/core/src/main/java/org/apache/struts2/config/DefaultSettings.java b/core/src/main/java/org/apache/struts2/config/DefaultSettings.java index 8fc9a49366..fc16c61ae7 100644 --- a/core/src/main/java/org/apache/struts2/config/DefaultSettings.java +++ b/core/src/main/java/org/apache/struts2/config/DefaultSettings.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.util.location.Location; diff --git a/core/src/main/java/org/apache/struts2/config/DelegatingSettings.java b/core/src/main/java/org/apache/struts2/config/DelegatingSettings.java index c8a1632138..ef4ce31f24 100644 --- a/core/src/main/java/org/apache/struts2/config/DelegatingSettings.java +++ b/core/src/main/java/org/apache/struts2/config/DelegatingSettings.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.util.location.Location; @@ -28,7 +25,6 @@ import java.util.List; import java.util.Set; - /** * DelegatingSettings stores an internal list of {@link Settings} objects * to update settings or retrieve settings values. diff --git a/core/src/main/java/org/apache/struts2/config/NullResult.java b/core/src/main/java/org/apache/struts2/config/NullResult.java index d63bc41330..9ef0dd158f 100644 --- a/core/src/main/java/org/apache/struts2/config/NullResult.java +++ b/core/src/main/java/org/apache/struts2/config/NullResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.ActionInvocation; @@ -26,12 +23,12 @@ /** * Null result to get around annotation defaults that can't be null + * FIXME: ???? is it usable? doesn't it make sense to have such result? */ public class NullResult implements Result { public void execute(ActionInvocation invocation) throws Exception { throw new IllegalStateException("Shouldn't be called"); - } } diff --git a/core/src/main/java/org/apache/struts2/config/PropertiesConfigurationProvider.java b/core/src/main/java/org/apache/struts2/config/PropertiesConfigurationProvider.java index a0e1928248..59482dd55d 100644 --- a/core/src/main/java/org/apache/struts2/config/PropertiesConfigurationProvider.java +++ b/core/src/main/java/org/apache/struts2/config/PropertiesConfigurationProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.config.Configuration; diff --git a/core/src/main/java/org/apache/struts2/config/PropertiesSettings.java b/core/src/main/java/org/apache/struts2/config/PropertiesSettings.java index 7a136cb8bb..7b3cfb115c 100644 --- a/core/src/main/java/org/apache/struts2/config/PropertiesSettings.java +++ b/core/src/main/java/org/apache/struts2/config/PropertiesSettings.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.util.ClassLoaderUtil; @@ -34,7 +31,6 @@ import java.net.URL; import java.util.Iterator; - /** * A class to handle settings via a properties file. */ diff --git a/core/src/main/java/org/apache/struts2/config/Settings.java b/core/src/main/java/org/apache/struts2/config/Settings.java index 03d5764e18..b9fb2ce448 100644 --- a/core/src/main/java/org/apache/struts2/config/Settings.java +++ b/core/src/main/java/org/apache/struts2/config/Settings.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.util.location.Location; 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 75b8f64f84..c4de249384 100644 --- a/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java +++ b/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/conversion/UploadedFileConverter.java b/core/src/main/java/org/apache/struts2/conversion/UploadedFileConverter.java index 69d3c62cb8..bee7a3834a 100644 --- a/core/src/main/java/org/apache/struts2/conversion/UploadedFileConverter.java +++ b/core/src/main/java/org/apache/struts2/conversion/UploadedFileConverter.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.conversion; import com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ApplicationMap.java b/core/src/main/java/org/apache/struts2/dispatcher/ApplicationMap.java index ee753600ec..8f54730ce0 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ApplicationMap.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ApplicationMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,14 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import javax.servlet.ServletContext; import java.io.Serializable; import java.util.*; - /** * A simple implementation of the {@link java.util.Map} interface to handle a collection of attributes and * init parameters in a {@link javax.servlet.ServletContext} object. The {@link #entrySet()} method diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ContainerHolder.java b/core/src/main/java/org/apache/struts2/dispatcher/ContainerHolder.java index 35cf1475ad..9565732ace 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ContainerHolder.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ContainerHolder.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher; import com.opensymphony.xwork2.inject.Container; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/DefaultActionSupport.java b/core/src/main/java/org/apache/struts2/dispatcher/DefaultActionSupport.java index 430509c66d..7fa83fc879 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/DefaultActionSupport.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/DefaultActionSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,10 +16,8 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; - import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/DefaultDispatcherErrorHandler.java b/core/src/main/java/org/apache/struts2/dispatcher/DefaultDispatcherErrorHandler.java index 2bf7c9fc96..07697714fa 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/DefaultDispatcherErrorHandler.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/DefaultDispatcherErrorHandler.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher; import com.opensymphony.xwork2.inject.Inject; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/DefaultStaticContentLoader.java b/core/src/main/java/org/apache/struts2/dispatcher/DefaultStaticContentLoader.java index 1053368c1f..eeedbf543e 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/DefaultStaticContentLoader.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/DefaultStaticContentLoader.java @@ -1,6 +1,4 @@ /* - * $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 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 97e2149215..93632fa127 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import com.opensymphony.xwork2.*; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/DispatcherErrorHandler.java b/core/src/main/java/org/apache/struts2/dispatcher/DispatcherErrorHandler.java index fe8f6ecc73..baf21c3de4 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/DispatcherErrorHandler.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/DispatcherErrorHandler.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher; import javax.servlet.ServletContext; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/DispatcherListener.java b/core/src/main/java/org/apache/struts2/dispatcher/DispatcherListener.java index 7fa317498e..b5178f68b4 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/DispatcherListener.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/DispatcherListener.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; /** diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ExecuteOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/ExecuteOperations.java index b7d26ebd68..8671688de2 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ExecuteOperations.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ExecuteOperations.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/HostConfig.java b/core/src/main/java/org/apache/struts2/dispatcher/HostConfig.java index 2dd12b4b79..44b65eba7f 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/HostConfig.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/HostConfig.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/HttpParameters.java b/core/src/main/java/org/apache/struts2/dispatcher/HttpParameters.java index 2b09a7cb7c..f46c40dab3 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/HttpParameters.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/HttpParameters.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import org.apache.struts2.interceptor.ParameterAware; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/InitOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/InitOperations.java index 6e2c52b464..c98b61771a 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/InitOperations.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/InitOperations.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/LocalizedMessage.java b/core/src/main/java/org/apache/struts2/dispatcher/LocalizedMessage.java index 9d2304fb32..fd7ebfe70f 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/LocalizedMessage.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/LocalizedMessage.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import java.util.Arrays; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/MockDispatcher.java b/core/src/main/java/org/apache/struts2/dispatcher/MockDispatcher.java index 5576e179a4..b10014995d 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/MockDispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/MockDispatcher.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/Parameter.java b/core/src/main/java/org/apache/struts2/dispatcher/Parameter.java index 4e06ef6c8e..16a281d97d 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Parameter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Parameter.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher; import java.util.Objects; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java index 8bfb9543f6..354cad7fa2 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/RequestMap.java b/core/src/main/java/org/apache/struts2/dispatcher/RequestMap.java index b8392ba51f..4b8148ab69 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/RequestMap.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/RequestMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import javax.servlet.http.HttpServletRequest; @@ -28,7 +25,6 @@ import java.util.HashSet; import java.util.Set; - /** * A simple implementation of the {@link java.util.Map} interface to handle a collection of request attributes. */ diff --git a/core/src/main/java/org/apache/struts2/dispatcher/SessionMap.java b/core/src/main/java/org/apache/struts2/dispatcher/SessionMap.java index 73ff87ec14..6d0b20f352 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/SessionMap.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/SessionMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import javax.servlet.http.HttpServletRequest; @@ -26,7 +23,6 @@ import java.io.Serializable; import java.util.*; - /** * A simple implementation of the {@link java.util.Map} interface to handle a collection of HTTP session * attributes. The {@link #entrySet()} method enumerates over all session attributes and creates a Set of entries. diff --git a/core/src/main/java/org/apache/struts2/dispatcher/StaticContentLoader.java b/core/src/main/java/org/apache/struts2/dispatcher/StaticContentLoader.java index 5b6d2943ad..cf4dd47d4c 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/StaticContentLoader.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/StaticContentLoader.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/StrutsRequestWrapper.java b/core/src/main/java/org/apache/struts2/dispatcher/StrutsRequestWrapper.java index 9daa3f173d..233f095798 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/StrutsRequestWrapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/StrutsRequestWrapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/FilterHostConfig.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/FilterHostConfig.java index 6df1761553..783c2b28a8 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/FilterHostConfig.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/FilterHostConfig.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsExecuteFilter.java index 8ab98e6c23..30913f6bb1 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsExecuteFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsExecuteFilter.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java index c4bcbbae42..9f2f2bfd69 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareAndExecuteFilter.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java index 2cfe7f25d7..888ecacfd6 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/filter/StrutsPrepareFilter.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/listener/ListenerHostConfig.java b/core/src/main/java/org/apache/struts2/dispatcher/listener/ListenerHostConfig.java index 13290a5a0f..fa7525141e 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/listener/ListenerHostConfig.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/listener/ListenerHostConfig.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/listener/StrutsListener.java b/core/src/main/java/org/apache/struts2/dispatcher/listener/StrutsListener.java index b0098939b9..ab91debfe1 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/listener/StrutsListener.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/listener/StrutsListener.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java index bc1788114c..ecb4f52d4b 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java index 86ac1dacb2..4e2a0f40cd 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ActionMapping.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.Result; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/CompositeActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/CompositeActionMapper.java index eaac291411..81fa7cd452 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/CompositeActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/CompositeActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java index f1fcfeec6b..e4725e7924 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ParameterAction.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ParameterAction.java index e03b821ca9..a48fafb45a 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/ParameterAction.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/ParameterAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; /** diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/PrefixBasedActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/PrefixBasedActionMapper.java index 457279aff9..1702b580da 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/PrefixBasedActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/PrefixBasedActionMapper.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java index c2a9bfcfad..8362a180ce 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/Restful2ActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java index 9db58e386b..34cad9ed14 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/RestfulActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.mapper; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java index 10ed6cd797..112621c3ea 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java @@ -1,6 +1,23 @@ +/* + * 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 org.apache.struts2.dispatcher.multipart; -import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.inject.Inject; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java index 68bbd2b8ca..800d542802 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; import org.apache.commons.fileupload.FileItem; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java index b8c1a33a34..69c08193ec 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.dispatcher.multipart; import org.apache.commons.fileupload.FileItemIterator; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java index 22ffe8efa5..445dcd9a29 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; import javax.servlet.http.HttpServletRequest; @@ -30,7 +27,6 @@ import java.util.Enumeration; import java.util.List; - /** *

Abstract wrapper class HTTP requests to handle multi-part data.

*/ diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java index a947caea7c..d37eed1438 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; import com.opensymphony.xwork2.LocaleProvider; @@ -31,7 +28,6 @@ import java.io.IOException; import java.util.*; - /** *

* Parse a multipart request and provide a wrapper around the request. The parsing implementation used diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/StrutsUploadedFile.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/StrutsUploadedFile.java index a185780613..e09d79aff4 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/StrutsUploadedFile.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/StrutsUploadedFile.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; import java.io.File; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/UploadedFile.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/UploadedFile.java index 7efe285423..d4edb52219 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/UploadedFile.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/UploadedFile.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; /** diff --git a/core/src/main/java/org/apache/struts2/dispatcher/servlet/ServletHostConfig.java b/core/src/main/java/org/apache/struts2/dispatcher/servlet/ServletHostConfig.java index b449304b72..f8b01ddb12 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/servlet/ServletHostConfig.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/servlet/ServletHostConfig.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/dispatcher/servlet/StrutsServlet.java b/core/src/main/java/org/apache/struts2/dispatcher/servlet/StrutsServlet.java index 6a7e364736..1070d45693 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/servlet/StrutsServlet.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/servlet/StrutsServlet.java @@ -1,6 +1,4 @@ /* - * $Id: DefaultActionSupport.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/factory/PrefixBasedActionProxyFactory.java b/core/src/main/java/org/apache/struts2/factory/PrefixBasedActionProxyFactory.java index 028a32afe9..c522d1a6d3 100644 --- a/core/src/main/java/org/apache/struts2/factory/PrefixBasedActionProxyFactory.java +++ b/core/src/main/java/org/apache/struts2/factory/PrefixBasedActionProxyFactory.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.factory; import com.opensymphony.xwork2.ActionProxy; diff --git a/core/src/main/java/org/apache/struts2/factory/StrutsActionProxy.java b/core/src/main/java/org/apache/struts2/factory/StrutsActionProxy.java index a444953a11..e0732bde93 100644 --- a/core/src/main/java/org/apache/struts2/factory/StrutsActionProxy.java +++ b/core/src/main/java/org/apache/struts2/factory/StrutsActionProxy.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,9 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - -// Copyright 2006 Google Inc. All Rights Reserved. - package org.apache.struts2.factory; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/factory/StrutsActionProxyFactory.java b/core/src/main/java/org/apache/struts2/factory/StrutsActionProxyFactory.java index 5d00ddee9d..2b32baa180 100644 --- a/core/src/main/java/org/apache/struts2/factory/StrutsActionProxyFactory.java +++ b/core/src/main/java/org/apache/struts2/factory/StrutsActionProxyFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,9 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - -// Copyright 2006 Google Inc. All Rights Reserved. - package org.apache.struts2.factory; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/factory/StrutsResultFactory.java b/core/src/main/java/org/apache/struts2/factory/StrutsResultFactory.java index 6088b020f7..0a758f2138 100644 --- a/core/src/main/java/org/apache/struts2/factory/StrutsResultFactory.java +++ b/core/src/main/java/org/apache/struts2/factory/StrutsResultFactory.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.factory; import com.opensymphony.xwork2.ObjectFactory; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java index 5d25c30c30..32fa67105c 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ApplicationAware.java b/core/src/main/java/org/apache/struts2/interceptor/ApplicationAware.java index a68608638f..4cdd4785ea 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ApplicationAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ApplicationAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; - /** *

* Actions that want to be aware of the application Map object should implement this interface. diff --git a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java index c8061a304b..20b330eaea 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java +++ b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.io.Serializable; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java index ee57dc5c80..c7942fb1c1 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java index 9bf769993e..650d17a9c3 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java index b9321ca36c..86578e77be 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookieProvider.java b/core/src/main/java/org/apache/struts2/interceptor/CookieProvider.java index d7aeed5258..b4eb73eeab 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CookieProvider.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CookieProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import javax.servlet.http.Cookie; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookieProviderInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CookieProviderInterceptor.java index 60313b97f8..4e415e2200 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CookieProviderInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CookieProviderInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookiesAware.java b/core/src/main/java/org/apache/struts2/interceptor/CookiesAware.java index a4d029d0a4..0632e83265 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CookiesAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CookiesAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java index 8bdbc4e7da..32aea1e2ad 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java index a602f938df..77e773930a 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java index e99639240a..2b3e063e04 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.Action; @@ -37,7 +34,6 @@ import javax.servlet.http.HttpSession; import java.util.Map; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java index a392813b08..b6a0fa966c 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.*; diff --git a/core/src/main/java/org/apache/struts2/interceptor/HttpParametersAware.java b/core/src/main/java/org/apache/struts2/interceptor/HttpParametersAware.java index 854f85b64e..66f2a1d449 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/HttpParametersAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/HttpParametersAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import org.apache.struts2.dispatcher.HttpParameters; - /** *

* This interface gives actions an alternative way of receiving input parameters. The parameters will diff --git a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java index bf528e510b..502c21bd00 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java index 5052df7f3e..5d729454e1 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/MessageStorePreResultListener.java b/core/src/main/java/org/apache/struts2/interceptor/MessageStorePreResultListener.java index 4df6591a61..bf40e148bb 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/MessageStorePreResultListener.java +++ b/core/src/main/java/org/apache/struts2/interceptor/MessageStorePreResultListener.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java index 0d9f285c5f..64cab74404 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java @@ -1,6 +1,4 @@ /* - * $Id: BackgroundProcess.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java b/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java index 5d118164f5..c42aa809b1 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java +++ b/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,10 +16,8 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; - /** * This marker interface should be implemented by actions that do not want any parameters set on * them automatically. This may be useful if one is using the action tag and want to supply diff --git a/core/src/main/java/org/apache/struts2/interceptor/ParameterAware.java b/core/src/main/java/org/apache/struts2/interceptor/ParameterAware.java index 755efbb74f..28eb7491fe 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ParameterAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ParameterAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/interceptor/PrincipalAware.java b/core/src/main/java/org/apache/struts2/interceptor/PrincipalAware.java index 91878d81c1..7bf418ec9b 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/PrincipalAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/PrincipalAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; /** diff --git a/core/src/main/java/org/apache/struts2/interceptor/PrincipalProxy.java b/core/src/main/java/org/apache/struts2/interceptor/PrincipalProxy.java index f42fe7ce67..d8c11b6a3e 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/PrincipalProxy.java +++ b/core/src/main/java/org/apache/struts2/interceptor/PrincipalProxy.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.security.Principal; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java index 70927a4680..d1a21964b0 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/RequestAware.java b/core/src/main/java/org/apache/struts2/interceptor/RequestAware.java index 2a13300b81..8a7e87072d 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/RequestAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/RequestAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java index 9bb0c1675b..f5d6c2c058 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java index 3bdad8ea92..b83c7e91de 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/ServletConfigInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ServletConfigInterceptor.java index bd93823cde..813a87d917 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ServletConfigInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ServletConfigInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; @@ -35,7 +32,6 @@ import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/interceptor/ServletRequestAware.java b/core/src/main/java/org/apache/struts2/interceptor/ServletRequestAware.java index 814864c4c0..20a6039dd9 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ServletRequestAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ServletRequestAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import javax.servlet.http.HttpServletRequest; - /** *

* All Actions that want to have access to the servlet request object must implement this interface. diff --git a/core/src/main/java/org/apache/struts2/interceptor/ServletResponseAware.java b/core/src/main/java/org/apache/struts2/interceptor/ServletResponseAware.java index 2fa55379dc..e70c1af729 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ServletResponseAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ServletResponseAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import javax.servlet.http.HttpServletResponse; - /** *

* All Actions that want to have access to the servlet response object must implement this interface. diff --git a/core/src/main/java/org/apache/struts2/interceptor/SessionAware.java b/core/src/main/java/org/apache/struts2/interceptor/SessionAware.java index ea101bbfb3..db553889eb 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/SessionAware.java +++ b/core/src/main/java/org/apache/struts2/interceptor/SessionAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import java.util.Map; - /** *

* Actions that want access to the user's HTTP session attributes should implement this interface. diff --git a/core/src/main/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptor.java index aad8d76e0f..bf0350556b 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/StrutsConversionErrorInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,14 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor; import com.opensymphony.xwork2.util.ValueStack; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java index a31a8e90ae..c6859d05ba 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptor.java index 4a6874401d..e08fb07bea 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/TokenSessionStoreInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor; import com.opensymphony.xwork2.ActionContext; @@ -34,7 +31,6 @@ import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java index 2e9efdddf2..7e995f8fe7 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.debugging; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java index 396614b326..bad10b1e38 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java +++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.debugging; import com.opensymphony.xwork2.util.reflection.ReflectionException; diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java index 1902bd9ab6..2636aab3b0 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java +++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.debugging; import java.io.PrintWriter; diff --git a/core/src/main/java/org/apache/struts2/interceptor/servlet/ServletPrincipalProxy.java b/core/src/main/java/org/apache/struts2/interceptor/servlet/ServletPrincipalProxy.java index 59eb9acfdf..5a611b0b39 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/servlet/ServletPrincipalProxy.java +++ b/core/src/main/java/org/apache/struts2/interceptor/servlet/ServletPrincipalProxy.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.servlet; import org.apache.struts2.interceptor.PrincipalProxy; diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java index d0b56aa3ea..9b4e6d7e96 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.validation; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/SkipValidation.java b/core/src/main/java/org/apache/struts2/interceptor/validation/SkipValidation.java index 8ba717c145..a68f86b65b 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/validation/SkipValidation.java +++ b/core/src/main/java/org/apache/struts2/interceptor/validation/SkipValidation.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.interceptor.validation; import static java.lang.annotation.ElementType.METHOD; diff --git a/core/src/main/java/org/apache/struts2/result/HttpHeaderResult.java b/core/src/main/java/org/apache/struts2/result/HttpHeaderResult.java index d6009242de..39395abf01 100644 --- a/core/src/main/java/org/apache/struts2/result/HttpHeaderResult.java +++ b/core/src/main/java/org/apache/struts2/result/HttpHeaderResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionContext; @@ -34,7 +31,6 @@ import java.util.HashMap; import java.util.Map; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/result/PlainTextResult.java b/core/src/main/java/org/apache/struts2/result/PlainTextResult.java index 44d9302244..f2dda715f9 100644 --- a/core/src/main/java/org/apache/struts2/result/PlainTextResult.java +++ b/core/src/main/java/org/apache/struts2/result/PlainTextResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/result/PostbackResult.java b/core/src/main/java/org/apache/struts2/result/PostbackResult.java index e8ec55370d..6ce109ca5c 100644 --- a/core/src/main/java/org/apache/struts2/result/PostbackResult.java +++ b/core/src/main/java/org/apache/struts2/result/PostbackResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/core/src/main/java/org/apache/struts2/result/Redirectable.java b/core/src/main/java/org/apache/struts2/result/Redirectable.java index 54fdf65812..c5293de545 100644 --- a/core/src/main/java/org/apache/struts2/result/Redirectable.java +++ b/core/src/main/java/org/apache/struts2/result/Redirectable.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.result; /** diff --git a/core/src/main/java/org/apache/struts2/result/ServletActionRedirectResult.java b/core/src/main/java/org/apache/struts2/result/ServletActionRedirectResult.java index 5a4528e03a..b5356ad154 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletActionRedirectResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletActionRedirectResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java index 3322c640a0..136e700cdd 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionInvocation; @@ -38,7 +35,6 @@ import javax.servlet.jsp.PageContext; import java.util.Map; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java b/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java index 552ee049ee..90e94c9759 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/result/StreamResult.java b/core/src/main/java/org/apache/struts2/result/StreamResult.java index b20ee5fba5..554b1a9618 100644 --- a/core/src/main/java/org/apache/struts2/result/StreamResult.java +++ b/core/src/main/java/org/apache/struts2/result/StreamResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionInvocation; diff --git a/core/src/main/java/org/apache/struts2/result/StrutsResultSupport.java b/core/src/main/java/org/apache/struts2/result/StrutsResultSupport.java index bba5c848a4..a21e095d82 100644 --- a/core/src/main/java/org/apache/struts2/result/StrutsResultSupport.java +++ b/core/src/main/java/org/apache/struts2/result/StrutsResultSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionInvocation; @@ -33,7 +30,6 @@ import java.util.ArrayList; import java.util.Collection; - /** * *

diff --git a/core/src/main/java/org/apache/struts2/result/VelocityResult.java b/core/src/main/java/org/apache/struts2/result/VelocityResult.java index ebd6900f3d..b552fb7df5 100644 --- a/core/src/main/java/org/apache/struts2/result/VelocityResult.java +++ b/core/src/main/java/org/apache/struts2/result/VelocityResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.result; import com.opensymphony.xwork2.ActionContext; @@ -44,7 +41,6 @@ import java.io.OutputStreamWriter; import java.io.Writer; - /** * * diff --git a/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java b/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java index efedcc07c0..7c7cea396d 100644 --- a/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java +++ b/core/src/main/java/org/apache/struts2/util/AppendIteratorFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.util.ArrayList; @@ -27,7 +24,6 @@ import com.opensymphony.xwork2.Action; - /** * A bean that takes several iterators and outputs them in sequence * diff --git a/core/src/main/java/org/apache/struts2/util/AttributeMap.java b/core/src/main/java/org/apache/struts2/util/AttributeMap.java index 4e95cb57fb..a6eebb4db7 100644 --- a/core/src/main/java/org/apache/struts2/util/AttributeMap.java +++ b/core/src/main/java/org/apache/struts2/util/AttributeMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import org.apache.struts2.ServletActionContext; @@ -29,7 +26,6 @@ import java.util.Map; import java.util.Set; - /** * A Map that holds 4 levels of scope. *

diff --git a/core/src/main/java/org/apache/struts2/util/ComponentUtils.java b/core/src/main/java/org/apache/struts2/util/ComponentUtils.java index 054038f00e..56abbe9d55 100644 --- a/core/src/main/java/org/apache/struts2/util/ComponentUtils.java +++ b/core/src/main/java/org/apache/struts2/util/ComponentUtils.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.util; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/util/ContainUtil.java b/core/src/main/java/org/apache/struts2/util/ContainUtil.java index 1cc0bce02c..d28f690de5 100644 --- a/core/src/main/java/org/apache/struts2/util/ContainUtil.java +++ b/core/src/main/java/org/apache/struts2/util/ContainUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,11 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.lang.reflect.Array; import java.util.Map; - /** * ContainUtil will check if object 1 contains object 2. * Object 1 may be an Object, array, Collection, or a Map diff --git a/core/src/main/java/org/apache/struts2/util/ContentTypeMatcher.java b/core/src/main/java/org/apache/struts2/util/ContentTypeMatcher.java index 0e21b7a705..15c4362d79 100644 --- a/core/src/main/java/org/apache/struts2/util/ContentTypeMatcher.java +++ b/core/src/main/java/org/apache/struts2/util/ContentTypeMatcher.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.util; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/util/Counter.java b/core/src/main/java/org/apache/struts2/util/Counter.java index 08bec42086..4bb17d2fc5 100644 --- a/core/src/main/java/org/apache/struts2/util/Counter.java +++ b/core/src/main/java/org/apache/struts2/util/Counter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.io.Serializable; - /** * A bean that can be used to keep track of a counter. *

diff --git a/core/src/main/java/org/apache/struts2/util/DateFormatter.java b/core/src/main/java/org/apache/struts2/util/DateFormatter.java index 61d213b3d5..ad587f9ca3 100644 --- a/core/src/main/java/org/apache/struts2/util/DateFormatter.java +++ b/core/src/main/java/org/apache/struts2/util/DateFormatter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.text.DateFormat; @@ -26,10 +23,10 @@ import java.text.SimpleDateFormat; import java.util.Date; - /** * A bean that can be used to format dates * + * FIXME: remove or use to format Dates */ public class DateFormatter { diff --git a/core/src/main/java/org/apache/struts2/util/DefaultContentTypeMatcher.java b/core/src/main/java/org/apache/struts2/util/DefaultContentTypeMatcher.java index 6160675a8e..1975ee88eb 100644 --- a/core/src/main/java/org/apache/struts2/util/DefaultContentTypeMatcher.java +++ b/core/src/main/java/org/apache/struts2/util/DefaultContentTypeMatcher.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.util; import com.opensymphony.xwork2.util.PatternMatcher; diff --git a/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java b/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java index 8645df784f..fd75c46a13 100644 --- a/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java +++ b/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import javax.servlet.jsp.JspWriter; @@ -31,7 +28,6 @@ import java.nio.charset.CodingErrorAction; import java.util.LinkedList; - /** * A speedy implementation of ByteArrayOutputStream. It's not synchronized, and it * does not copy buffers when it's expanded. There's also no copying of the internal buffer diff --git a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java index 670fa4a3d6..5f1ad483d5 100644 --- a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java +++ b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.ActionContext; @@ -29,7 +26,6 @@ import java.util.HashMap; import java.util.Map; - /** * InvocationSessionStore * diff --git a/core/src/main/java/org/apache/struts2/util/IteratorFilterSupport.java b/core/src/main/java/org/apache/struts2/util/IteratorFilterSupport.java index 66aa5dee91..2e2c3ab598 100644 --- a/core/src/main/java/org/apache/struts2/util/IteratorFilterSupport.java +++ b/core/src/main/java/org/apache/struts2/util/IteratorFilterSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,11 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.util.Enumeration; import java.util.Iterator; - /** * A base class for iterator filters * diff --git a/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java b/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java index f21115414a..5c2431791e 100644 --- a/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java +++ b/core/src/main/java/org/apache/struts2/util/IteratorGenerator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.Action; @@ -30,7 +27,6 @@ import java.util.List; import java.util.StringTokenizer; - /** * A bean that generates an iterator filled with a given object depending on the count, * separator and converter defined. It is being used by IteratorGeneratorTag. diff --git a/core/src/main/java/org/apache/struts2/util/ListEntry.java b/core/src/main/java/org/apache/struts2/util/ListEntry.java index 0c7bc1ba47..59c6bd40d7 100644 --- a/core/src/main/java/org/apache/struts2/util/ListEntry.java +++ b/core/src/main/java/org/apache/struts2/util/ListEntry.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; /** diff --git a/core/src/main/java/org/apache/struts2/util/MakeIterator.java b/core/src/main/java/org/apache/struts2/util/MakeIterator.java index 8261c64604..131d2f8b45 100644 --- a/core/src/main/java/org/apache/struts2/util/MakeIterator.java +++ b/core/src/main/java/org/apache/struts2/util/MakeIterator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import org.apache.struts2.util.IteratorFilterSupport.EnumerationIterator; @@ -30,7 +27,6 @@ import java.util.Iterator; import java.util.Map; - /** * MakeIterator. */ diff --git a/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java b/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java index e1fd13ec79..20ee68a90b 100644 --- a/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java +++ b/core/src/main/java/org/apache/struts2/util/MergeIteratorFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.util.ArrayList; @@ -27,7 +24,6 @@ import com.opensymphony.xwork2.Action; - /** * A bean that takes several iterators and outputs the merge of them. Used by * MergeIteratorTag. diff --git a/core/src/main/java/org/apache/struts2/util/ObjectFactoryDestroyable.java b/core/src/main/java/org/apache/struts2/util/ObjectFactoryDestroyable.java index 603ba60cb8..036ede73a6 100644 --- a/core/src/main/java/org/apache/struts2/util/ObjectFactoryDestroyable.java +++ b/core/src/main/java/org/apache/struts2/util/ObjectFactoryDestroyable.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; /** diff --git a/core/src/main/java/org/apache/struts2/util/PrefixTrie.java b/core/src/main/java/org/apache/struts2/util/PrefixTrie.java index afed5e77b3..d5d5000789 100644 --- a/core/src/main/java/org/apache/struts2/util/PrefixTrie.java +++ b/core/src/main/java/org/apache/struts2/util/PrefixTrie.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; /** diff --git a/core/src/main/java/org/apache/struts2/util/RegexPatternMatcher.java b/core/src/main/java/org/apache/struts2/util/RegexPatternMatcher.java index 59153cb521..ee5e12784b 100644 --- a/core/src/main/java/org/apache/struts2/util/RegexPatternMatcher.java +++ b/core/src/main/java/org/apache/struts2/util/RegexPatternMatcher.java @@ -1,6 +1,4 @@ /* - * $Id: ServletContextAware.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/util/RegexPatternMatcherExpression.java b/core/src/main/java/org/apache/struts2/util/RegexPatternMatcherExpression.java index b0399ab34a..b35985ccf1 100644 --- a/core/src/main/java/org/apache/struts2/util/RegexPatternMatcherExpression.java +++ b/core/src/main/java/org/apache/struts2/util/RegexPatternMatcherExpression.java @@ -1,6 +1,4 @@ /* - * $Id: ServletContextAware.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 diff --git a/core/src/main/java/org/apache/struts2/util/ServletContextAware.java b/core/src/main/java/org/apache/struts2/util/ServletContextAware.java index 23f065465d..7fed260c64 100644 --- a/core/src/main/java/org/apache/struts2/util/ServletContextAware.java +++ b/core/src/main/java/org/apache/struts2/util/ServletContextAware.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,12 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import javax.servlet.ServletContext; - /** * For components that have a dependence on the Servlet context. */ diff --git a/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java b/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java index b5850ff298..16f6cb5e33 100644 --- a/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java +++ b/core/src/main/java/org/apache/struts2/util/SortIteratorFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.Action; @@ -27,7 +24,6 @@ import java.util.*; - /** * A bean that takes a source and comparator then attempt to sort the source * utilizing the comparator. It is being used in SortIteratorTag. diff --git a/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java b/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java index f8994d12cb..39cf04537c 100644 --- a/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java +++ b/core/src/main/java/org/apache/struts2/util/StrutsTestCaseHelper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/util/StrutsTypeConverter.java b/core/src/main/java/org/apache/struts2/util/StrutsTypeConverter.java index 8f31f08157..d9c887ba78 100644 --- a/core/src/main/java/org/apache/struts2/util/StrutsTypeConverter.java +++ b/core/src/main/java/org/apache/struts2/util/StrutsTypeConverter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/util/StrutsUtil.java b/core/src/main/java/org/apache/struts2/util/StrutsUtil.java index aee854fa60..647a743520 100644 --- a/core/src/main/java/org/apache/struts2/util/StrutsUtil.java +++ b/core/src/main/java/org/apache/struts2/util/StrutsUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java b/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java index cb894d4b5d..c03b8d5a55 100644 --- a/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java +++ b/core/src/main/java/org/apache/struts2/util/SubsetIteratorFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.Action; @@ -29,10 +26,8 @@ import java.util.Iterator; import java.util.List; - /** * A bean that takes an iterator and outputs a subset of it. - * */ public class SubsetIteratorFilter extends IteratorFilterSupport implements Iterator, Action { diff --git a/core/src/main/java/org/apache/struts2/util/TabbedPane.java b/core/src/main/java/org/apache/struts2/util/TabbedPane.java index a330659104..ea3d88c447 100644 --- a/core/src/main/java/org/apache/struts2/util/TabbedPane.java +++ b/core/src/main/java/org/apache/struts2/util/TabbedPane.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,15 +16,14 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.util.Vector; - /** * A bean that helps implement a tabbed pane * + * FIXME: use it remove */ public class TabbedPane { diff --git a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java index e66268d8f5..5200844c1f 100644 --- a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java +++ b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.TextProvider; diff --git a/core/src/main/java/org/apache/struts2/util/Timer.java b/core/src/main/java/org/apache/struts2/util/Timer.java index 0431410bda..0357f633f9 100644 --- a/core/src/main/java/org/apache/struts2/util/Timer.java +++ b/core/src/main/java/org/apache/struts2/util/Timer.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; - /** * A bean that can be used to time execution of pages * + * FIXME: remove? */ public class Timer { diff --git a/core/src/main/java/org/apache/struts2/util/TokenHelper.java b/core/src/main/java/org/apache/struts2/util/TokenHelper.java index 28f42f6376..c03a135141 100644 --- a/core/src/main/java/org/apache/struts2/util/TokenHelper.java +++ b/core/src/main/java/org/apache/struts2/util/TokenHelper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/util/URLBean.java b/core/src/main/java/org/apache/struts2/util/URLBean.java index 232c73e387..c5cf6fbed0 100644 --- a/core/src/main/java/org/apache/struts2/util/URLBean.java +++ b/core/src/main/java/org/apache/struts2/util/URLBean.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import org.apache.struts2.ServletActionContext; @@ -30,10 +27,10 @@ import java.util.HashMap; import java.util.Map; - /** * A bean that can generate a URL. * + * FIXME: remove? */ public class URLBean { diff --git a/core/src/main/java/org/apache/struts2/util/URLDecoderUtil.java b/core/src/main/java/org/apache/struts2/util/URLDecoderUtil.java index 3c61d1ec41..04f58e1570 100644 --- a/core/src/main/java/org/apache/struts2/util/URLDecoderUtil.java +++ b/core/src/main/java/org/apache/struts2/util/URLDecoderUtil.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.util; import org.apache.struts2.util.tomcat.buf.UDecoder; diff --git a/core/src/main/java/org/apache/struts2/util/VelocityStrutsUtil.java b/core/src/main/java/org/apache/struts2/util/VelocityStrutsUtil.java index 155ecbdb55..9d53964dfa 100644 --- a/core/src/main/java/org/apache/struts2/util/VelocityStrutsUtil.java +++ b/core/src/main/java/org/apache/struts2/util/VelocityStrutsUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.util; import java.io.CharArrayWriter; @@ -35,7 +32,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * Struts velocity related util. * diff --git a/core/src/main/java/org/apache/struts2/util/fs/JBossFileManager.java b/core/src/main/java/org/apache/struts2/util/fs/JBossFileManager.java index fb55520aab..b3a19a79fc 100644 --- a/core/src/main/java/org/apache/struts2/util/fs/JBossFileManager.java +++ b/core/src/main/java/org/apache/struts2/util/fs/JBossFileManager.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.util.fs; import com.opensymphony.xwork2.util.fs.DefaultFileManager; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/Ascii.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/Ascii.java index 1b0ccb6c00..13be1ef6d7 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/Ascii.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/Ascii.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/B2CConverter.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/B2CConverter.java index a3fc6d11fe..00581cb5c0 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/B2CConverter.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/B2CConverter.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/ByteChunk.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/ByteChunk.java index aff247f0e1..49cb3cde41 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/ByteChunk.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/ByteChunk.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/CharChunk.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/CharChunk.java index 527707aac9..c612abe49a 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/CharChunk.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/CharChunk.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/HexUtils.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/HexUtils.java index 0b9a116463..4616752761 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/HexUtils.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/HexUtils.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/MessageBytes.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/MessageBytes.java index df072847fe..db7ab8a71b 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/MessageBytes.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/MessageBytes.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/StringCache.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/StringCache.java index f982b7d452..d568ea5fa9 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/StringCache.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/StringCache.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/UDecoder.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/UDecoder.java index 7f9beec9fd..1719986b28 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/UDecoder.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/UDecoder.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/util/tomcat/buf/Utf8Decoder.java b/core/src/main/java/org/apache/struts2/util/tomcat/buf/Utf8Decoder.java index b08b236902..bca4de8d64 100644 --- a/core/src/main/java/org/apache/struts2/util/tomcat/buf/Utf8Decoder.java +++ b/core/src/main/java/org/apache/struts2/util/tomcat/buf/Utf8Decoder.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.util.tomcat.buf; diff --git a/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java b/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java index 3628eb9703..5a01df3c47 100644 --- a/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java +++ b/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views; import java.util.Arrays; diff --git a/core/src/main/java/org/apache/struts2/views/JspSupportServlet.java b/core/src/main/java/org/apache/struts2/views/JspSupportServlet.java index f51957071c..1848791d3a 100644 --- a/core/src/main/java/org/apache/struts2/views/JspSupportServlet.java +++ b/core/src/main/java/org/apache/struts2/views/JspSupportServlet.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views; import javax.servlet.ServletConfig; diff --git a/core/src/main/java/org/apache/struts2/views/TagLibraryDirectiveProvider.java b/core/src/main/java/org/apache/struts2/views/TagLibraryDirectiveProvider.java index 43e839c145..4df60a0e1c 100644 --- a/core/src/main/java/org/apache/struts2/views/TagLibraryDirectiveProvider.java +++ b/core/src/main/java/org/apache/struts2/views/TagLibraryDirectiveProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views; import java.util.List; diff --git a/core/src/main/java/org/apache/struts2/views/TagLibraryModelProvider.java b/core/src/main/java/org/apache/struts2/views/TagLibraryModelProvider.java index 228b35826b..0aae044004 100644 --- a/core/src/main/java/org/apache/struts2/views/TagLibraryModelProvider.java +++ b/core/src/main/java/org/apache/struts2/views/TagLibraryModelProvider.java @@ -1,6 +1,4 @@ /* - * $Id: TagLibrary.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTag.java b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTag.java index f5077576c6..bfbd891e68 100644 --- a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTag.java +++ b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagAttribute.java b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagAttribute.java index 110aaa1d97..e301edadbe 100644 --- a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagAttribute.java +++ b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagAttribute.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.annotations; import java.lang.annotation.ElementType; diff --git a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java index b6d1c19e67..8409ab3d8f 100644 --- a/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java +++ b/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.annotations; import java.lang.annotation.ElementType; @@ -27,7 +24,9 @@ import java.lang.annotation.Target; /** - * Marks a class as the top class in the class hierarchy scanned for tag annotations + * Marks a class as the top class in the class hierarchy scanned for tag annotations + * + * FIXME: use it or remove */ @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java index 22a66e5441..f6800d9e26 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker; import com.opensymphony.xwork2.FileManager; @@ -54,7 +51,6 @@ import java.text.SimpleDateFormat; import java.util.*; - /** *

* Static Configuration Manager for the FreemarkerResult's configuration diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java index c9130aceb3..5bdb2e95b4 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerResult.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerThemeTemplateLoader.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerThemeTemplateLoader.java index f19118ce03..e25143d63b 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerThemeTemplateLoader.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerThemeTemplateLoader.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.views.freemarker; import java.io.IOException; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/ScopesHashModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/ScopesHashModel.java index 98cec4b7f5..4415666703 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/ScopesHashModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/ScopesHashModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker; import com.opensymphony.xwork2.util.ValueStack; @@ -33,7 +30,6 @@ import java.util.HashMap; import java.util.Map; - /** *

* Simple Hash model that also searches other scopes. diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java index c9e7eed415..3f94f968f2 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsBeanWrapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker; import java.util.Map; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsClassTemplateLoader.java b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsClassTemplateLoader.java index 2810d9fdef..559ba798b1 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/StrutsClassTemplateLoader.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/StrutsClassTemplateLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker; import java.net.URL; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionErrorModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionErrorModel.java index d74acee26d..25596ab20d 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionErrorModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionErrorModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionMessageModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionMessageModel.java index 7e7dcef4aa..2af404faf4 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionMessageModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionMessageModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionModel.java index e66c2a15e6..2e2663c215 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ActionModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/AnchorModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/AnchorModel.java index 18df7e27a3..f1011282e2 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/AnchorModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/AnchorModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/BeanModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/BeanModel.java index 45afafc260..8c88fb4758 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/BeanModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/BeanModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CallbackWriter.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CallbackWriter.java index 1d46e393e6..133749772d 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CallbackWriter.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CallbackWriter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import java.io.IOException; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxListModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxListModel.java index 64480a58ce..9dbac7eb15 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxListModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxListModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxModel.java index e8b34e0e1b..1ed6056ae4 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/CheckboxModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComboBoxModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComboBoxModel.java index bf68d6fce3..e188146a41 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComboBoxModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComboBoxModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComponentModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComponentModel.java index 0ab10988eb..7475c2295b 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComponentModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ComponentModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/DateModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/DateModel.java index 39c584793f..dd0a7a55b7 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/DateModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/DateModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/DoubleSelectModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/DoubleSelectModel.java index 12bdd25e23..11102ceb14 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/DoubleSelectModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/DoubleSelectModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseIfModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseIfModel.java index 60eec8523d..e6684ba3bf 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseIfModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseIfModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseModel.java index ee10fc6b70..64163d5610 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ElseModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FieldErrorModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FieldErrorModel.java index 7139770025..7f8b230f03 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FieldErrorModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FieldErrorModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FileModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FileModel.java index 9fb49913a9..4d3be22581 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FileModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FileModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FormModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FormModel.java index d28ec16cb7..abc23e1862 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/FormModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/FormModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/HeadModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/HeadModel.java index efa3f461e5..d997334774 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/HeadModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/HeadModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/HiddenModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/HiddenModel.java index ce9d05fbc5..5a182e0010 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/HiddenModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/HiddenModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/I18nModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/I18nModel.java index 84030fcbd3..a35bc9e60f 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/I18nModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/I18nModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IfModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IfModel.java index 4fca3c2f49..6d5c3269d9 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IfModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IfModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IncludeModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IncludeModel.java index e73a3b3f58..847f26fc38 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IncludeModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IncludeModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/InputTransferSelectModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/InputTransferSelectModel.java index ee3ae40471..3c7123533b 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/InputTransferSelectModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/InputTransferSelectModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IteratorModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IteratorModel.java index 12d2077ff8..ac8de25852 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/IteratorModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/IteratorModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/LabelModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/LabelModel.java index 3fc93c4634..a41bbc6933 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/LabelModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/LabelModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptGroupModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptGroupModel.java index 8143ad8a3e..7c6035ff8f 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptGroupModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptGroupModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptionTransferSelectModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptionTransferSelectModel.java index 383f33cccb..53570e332f 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptionTransferSelectModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/OptionTransferSelectModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ParamModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ParamModel.java index 105dd0af93..90f977e1d8 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ParamModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ParamModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PasswordModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PasswordModel.java index 9ed125d5fd..881459f39e 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PasswordModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PasswordModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PropertyModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PropertyModel.java index 8bd30ed0ff..d6595147c3 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PropertyModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PropertyModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PushModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PushModel.java index 95412f1df9..ed29164608 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/PushModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/PushModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/RadioModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/RadioModel.java index ce4fa79df2..c38ae82b93 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/RadioModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/RadioModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ResetModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ResetModel.java index 77a09c9be8..09ca5b2377 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/ResetModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/ResetModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SelectModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SelectModel.java index 6b40667028..c607f77505 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SelectModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SelectModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SetModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SetModel.java index ea44fe3b5c..2ab73599ab 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SetModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SetModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java index 89960e537e..99c4686bc3 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SubmitModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SubmitModel.java index 57f58a4f49..5cd53d8499 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/SubmitModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/SubmitModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TagModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TagModel.java index c174edd692..5d307a2bf3 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TagModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TagModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextAreaModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextAreaModel.java index f1c0010878..73c2edc052 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextAreaModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextAreaModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextFieldModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextFieldModel.java index c3eafa5245..5c9e087680 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextFieldModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextFieldModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextModel.java index d2ae425090..376f7116fe 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TextModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TokenModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TokenModel.java index 73fa036a6e..4ae87f3392 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/TokenModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/TokenModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/URLModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/URLModel.java index 76575bf235..9b3c2f4cc6 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/URLModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/URLModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/tags/UpDownSelectModel.java b/core/src/main/java/org/apache/struts2/views/freemarker/tags/UpDownSelectModel.java index 3e1408687c..bc9ac210de 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/tags/UpDownSelectModel.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/tags/UpDownSelectModel.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.freemarker.tags; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ActionTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ActionTag.java index 3b23d0ee73..948808bb11 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ActionTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ActionTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/BeanTag.java b/core/src/main/java/org/apache/struts2/views/jsp/BeanTag.java index f63058084a..7b2c3a5871 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/BeanTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/BeanTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -31,7 +28,6 @@ import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; - /** * @see Bean */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ComponentTagSupport.java b/core/src/main/java/org/apache/struts2/views/jsp/ComponentTagSupport.java index 03bdc7f81a..f39d5817df 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ComponentTagSupport.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ComponentTagSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ContextBeanTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ContextBeanTag.java index 42ec9f6835..470fae5e0f 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ContextBeanTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ContextBeanTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import org.apache.struts2.components.ContextBean; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/DateTag.java b/core/src/main/java/org/apache/struts2/views/jsp/DateTag.java index 9f2ea3f884..73b62f1a7a 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/DateTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/DateTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ElseIfTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ElseIfTag.java index e9229e5cad..999f8c6caa 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ElseIfTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ElseIfTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ElseTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ElseTag.java index ca2aec9804..f15bab78b6 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ElseTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ElseTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Else */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/I18nTag.java b/core/src/main/java/org/apache/struts2/views/jsp/I18nTag.java index da69da0945..de1a1ee163 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/I18nTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/I18nTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see I18n */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/IfTag.java b/core/src/main/java/org/apache/struts2/views/jsp/IfTag.java index c54edc29cd..4f4e56effb 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/IfTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/IfTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see If */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/IncludeTag.java b/core/src/main/java/org/apache/struts2/views/jsp/IncludeTag.java index c5a8d47497..1b811bbac5 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/IncludeTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/IncludeTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Include */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/IteratorStatus.java b/core/src/main/java/org/apache/struts2/views/jsp/IteratorStatus.java index 7b85a82cd2..13022f856a 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/IteratorStatus.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/IteratorStatus.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,10 +16,8 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; - /** * The iterator tag can export an IteratorStatus object so that * one can get information about the status of the iteration, such as: diff --git a/core/src/main/java/org/apache/struts2/views/jsp/IteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/IteratorTag.java index 01780d492f..397257ea26 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/IteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/IteratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/NumberTag.java b/core/src/main/java/org/apache/struts2/views/jsp/NumberTag.java index 965b612b27..a74f2aa27d 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/NumberTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/NumberTag.java @@ -1,8 +1,4 @@ -package org.apache.struts2.views.jsp; - /* - * $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 @@ -20,6 +16,7 @@ * specific language governing permissions and limitations * under the License. */ +package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.util.ValueStack; import org.apache.struts2.components.Component; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ParamTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ParamTag.java index d3b1374d1f..3f1fe60151 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ParamTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ParamTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java index 560bc7b91f..12abe6bbb1 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Property */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/PushTag.java b/core/src/main/java/org/apache/struts2/views/jsp/PushTag.java index 078ed58f85..1a48b767da 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/PushTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/PushTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Push */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/SetTag.java b/core/src/main/java/org/apache/struts2/views/jsp/SetTag.java index 3ff152f134..161ed259a8 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/SetTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/SetTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Set */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java b/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java index 484c317ca4..01921aab0e 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import java.io.PrintWriter; @@ -31,7 +28,6 @@ import com.opensymphony.xwork2.util.TextParseUtil; import com.opensymphony.xwork2.util.ValueStack; - /** * Contains common functonalities for Struts JSP Tags. * diff --git a/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java b/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java index 1a14d662f4..ea212ac655 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.ActionContext; @@ -42,9 +39,6 @@ import javax.servlet.jsp.PageContext; import java.util.Map; - -/** - */ public class TagUtils { public static ValueStack getStack(PageContext pageContext) { diff --git a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java index 8361f65a57..6407954fae 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Text */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java b/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java index 8d5ddf498d..baf632340d 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see URL */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/AppendIteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/AppendIteratorTag.java index ca567edb34..e3f754da8a 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/AppendIteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/AppendIteratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.iterator; import javax.servlet.http.HttpServletRequest; @@ -30,7 +27,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * Append a list of iterators. The values of the iterators will be merged * into one iterator. diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java index f6702113c1..6255ea98af 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.iterator; import org.apache.logging.log4j.LogManager; @@ -31,7 +28,6 @@ import javax.servlet.jsp.JspException; - /** * * NOTE: JSP-TAG diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/MergeIteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/MergeIteratorTag.java index 99bd65726c..3cd7fa4f87 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/MergeIteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/MergeIteratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.iterator; import javax.servlet.http.HttpServletRequest; @@ -30,7 +27,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * Append a list of iterators. The values of the iterators will be merged * into one iterator. diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java index 091fb15ad9..a268b7fcff 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.iterator; import java.util.Comparator; @@ -31,7 +28,6 @@ import org.apache.struts2.util.SortIteratorFilter; import org.apache.struts2.views.jsp.StrutsBodyTagSupport; - /** * * diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java index 6c2ff1e21f..b1b6dc5923 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.iterator; import org.apache.logging.log4j.LogManager; @@ -31,7 +28,6 @@ import javax.servlet.jsp.JspException; - /** * * NOTE: JSP-TAG diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractClosingTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractClosingTag.java index fdce4a156d..8fc0834eb0 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractClosingTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractClosingTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.struts2.components.ClosingUIBean; -/** - */ public abstract class AbstractClosingTag extends AbstractUITag { protected String openTemplate; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractDoubleListTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractDoubleListTag.java index 3ef01c8aa6..83bbdb7f0a 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractDoubleListTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractDoubleListTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,14 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.struts2.components.DoubleListUIBean; - -/** - */ public abstract class AbstractDoubleListTag extends AbstractRequiredListTag { protected String doubleList; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java index 9b96f4ad18..b357bcbba5 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractListTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,13 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.struts2.components.ListUIBean; -/** - */ public abstract class AbstractListTag extends AbstractUITag { protected String list; protected String listKey; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractRequiredListTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractRequiredListTag.java index 08e89af150..fd6bb84e10 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractRequiredListTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractRequiredListTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,14 +16,10 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; - import org.apache.struts2.components.ListUIBean; -/** - */ public abstract class AbstractRequiredListTag extends AbstractListTag { protected void populateParams() { diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java index 73cddc9c88..3e4b8db420 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.commons.lang3.ObjectUtils; @@ -31,7 +28,6 @@ import java.util.HashMap; import java.util.Map; - /** * Abstract base class for all UI tags. */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITagBeanInfo.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITagBeanInfo.java index c521c99c51..626765f2f8 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITagBeanInfo.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITagBeanInfo.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.logging.log4j.LogManager; @@ -34,6 +31,8 @@ /** * Describes properties supported by the AbstractUITag - base class for all UI tags * This bases on HtmlTagSupportBeanInfo class from StripesFramework - thanks! + * + * FIXME: is it used? */ public class AbstractUITagBeanInfo extends SimpleBeanInfo { diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionErrorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionErrorTag.java index c09caaa6d6..e1b7ef63ba 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionErrorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionErrorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionMessageTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionMessageTag.java index 5e01c9c134..439f9550e2 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionMessageTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/ActionMessageTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java index 3257cae673..55672a9e34 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import com.opensymphony.xwork2.util.ValueStack; @@ -29,9 +26,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -/** - * @see Anchor - */ public class AnchorTag extends AbstractClosingTag { private static final long serialVersionUID = -1034616578492431113L; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxListTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxListTag.java index 9debe52c0f..40a6ac2f57 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxListTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxListTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see CheckboxList */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java index ccf31bb2b0..bd2d0597cd 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/CheckboxTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Checkbox */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/ComboBoxTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/ComboBoxTag.java index c4f04d9774..877ff03e4d 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/ComboBoxTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/ComboBoxTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/ComponentTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/ComponentTag.java index 5c3717391c..efbd813adb 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/ComponentTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/ComponentTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTextFieldTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTextFieldTag.java index 3b3a6735bc..b4d190757f 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTextFieldTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTextFieldTag.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/DebugTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/DebugTag.java index 90019d138d..f2a5d09657 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/DebugTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/DebugTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/DoubleSelectTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/DoubleSelectTag.java index 21428253bc..1241a67d82 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/DoubleSelectTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/DoubleSelectTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/FieldErrorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/FieldErrorTag.java index cf74c9d7dd..b5a8344847 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/FieldErrorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/FieldErrorTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/FileTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/FileTag.java index efe045334e..bbee234e86 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/FileTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/FileTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see File */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/FormTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/FormTag.java index d887a0b6a1..b7ded8d9c2 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/FormTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/FormTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Form */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/HeadTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/HeadTag.java index f2ad9ea72e..49a3b8fa25 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/HeadTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/HeadTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/HiddenTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/HiddenTag.java index 75894de679..7b8b396187 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/HiddenTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/HiddenTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Hidden */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/InputTransferSelectTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/InputTransferSelectTag.java index e6c692e81c..da8cb2da19 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/InputTransferSelectTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/InputTransferSelectTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import org.apache.struts2.components.Component; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/LabelTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/LabelTag.java index 31682f7436..19611a0fe0 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/LabelTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/LabelTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Label */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java index e49314d983..952575503f 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import ognl.Ognl; @@ -27,8 +24,8 @@ import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.ognl.OgnlUtil; - /** + * FIXME: remove? */ public class OgnlTool { @@ -42,9 +39,6 @@ public void setOgnlUtil(OgnlUtil ognlUtil) { this.ognlUtil = ognlUtil; } - - - public Object findValue(String expr, Object context) { try { return Ognl.getValue(ognlUtil.compile(expr), context); diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/OptGroupTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/OptGroupTag.java index 0de95f848f..da2c1dcd43 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/OptGroupTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/OptGroupTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -30,9 +27,6 @@ import com.opensymphony.xwork2.util.ValueStack; -/** - * - */ public class OptGroupTag extends ComponentTagSupport { private static final long serialVersionUID = 7367401003498678762L; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/OptionTransferSelectTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/OptionTransferSelectTag.java index 850ac67c9d..73aabc38b2 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/OptionTransferSelectTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/OptionTransferSelectTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/PasswordTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/PasswordTag.java index 455dd1d7ed..cf3f73d90c 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/PasswordTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/PasswordTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Password */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/RadioTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/RadioTag.java index 818d9774d1..96602979c3 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/RadioTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/RadioTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Radio */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/ResetTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/ResetTag.java index e266d6ee70..339b0ec08a 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/ResetTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/ResetTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/SelectTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/SelectTag.java index b45103a33c..cbd71e67e2 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/SelectTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/SelectTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Select */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java index bdb7b3b446..71425dc858 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/TextFieldTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/TextFieldTag.java index 009046172f..4f7d2de096 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/TextFieldTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/TextFieldTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import com.opensymphony.xwork2.util.ValueStack; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/TextareaTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/TextareaTag.java index 2ae6566afd..1f77f1def2 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/TextareaTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/TextareaTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see TextArea */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/TokenTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/TokenTag.java index 9b3a5af0af..1f94682696 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/TokenTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/TokenTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * @see Token */ diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/UpDownSelectTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/UpDownSelectTag.java index 186a18d523..925a6223ca 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/UpDownSelectTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/UpDownSelectTag.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jsp.ui; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/util/ContextUtil.java b/core/src/main/java/org/apache/struts2/views/util/ContextUtil.java index 3de8f02f6e..e530fa8615 100644 --- a/core/src/main/java/org/apache/struts2/views/util/ContextUtil.java +++ b/core/src/main/java/org/apache/struts2/views/util/ContextUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.util; import java.util.HashMap; diff --git a/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java b/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java index 0fb86d9bbb..5191c2ff8f 100644 --- a/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java +++ b/core/src/main/java/org/apache/struts2/views/util/DefaultUrlHelper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.util; import java.io.UnsupportedEncodingException; diff --git a/core/src/main/java/org/apache/struts2/views/util/ResourceUtil.java b/core/src/main/java/org/apache/struts2/views/util/ResourceUtil.java index ec5109c351..52cb3ba318 100644 --- a/core/src/main/java/org/apache/struts2/views/util/ResourceUtil.java +++ b/core/src/main/java/org/apache/struts2/views/util/ResourceUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.util; import org.apache.struts2.RequestUtils; diff --git a/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java b/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java index 47ea188c7a..b997a58ef3 100644 --- a/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java +++ b/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.views.util; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/StrutsResourceLoader.java b/core/src/main/java/org/apache/struts2/views/velocity/StrutsResourceLoader.java index fac904a37b..0fe0c1c8be 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/StrutsResourceLoader.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/StrutsResourceLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity; import com.opensymphony.xwork2.util.ClassLoaderUtil; @@ -27,10 +24,10 @@ import java.io.InputStream; - /** * Loads resource from the Thread's context ClassLoader. * + * FIXME: remove? */ public class StrutsResourceLoader extends ClasspathResourceLoader { diff --git a/core/src/main/java/org/apache/struts2/views/velocity/StrutsVelocityContext.java b/core/src/main/java/org/apache/struts2/views/velocity/StrutsVelocityContext.java index b1bdc4912c..469e570298 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/StrutsVelocityContext.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/StrutsVelocityContext.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,16 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity; import org.apache.velocity.VelocityContext; import com.opensymphony.xwork2.util.ValueStack; - -/** - */ public class StrutsVelocityContext extends VelocityContext { private static final long serialVersionUID = 8497212428904436963L; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/VelocityManager.java b/core/src/main/java/org/apache/struts2/views/velocity/VelocityManager.java index 31a36580ad..f94ac7ef62 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/VelocityManager.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/VelocityManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity; import com.opensymphony.xwork2.ObjectFactory; @@ -52,7 +49,6 @@ import java.io.InputStream; import java.util.*; - /** * Manages the environment for Velocity result types */ diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java index acabef0e0d..1bed8ef89a 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import java.io.IOException; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionDirective.java index 142167e679..17c4785da3 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionErrorDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionErrorDirective.java index 670f02168c..dfba7bd23f 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionErrorDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionErrorDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionMessageDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionMessageDirective.java index 2535a6a351..39434eb65e 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ActionMessageDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ActionMessageDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/AnchorDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/AnchorDirective.java index fc0ac8b723..410b3f8867 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/AnchorDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/AnchorDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/BeanDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/BeanDirective.java index 083e337926..650edaed86 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/BeanDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/BeanDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxDirective.java index e530373361..6b25b81f67 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxListDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxListDirective.java index ed979aedfe..81bd5befe7 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxListDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/CheckBoxListDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ComboBoxDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ComboBoxDirective.java index 5217196761..077ef2ba00 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ComboBoxDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ComboBoxDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ComponentDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ComponentDirective.java index 6837cedcac..f4eadc7716 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ComponentDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ComponentDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/DateDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/DateDirective.java index 78d9f0f71c..f827f677fd 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/DateDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/DateDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/DoubleSelectDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/DoubleSelectDirective.java index b303c701cb..2aa532dc0e 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/DoubleSelectDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/DoubleSelectDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/FieldErrorDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/FieldErrorDirective.java index d1451d9ceb..4a462e8f4c 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/FieldErrorDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/FieldErrorDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/FileDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/FileDirective.java index 3675fc3c24..d2377228eb 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/FileDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/FileDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/FormDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/FormDirective.java index 9d033f27d7..d77e142bc9 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/FormDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/FormDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/HeadDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/HeadDirective.java index 4727fee906..b5002843f7 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/HeadDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/HeadDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/HiddenDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/HiddenDirective.java index 1d3634cd47..c8bd636681 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/HiddenDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/HiddenDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/I18nDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/I18nDirective.java index befc239c4a..705b640f01 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/I18nDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/I18nDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/IncludeDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/IncludeDirective.java index b0972120b0..b58a9a2d1c 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/IncludeDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/IncludeDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/InputTransferSelectDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/InputTransferSelectDirective.java index ef97183055..d0f19f6f6c 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/InputTransferSelectDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/InputTransferSelectDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import org.apache.struts2.components.Component; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/LabelDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/LabelDirective.java index 3926c8e94a..0cb28f1034 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/LabelDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/LabelDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/OptGroupDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/OptGroupDirective.java index 1edfc18fc4..9206cb4f36 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/OptGroupDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/OptGroupDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; @@ -29,7 +26,6 @@ import com.opensymphony.xwork2.util.ValueStack; - /** * OptGroup velocity directive. */ diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/OptionTransferSelectDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/OptionTransferSelectDirective.java index 738d37a9b8..9d02caff78 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/OptionTransferSelectDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/OptionTransferSelectDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ParamDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ParamDirective.java index 72d5a621f7..03b196a230 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ParamDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ParamDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/PasswordDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/PasswordDirective.java index 98225cc9c9..756f169bfa 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/PasswordDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/PasswordDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/PropertyDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/PropertyDirective.java index c86ae618de..ac8997b80c 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/PropertyDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/PropertyDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/PushDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/PushDirective.java index 5f3e24abfe..cc76dc3eea 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/PushDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/PushDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/RadioDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/RadioDirective.java index dded77b79b..08edfd79dc 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/RadioDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/RadioDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/ResetDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/ResetDirective.java index d58cae5082..193c011da6 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/ResetDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/ResetDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/SelectDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/SelectDirective.java index 89739f4094..0e2bd44bbc 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/SelectDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/SelectDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/SetDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/SetDirective.java index c826088a7d..c3115e9231 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/SetDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/SetDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/SubmitDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/SubmitDirective.java index 7da3883119..19d59d1e1d 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/SubmitDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/SubmitDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/TextAreaDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/TextAreaDirective.java index ca734eeb94..86c9f0b844 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/TextAreaDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/TextAreaDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/TextDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/TextDirective.java index df39004ca8..1956f5d09a 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/TextDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/TextDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/TextFieldDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/TextFieldDirective.java index 1bf3693366..76a5d0e722 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/TextFieldDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/TextFieldDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/TokenDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/TokenDirective.java index d2bb7aa684..5173d63efb 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/TokenDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/TokenDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/URLDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/URLDirective.java index a14babf42a..7a435b6ae2 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/URLDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/URLDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/UpDownSelectDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/UpDownSelectDirective.java index d2b89c1261..4a4da682c2 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/UpDownSelectDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/UpDownSelectDirective.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.velocity.components; import javax.servlet.http.HttpServletRequest; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterElement.java b/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterElement.java index e181511b93..e2f136271c 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterElement.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterElement.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import java.util.HashMap; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterNode.java b/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterNode.java index 78fea2d9d3..a9713fa925 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterNode.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/AbstractAdapterNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java b/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java index 159ccf4454..c08d3925cd 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.struts2.StrutsException; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/AdapterNode.java b/core/src/main/java/org/apache/struts2/views/xslt/AdapterNode.java index 4b76cb6f84..81b0cd76f5 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/AdapterNode.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/AdapterNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.w3c.dom.Node; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ArrayAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/ArrayAdapter.java index d55062436e..bd000189aa 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ArrayAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ArrayAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; @@ -28,9 +25,6 @@ import java.util.ArrayList; import java.util.List; - -/** - */ public class ArrayAdapter extends AbstractAdapterElement { private Logger log = LogManager.getLogger(this.getClass()); diff --git a/core/src/main/java/org/apache/struts2/views/xslt/BeanAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/BeanAdapter.java index 41c940a8bd..c625823124 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/BeanAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/BeanAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; @@ -37,7 +34,6 @@ import java.util.List; import java.util.Map; - /** * This class is the most general type of adapter, utilizing reflective introspection to present a DOM view of all of * the public properties of its value. For example, a property returning a JavaBean such as: diff --git a/core/src/main/java/org/apache/struts2/views/xslt/CollectionAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/CollectionAdapter.java index 9301897899..b53118f71f 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/CollectionAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/CollectionAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; @@ -29,9 +26,6 @@ import java.util.Collection; import java.util.List; - -/** - */ public class CollectionAdapter extends AbstractAdapterElement { private Logger log = LogManager.getLogger(this.getClass()); diff --git a/core/src/main/java/org/apache/struts2/views/xslt/MapAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/MapAdapter.java index 4050e38cee..9595f65681 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/MapAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/MapAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.w3c.dom.Node; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ProxyAttrAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/ProxyAttrAdapter.java index 2bacc0ef2a..53ecf049e2 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ProxyAttrAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ProxyAttrAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.w3c.dom.Attr; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ProxyElementAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/ProxyElementAdapter.java index 36fc5700a8..8fbc6d45ee 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ProxyElementAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ProxyElementAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ProxyNamedNodeMap.java b/core/src/main/java/org/apache/struts2/views/xslt/ProxyNamedNodeMap.java index e9e13472e8..f0a218195b 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ProxyNamedNodeMap.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ProxyNamedNodeMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.w3c.dom.DOMException; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ProxyNodeAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/ProxyNodeAdapter.java index 3ccdc61463..52f76d33d5 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ProxyNodeAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ProxyNodeAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ProxyTextNodeAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/ProxyTextNodeAdapter.java index 363305336a..1f5b45b220 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ProxyTextNodeAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ProxyTextNodeAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.w3c.dom.DOMException; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/ServletURIResolver.java b/core/src/main/java/org/apache/struts2/views/xslt/ServletURIResolver.java index 1aa1d4554b..23a1c86a8f 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/ServletURIResolver.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/ServletURIResolver.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; @@ -31,7 +28,6 @@ import javax.xml.transform.stream.StreamSource; import java.io.InputStream; - /** * ServletURIResolver is a URIResolver that can retrieve resources from the servlet context using the scheme "response". * e.g. diff --git a/core/src/main/java/org/apache/struts2/views/xslt/SimpleAdapterDocument.java b/core/src/main/java/org/apache/struts2/views/xslt/SimpleAdapterDocument.java index 02a2e53023..23c315070a 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/SimpleAdapterDocument.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/SimpleAdapterDocument.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import java.util.Arrays; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/SimpleNodeList.java b/core/src/main/java/org/apache/struts2/views/xslt/SimpleNodeList.java index d70207e3a4..7affaa9195 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/SimpleNodeList.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/SimpleNodeList.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.logging.log4j.LogManager; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/SimpleTextNode.java b/core/src/main/java/org/apache/struts2/views/xslt/SimpleTextNode.java index 6e96a4397c..b09b58f992 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/SimpleTextNode.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/SimpleTextNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import org.apache.struts2.StrutsException; @@ -26,10 +23,6 @@ import org.w3c.dom.Node; import org.w3c.dom.Text; - -/** - * - */ public class SimpleTextNode extends AbstractAdapterNode implements Node, Text { public SimpleTextNode(AdapterFactory rootAdapterFactory, AdapterNode parent, String propertyName, Object value) { diff --git a/core/src/main/java/org/apache/struts2/views/xslt/StringAdapter.java b/core/src/main/java/org/apache/struts2/views/xslt/StringAdapter.java index 93daf41869..3948d2e494 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/StringAdapter.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/StringAdapter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import com.opensymphony.xwork2.util.DomHelper; diff --git a/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java b/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java index 2e2746e25c..9b82fd4837 100644 --- a/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java +++ b/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.xslt; import com.opensymphony.xwork2.ActionContext; diff --git a/core/src/test/resources/org/apache/struts2/dispatcher/someJspFile.jsp b/core/src/test/resources/org/apache/struts2/dispatcher/someJspFile.jsp index 5644abe305..ff29ae0322 100644 --- a/core/src/test/resources/org/apache/struts2/dispatcher/someJspFile.jsp +++ b/core/src/test/resources/org/apache/struts2/dispatcher/someJspFile.jsp @@ -1,7 +1,5 @@ <%-- /* - * $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 @@ -22,29 +20,6 @@ --%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> -<%-- -/* - * $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. - * - */ ---%> From 6e51f28d86ac4bdc2c0fc7c4f913a10c2564b352 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 10:23:30 +0200 Subject: [PATCH 0196/2288] Adds missing header with license --- .../xwork2/config/entities/package.html | 20 ++++++++++++++++ .../xwork2/config/impl/package.html | 20 ++++++++++++++++ .../opensymphony/xwork2/config/package.html | 20 ++++++++++++++++ .../xwork2/config/providers/package.html | 20 ++++++++++++++++ .../conversion/annotations/package.html | 20 ++++++++++++++++ .../xwork2/conversion/metadata/package.html | 20 ++++++++++++++++ .../xwork2/inject/util/package.html | 20 ++++++++++++++++ .../interceptor/annotations/package.html | 20 ++++++++++++++++ .../xwork2/interceptor/package.html | 20 ++++++++++++++++ .../com/opensymphony/xwork2/mock/package.html | 20 ++++++++++++++++ .../java/com/opensymphony/xwork2/package.html | 20 ++++++++++++++++ .../xwork2/spring/interceptor/package.html | 20 ++++++++++++++++ .../opensymphony/xwork2/spring/package.html | 20 ++++++++++++++++ .../xwork2/util/location/package.html | 24 ++++++++++++++++--- .../com/opensymphony/xwork2/util/package.html | 20 ++++++++++++++++ .../xwork2/util/profiling/package.html | 20 ++++++++++++++++ .../xwork2/validator/annotations/package.html | 20 ++++++++++++++++ .../xwork2/validator/package.html | 20 ++++++++++++++++ .../xwork2/validator/validators/package.html | 20 ++++++++++++++++ .../org/apache/struts2/config/package.html | 2 -- .../struts2/dispatcher/multipart/package.html | 2 -- .../org/apache/struts2/views/jsp/package.html | 2 -- .../apache/struts2/views/util/package.html | 2 -- .../struts2/views/velocity/package.html | 2 -- .../apache/struts2/views/xslt/package.html | 2 -- .../apache/struts2/interceptor/package.html | 2 -- .../resources/org/apache/struts2/package.html | 2 -- .../org/apache/struts2/util/package.html | 2 -- .../struts2/views/freemarker/package.html | 2 -- .../struts2/views/jsp/iterator/package.html | 2 -- .../apache/struts2/views/jsp/ui/package.html | 2 -- .../struts2/views/jsp/ui/table/package.html | 2 -- .../struts2/views/jasperreports/package.html | 2 -- .../struts2/portlet/servlet/package.html | 2 -- 34 files changed, 381 insertions(+), 33 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/package.html b/core/src/main/java/com/opensymphony/xwork2/config/entities/package.html index d05a357625..f5d6c41a33 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/package.html @@ -1,3 +1,23 @@ +

diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/package.html b/core/src/main/java/com/opensymphony/xwork2/config/impl/package.html index cdfed5f83e..69fa7c10c8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/package.html @@ -1 +1,21 @@ + Configuration implementation classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/config/package.html b/core/src/main/java/com/opensymphony/xwork2/config/package.html index a3de692bc7..eacf1c8f65 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/config/package.html @@ -1 +1,21 @@ + Configuration core classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/package.html b/core/src/main/java/com/opensymphony/xwork2/config/providers/package.html index 946fc4ef8a..b1de092027 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/package.html @@ -1 +1,21 @@ + Configuration provider classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/package.html b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/package.html index e2a91d0a1a..9e4293d9ce 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/annotations/package.html @@ -1 +1,21 @@ + Type conversion annotations. diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/package.html b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/package.html index c50a611ab9..e48517d451 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/metadata/package.html @@ -1 +1,21 @@ + Type conversion meta data classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/util/package.html b/core/src/main/java/com/opensymphony/xwork2/inject/util/package.html index e3264616f4..7008627e09 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/util/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/inject/util/package.html @@ -1 +1,21 @@ + Guice util classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/package.html b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/package.html index 8ac50a8b63..7c06a1d7c2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/annotations/package.html @@ -1 +1,21 @@ + Interceptor annotations. diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/package.html b/core/src/main/java/com/opensymphony/xwork2/interceptor/package.html index 505d814e07..2d4cef8d14 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/package.html @@ -1 +1,21 @@ + Interceptor classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/package.html b/core/src/main/java/com/opensymphony/xwork2/mock/package.html index 61bdf48e92..fafd91c66d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/mock/package.html @@ -1 +1,21 @@ + XWork specific mock classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/package.html b/core/src/main/java/com/opensymphony/xwork2/package.html index 3794154763..5ab9951876 100644 --- a/core/src/main/java/com/opensymphony/xwork2/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/package.html @@ -1 +1,21 @@ + Main XWork interfaces and classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/package.html b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/package.html index 6579e80e6b..bb0c68183b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/spring/interceptor/package.html @@ -1 +1,21 @@ + Spring specific interceptor classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/spring/package.html b/core/src/main/java/com/opensymphony/xwork2/spring/package.html index 91d2d95a5f..b82f58fc3f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/spring/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/spring/package.html @@ -1 +1,21 @@ + Spring ObjectFactory classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/util/location/package.html b/core/src/main/java/com/opensymphony/xwork2/util/location/package.html index 840814bd98..2a08204c26 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/location/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/util/location/package.html @@ -1,3 +1,21 @@ - - Classes and utilities used to track location information. - \ No newline at end of file + +Classes and utilities used to track location information. \ No newline at end of file diff --git a/core/src/main/java/com/opensymphony/xwork2/util/package.html b/core/src/main/java/com/opensymphony/xwork2/util/package.html index e400bf97ff..e32bc28cc8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/util/package.html @@ -1 +1,21 @@ + XWork util classes. diff --git a/core/src/main/java/com/opensymphony/xwork2/util/profiling/package.html b/core/src/main/java/com/opensymphony/xwork2/util/profiling/package.html index c0b1f7f63c..766d4b8701 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/profiling/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/util/profiling/package.html @@ -1 +1,21 @@ + Classes to enable profiling of action execution. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/package.html b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/package.html index ff910e7886..a2db7cf82c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/package.html @@ -1 +1,21 @@ + Validator annotations. diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/package.html b/core/src/main/java/com/opensymphony/xwork2/validator/package.html index 07e7894e57..d847de0faa 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/validator/package.html @@ -1 +1,21 @@ + XWork validation subsystem. \ No newline at end of file diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/validators/package.html b/core/src/main/java/com/opensymphony/xwork2/validator/validators/package.html index 8b34399a2c..e2f00107d9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/validators/package.html +++ b/core/src/main/java/com/opensymphony/xwork2/validator/validators/package.html @@ -1 +1,21 @@ + XWork default validator classes. diff --git a/core/src/main/java/org/apache/struts2/config/package.html b/core/src/main/java/org/apache/struts2/config/package.html index 010a997f80..d2bb594d46 100644 --- a/core/src/main/java/org/apache/struts2/config/package.html +++ b/core/src/main/java/org/apache/struts2/config/package.html @@ -1,7 +1,5 @@ \n jspc.webinc.insertEnd= jspc.webinc.insertStart= -jspc.error.jasperException=error-el archivo ''{0}'' ha generado la excepcin de sintxis siguiente: {1} -jspc.error.generalException=ERROR-el archivo ''{0}'' ha generado la excepcin general siguiente: +jspc.error.jasperException=error-el archivo ''{0}'' ha generado la excepci�n de sint�xis siguiente: {1} +jspc.error.generalException=ERROR-el archivo ''{0}'' ha generado la excepci�n general siguiente: jspc.error.fileDoesNotExist=El archivo ''{0}'' utilizado como argumento no existe. jspc.error.emptyWebApp=-webapp necesita un argumento de archivo -jsp.error.library.invalid=La pgina JSP es incorrecta de acuerdo a la biblioteca {0}: {1} +jsp.error.library.invalid=La p�gina JSP es incorrecta de acuerdo a la biblioteca {0}: {1} jsp.error.tlvclass.instantiation=No pude cargar o instanciar clase TagLibraryValidator: {0} -jsp.error.tlv.invalid.page=Mensajes de error de validacin desde TagLibraryValidator para {0} in {1} -jsp.error.tei.invalid.attributes=Mensajes de error de validacin desde TagExtraInfo para {0} +jsp.error.tlv.invalid.page=Mensajes de error de validaci�n desde TagLibraryValidator para {0} in {1} +jsp.error.tei.invalid.attributes=Mensajes de error de validaci�n desde TagExtraInfo para {0} jsp.parser.sax.propertynotsupported=Propiedad SAX no soportada: {0} jsp.parser.sax.propertynotrecognized=Propiedad SAX no reconocida: {0} -jsp.parser.sax.featurenotsupported=Caracterstica SAX no soportada: {0} -jsp.parser.sax.featurenotrecognized=Caracterstica SAX no reconocida: {0} -jsp.error.no.more.content=Alcanzado fin de contenido mietras se requera ms anlisis: error de anidamiento de tag? -jsp.error.parse.xml=Error de anlisis XML en archivo {0} -jsp.error.parse.xml.line=Error de anlisis XML en archivo {0}: (lnea {1}, col {2}) +jsp.parser.sax.featurenotsupported=Caracter�stica SAX no soportada: {0} +jsp.parser.sax.featurenotrecognized=Caracter�stica SAX no reconocida: {0} +jsp.error.no.more.content=Alcanzado fin de contenido mietras se requer�a m�s an�lisis: �error de anidamiento de tag? +jsp.error.parse.xml=Error de an�lisis XML en archivo {0} +jsp.error.parse.xml.line=Error de an�lisis XML en archivo {0}: (l�nea {1}, col {2}) jsp.error.parse.xml.scripting.invalid.body=El cuerpo de elemento {0} no debe de contener elementos XML jsp.error.internal.tldinit=No pude inicializar TldLocationsCache: {0} jsp.error.internal.filenotfound=Error Interno: Archivo {0} no hallado jsp.error.internal.evaluator_not_found=Error interno: no pude cargar evaluador de expresiones jsp.error.parse.xml.invalidPublicId=PUBLIC ID incorrecta: {0} jsp.error.include.flush.invalid.value=Valor incorrecto para atributo flush: {0} -jsp.error.unsupported.encoding=Codificacin no soportada: {0} -tld.error.variableNotAllowed=Es un error para un tag, que tiene uno o ms subelementos variables, el tener una clase TagExtraInfo que devuelve un objeto no nulo. +jsp.error.unsupported.encoding=Codificaci�n no soportada: {0} +tld.error.variableNotAllowed=Es un error para un tag, que tiene uno o m�s subelementos variables, el tener una clase TagExtraInfo que devuelve un objeto no nulo. jsp.error.tldInWebDotXmlNotFound=No pude localizar TLD {1} para URI {0} especificado en web.xml -jsp.error.taglibDirective.absUriCannotBeResolved=La uri absoluta: {0} no puede resolverse o en web.xml o el los archivos jar desplegados con esta aplicacin +jsp.error.taglibDirective.absUriCannotBeResolved=La uri absoluta: {0} no puede resolverse o en web.xml o el los archivos jar desplegados con esta aplicaci�n jsp.error.taglibDirective.missing.location=No se ha especificado ni el atributo \'uri\' ni el \'tagdir\' jsp.error.taglibDirective.both_uri_and_tagdir=Se han especificado ambos atributos \'uri\' y \'tagdir\' jsp.error.invalid.tagdir=El directorio de archivo Tag {0} no comienza con \"/WEB-INF/tags\" jsp.error.unterminated.user.tag=Tag definido por usuario no terminado: tag final {0} no hallado o anidado incorrectamente #jspx.error.templateDataNotInJspCdata=Validation Error: Element <{0}> cannot have template data. Template data must be encapsulated within a <jsp:cdata> element. [JSP1.2 PFD section 5.1.9]\nTemplate data in error: {1} -jspx.error.templateDataNotInJspCdata=Error de Validacin: El Elemento <{0}> no puede tener datos plantilla. Los datos plantilla deben de estar encapsulados dentro de un elemento <jsp:text>. [JSP1.2 PFD seccin 5.1.9]\nDatos de Plantilla en error: {1} +jspx.error.templateDataNotInJspCdata=Error de Validaci�n: El Elemento <{0}> no puede tener datos plantilla. Los datos plantilla deben de estar encapsulados dentro de un elemento <jsp:text>. [JSP1.2 PFD secci�n 5.1.9]\nDatos de Plantilla en error: {1} #Error while processing taglib jar file {0}: {1} -jsp.error.taglib.reserved.prefix=El prefijo taglib {0} est reservado -jsp.error.invalid.javaEncoding=Codificaciones java incorrectas. Intent {0} y luego {1}. Ambas fallaron. -jsp.error.needAlternateJavaEncoding=La codificacin java por defecto {0} es incorrecta en tu plataforma java. Se puede especificar una alternativa va parmetro 'javaEncoding' de JspServlet. +jsp.error.taglib.reserved.prefix=El prefijo taglib {0} est� reservado +jsp.error.invalid.javaEncoding=Codificaciones java incorrectas. Intent� {0} y luego {1}. Ambas fallaron. +jsp.error.needAlternateJavaEncoding=La codificaci�n java por defecto {0} es incorrecta en tu plataforma java. Se puede especificar una alternativa v�a par�metro 'javaEncoding' de JspServlet. #Error when compiling, used for jsp line number error messages -jsp.error.single.line.number=Ha tenido lugar un error en la lnea: {0} en el archivo jsp: {1} -jsp.error.multiple.line.number=\n\nHa tenido lugar un error entre las lneas: {0} y {1} en el archivo jsp: {2}\n\n +jsp.error.single.line.number=Ha tenido lugar un error en la l�nea: {0} en el archivo jsp: {1} +jsp.error.multiple.line.number=\n\nHa tenido lugar un error entre las l�neas: {0} y {1} en el archivo jsp: {2}\n\n jsp.error.corresponding.servlet=Error de servlet generado:\n -jsp.error.empty.body.not.allowed=Cuerpo vaco no permitido para {0} +jsp.error.empty.body.not.allowed=Cuerpo vac�o no permitido para {0} jsp.error.jspbody.required=Se debe de usar jsp:body para especificar cuerpo tag para {0} si se usa jsp:attribute. -jsp.error.jspbody.emptybody.only=El tag {0} slo puede tener jsp:attribute en su cuerpo. -jsp.error.no.scriptlets=Los elementos de Scripting (<%!, <jsp:declaration, <%=, <jsp:expression, <%, <jsp:scriptlet ) no estn permitidos aqu. +jsp.error.jspbody.emptybody.only=El tag {0} s�lo puede tener jsp:attribute en su cuerpo. +jsp.error.no.scriptlets=Los elementos de Scripting (<%!, <jsp:declaration, <%=, <jsp:expression, <%, <jsp:scriptlet ) no est�n permitidos aqu�. jsp.error.internal.unexpected_node_type=Error Interno: Encontrado tipo de nodo inesperado -jsp.error.tld.fn.invalid.signature=Sintxis incorrecta para firma de funcin en TLD. Biblioteca de Tag: {0}, Funcin: {1} -jsp.error.tld.fn.duplicate.name=Nombre duplicado de funcin {0} en biblioteca de tag {1} -jsp.error.tld.fn.invalid.signature.commaexpected=Sintxis incorrecta para firma de funcin en TLD. Se esperaba Coma ','. Biblioteca de Tag: {0}, Funcin: {1}. -jsp.error.tld.fn.invalid.signature.parenexpected=Sintxis incorrecta para firma de funcin en TLD. Se esperaba Parntesis '('. Biblioteca de Tag: {0}, Funcin: {1}. -jsp.error.tld.mandatory.element.missing=Falta o est vaco elemento TLD obligatorio: {0} -jsp.error.dynamic.attributes.not.implemented=El tag {0} declara que acepta atributos dinmicos pero no implementa la interfaz requerida +jsp.error.tld.fn.invalid.signature=Sint�xis incorrecta para firma de funci�n en TLD. Biblioteca de Tag: {0}, Funci�n: {1} +jsp.error.tld.fn.duplicate.name=Nombre duplicado de funci�n {0} en biblioteca de tag {1} +jsp.error.tld.fn.invalid.signature.commaexpected=Sint�xis incorrecta para firma de funci�n en TLD. Se esperaba Coma ','. Biblioteca de Tag: {0}, Funci�n: {1}. +jsp.error.tld.fn.invalid.signature.parenexpected=Sint�xis incorrecta para firma de funci�n en TLD. Se esperaba Par�ntesis '('. Biblioteca de Tag: {0}, Funci�n: {1}. +jsp.error.tld.mandatory.element.missing=Falta o est� vac�o elemento TLD obligatorio: {0} +jsp.error.dynamic.attributes.not.implemented=El tag {0} declara que acepta atributos din�micos pero no implementa la interfaz requerida jsp.error.nomatching.fragment=No puedo hallar una directiva de atributo (con name={0} y fragment=true) antes de la directiva de fragment. -jsp.error.attribute.noequal=se esperaba smbolo igual -jsp.error.attribute.noquote=se esperaba smbolo comillas -jsp.error.attribute.unterminated=el atributo para {0} no est terminado correctamente +jsp.error.attribute.noequal=se esperaba s�mbolo igual +jsp.error.attribute.noquote=se esperaba s�mbolo comillas +jsp.error.attribute.unterminated=el atributo para {0} no est� terminado correctamente jsp.error.missing.tagInfo=El objeto TagInfo para {0} falta del TLD -jsp.error.fragmentwithtype=No puede especificar ambos atributos 'fragment' y 'type'. Si est presente 'fragment', 'type' se pone como 'javax.servlet.jsp.tagext.JspFragment' -jsp.error.fragmentwithrtexprvalue=No puede especificar ambos atributos 'fragment' y 'rtexprvalue'. Si est presente 'fragment', 'rtexprvalue' se pone como 'true' +jsp.error.fragmentwithtype=No puede especificar ambos atributos 'fragment' y 'type'. Si est� presente 'fragment', 'type' se pone como 'javax.servlet.jsp.tagext.JspFragment' +jsp.error.fragmentwithrtexprvalue=No puede especificar ambos atributos 'fragment' y 'rtexprvalue'. Si est� presente 'fragment', 'rtexprvalue' se pone como 'true' jsp.error.fragmentWithDeclareOrScope=Ambos atributos 'fragment' y 'declare' o 'scope' se han especificado en la directiva variable -jsp.error.var_and_varReader=Slo se puede especificar uno de \'var\' o \'varReader\' +jsp.error.var_and_varReader=S�lo se puede especificar uno de \'var\' o \'varReader\' jsp.error.missing_var_or_varReader=Falta atributo \'var\' o \'varReader\' jsp.warning.bad.urlpattern.propertygroup=Valor malo {0} en el subelemento url-pattern en web.xml jsp.error.unknown_attribute_type=Tipo de atributo desconocido ({1}) para atributo {0}. jsp.error.jspelement.missing.name=Falta atributo obligatorio XML-style \'name\' -jsp.error.xmlns.redefinition.notimplemented=Error interno: Intento de redefinir xmlns:{0}. La redefinicin de espacios de nombre no est implementada. -jsp.error.could.not.add.taglibraries=No pude aadir una o ms bibliotecas. -jsp.error.duplicate.name.jspattribute=El atributo {0} especificado en la accin standard o custom tambin aparece como el valor del atributo name en jsp:attribute +jsp.error.xmlns.redefinition.notimplemented=Error interno: Intento de redefinir xmlns:{0}. La redefinici�n de espacios de nombre no est� implementada. +jsp.error.could.not.add.taglibraries=No pude a�adir una o m�s bibliotecas. +jsp.error.duplicate.name.jspattribute=El atributo {0} especificado en la acci�n standard o custom tambi�n aparece como el valor del atributo name en jsp:attribute jsp.error.not.in.template={0} no permitido en una plantilla cuerpo de texto. -jsp.error.badStandardAction=Accin estndar incorrecta -jsp.error.xml.badStandardAction=Accin estndar incorrecta: {0} +jsp.error.badStandardAction=Acci�n est�ndar incorrecta +jsp.error.xml.badStandardAction=Acci�n est�ndar incorrecta: {0} jsp.error.tagdirective.badbodycontent=body-content incorrecto ({0}) en directiva tag jsp.error.simpletag.badbodycontent=El TLD para la clase {0} especifica un body-content es incorrecto (JSP) para un SimpleTag. jsp.error.config_pagedir_encoding_mismatch=El Page-encoding especificado en jsp-property-group ({0}) es diferente del especificado en la diectiva page ({1}) jsp.error.prolog_pagedir_encoding_mismatch=El Page-encoding especificado en XML prolog ({0}) difiere del especificado en la directiva page ({1}) jsp.error.prolog_config_encoding_mismatch=El Page-encoding especificado en XML prolog ({0}) difiere del especificado en jsp-property-group ({1}) -jsp.error.attribute.custom.non_rt_with_expr=Segn el TLD o la directiva attribute del archivo tag, el atributo {0} no acepta expresiones -jsp.error.attribute.standard.non_rt_with_expr=El atributo {0} de la accin estndar {1} no acepta expresiones +jsp.error.attribute.custom.non_rt_with_expr=Seg�n el TLD o la directiva attribute del archivo tag, el atributo {0} no acepta expresiones +jsp.error.attribute.standard.non_rt_with_expr=El atributo {0} de la acci�n est�ndar {1} no acepta expresiones jsp.error.scripting.variable.missing_name=Imposible determinar nombre de variable de scripting desde atributo {0} -jasper.error.emptybodycontent.nonempty=Segn el TLD, el tag {0} debe de estar vaco, pero no lo est -jsp.error.tagfile.nameNotUnique=El valor de {0} y el valor de {1} en la lnea {2} son el mismo. +jasper.error.emptybodycontent.nonempty=Seg�n el TLD, el tag {0} debe de estar vac�o, pero no lo est� +jsp.error.tagfile.nameNotUnique=El valor de {0} y el valor de {1} en la l�nea {2} son el mismo. jsp.error.tagfile.nameFrom.noAttribute=No puedo hallar una directiva attribute con un atributo name con un valor \"{0}\", el valor de este atributo name-from-attribute. -jsp.error.tagfile.nameFrom.badAttribute=La directiva attribute (declarada en la lnea {1} y cuyo atributo name es \"{0}\", el valor de este atributo name-from-attribute attribute) debe de ser del tipo java.lang.String, es \"required\" y no un \"rtexprvalue\". -jsp.error.page.noSession=No puedo acceder al mbito de sesin en una pgina que no participa en una sesin -jsp.error.useBean.noSession=Es ilegal para useBean usar un mbito de sesin cuando la pgina JSP declara (va directiva page) que no participa en sesiones -jsp.error.xml.encodingByteOrderUnsupported=El orden de byte dado para encoding \"{0}\" no est soportado -jsp.error.xml.encodingDeclInvalid=Nombre de codificacin \"{0}\" incorrecto. -jsp.error.xml.encodingDeclRequired=Se necesita la declaracin encoding en la declaracin de texto -jsp.error.xml.morePseudoAttributes=se esperan ms pseudo-atributos -jsp.error.xml.noMorePseudoAttributes=no se permiten ms pseudo-atributos. -jsp.error.xml.versionInfoRequired=Se requiere la versin en la declaracin XML. -jsp.error.xml.xmlDeclUnterminated=La declaracin XML debe de terminar con \"?>\". -jsp.error.xml.reservedPITarget=La instruccin de procesamiento que coincide con \"[xX][mM][lL]\" no est permitida. -jsp.error.xml.spaceRequiredInPI=Se necesita un espacio en blanco entre la instruccin de procesamiento y los datos. -jsp.error.xml.invalidCharInContent=Un carcter XML incorrecto (Unicode: 0x{0}) se hall en el contenido del elemento del documento. -jsp.error.xml.spaceRequiredBeforeStandalone=Se necesita un espacio en blanco antes del pseudo-atributo encoding en la declaracin XML. -jsp.error.xml.sdDeclInvalid=El valor de declaracin de documento standalone debe de ser \"yes\" o \"no\", no \"{0}\". -jsp.error.xml.invalidCharInPI=Se hall un carcter XML incorrecto (Unicode: 0x{0}) en la instruccin de procesamiento -jsp.error.xml.versionNotSupported=No se soporta la versin XML \"{0}\", slo se soporta XML 1.0 +jsp.error.tagfile.nameFrom.badAttribute=La directiva attribute (declarada en la l�nea {1} y cuyo atributo name es \"{0}\", el valor de este atributo name-from-attribute attribute) debe de ser del tipo java.lang.String, es \"required\" y no un \"rtexprvalue\". +jsp.error.page.noSession=No puedo acceder al �mbito de sesi�n en una p�gina que no participa en una sesi�n +jsp.error.useBean.noSession=Es ilegal para useBean usar un �mbito de sesi�n cuando la p�gina JSP declara (v�a directiva page) que no participa en sesiones +jsp.error.xml.encodingByteOrderUnsupported=El orden de byte dado para encoding \"{0}\" no est� soportado +jsp.error.xml.encodingDeclInvalid=Nombre de codificaci�n \"{0}\" incorrecto. +jsp.error.xml.encodingDeclRequired=Se necesita la declaraci�n encoding en la declaraci�n de texto +jsp.error.xml.morePseudoAttributes=se esperan m�s pseudo-atributos +jsp.error.xml.noMorePseudoAttributes=no se permiten m�s pseudo-atributos. +jsp.error.xml.versionInfoRequired=Se requiere la versi�n en la declaraci�n XML. +jsp.error.xml.xmlDeclUnterminated=La declaraci�n XML debe de terminar con \"?>\". +jsp.error.xml.reservedPITarget=La instrucci�n de procesamiento que coincide con \"[xX][mM][lL]\" no est� permitida. +jsp.error.xml.spaceRequiredInPI=Se necesita un espacio en blanco entre la instrucci�n de procesamiento y los datos. +jsp.error.xml.invalidCharInContent=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en el contenido del elemento del documento. +jsp.error.xml.spaceRequiredBeforeStandalone=Se necesita un espacio en blanco antes del pseudo-atributo encoding en la declaraci�n XML. +jsp.error.xml.sdDeclInvalid=El valor de declaraci�n de documento standalone debe de ser \"yes\" o \"no\", no \"{0}\". +jsp.error.xml.invalidCharInPI=Se hall� un car�cter XML incorrecto (Unicode: 0x{0}) en la instrucci�n de procesamiento +jsp.error.xml.versionNotSupported=No se soporta la versi�n XML \"{0}\", s�lo se soporta XML 1.0 jsp.error.xml.pseudoAttrNameExpected=se esperaba un pseudo-atributo name. jsp.error.xml.expectedByte=Se esperaba byte {0} de {1}-byte de secuencia UTF-8. jsp.error.xml.invalidByte=Incorrecto byte {0} de {1}-byte de secuencia UTF-8. -jsp.error.xml.operationNotSupported=La operacin \"{0}\" no est soportada por lector {1}. -jsp.error.xml.invalidHighSurrogate=Surrogacin Alta de bits en secuencia UTF-8 no debe de exceder 0x10, pero se hall 0x{0}. +jsp.error.xml.operationNotSupported=La operaci�n \"{0}\" no est� soportada por lector {1}. +jsp.error.xml.invalidHighSurrogate=Surrogaci�n Alta de bits en secuencia UTF-8 no debe de exceder 0x10, pero se hall� 0x{0}. jsp.error.xml.invalidASCII=El Byte \"{0}\" no es ASCII de 7-bit. -jsp.error.xml.spaceRequiredBeforeEncodingInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaracin XML. -jsp.error.xml.spaceRequiredBeforeEncodingInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaracin text. -jsp.error.xml.spaceRequiredBeforeVersionInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaracin text. -jsp.error.xml.spaceRequiredBeforeVersionInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaracin XML. -jsp.error.xml.eqRequiredInXMLDecl=El carcter '' = '' debe de serguir a \"{0}\" en la declaracin XML. -jsp.error.xml.eqRequiredInTextDecl=El carcter '' = '' debe de serguir a \"{0}\" en la declaracin text. -jsp.error.xml.quoteRequiredInTextDecl=El valor que sigue a \"{0}\" en la declaracin text debe de ser una cadena entre comillas. -jsp.error.xml.quoteRequiredInXMLDecl=El valor que sigue a \"{0}\" en la declaracin XML debe de ser un cadena entre comillas. -jsp.error.xml.invalidCharInTextDecl=Un carcter XML incorrecto (Unicode: 0x{0}) se hall en la declaracin text -jsp.error.xml.invalidCharInXMLDecl=Un carcter XML incorrecto (Unicode: 0x{0}) se hall en la declaracin XML -jsp.error.xml.closeQuoteMissingInTextDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaracin text. -jsp.error.xml.closeQuoteMissingInXMLDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaracin XML. -jsp.error.multiple.jsp=No puedo tener mltiples especificaciones de -jsp.error.jspoutput.conflict=<jsp:output>: ilegal tener ocurrencias mltiples de \"{0}\" con diferentes valores (viejo: {1}, nuevo: {2}) +jsp.error.xml.spaceRequiredBeforeEncodingInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaraci�n XML. +jsp.error.xml.spaceRequiredBeforeEncodingInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaraci�n text. +jsp.error.xml.spaceRequiredBeforeVersionInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaraci�n text. +jsp.error.xml.spaceRequiredBeforeVersionInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaraci�n XML. +jsp.error.xml.eqRequiredInXMLDecl=El car�cter '' = '' debe de serguir a \"{0}\" en la declaraci�n XML. +jsp.error.xml.eqRequiredInTextDecl=El car�cter '' = '' debe de serguir a \"{0}\" en la declaraci�n text. +jsp.error.xml.quoteRequiredInTextDecl=El valor que sigue a \"{0}\" en la declaraci�n text debe de ser una cadena entre comillas. +jsp.error.xml.quoteRequiredInXMLDecl=El valor que sigue a \"{0}\" en la declaraci�n XML debe de ser un cadena entre comillas. +jsp.error.xml.invalidCharInTextDecl=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en la declaraci�n text +jsp.error.xml.invalidCharInXMLDecl=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en la declaraci�n XML +jsp.error.xml.closeQuoteMissingInTextDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaraci�n text. +jsp.error.xml.closeQuoteMissingInXMLDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaraci�n XML. +jsp.error.multiple.jsp=No puedo tener m�ltiples especificaciones de +jsp.error.jspoutput.conflict=<jsp:output>: ilegal tener ocurrencias m�ltiples de \"{0}\" con diferentes valores (viejo: {1}, nuevo: {2}) jsp.error.jspoutput.doctypenamesystem=<jsp:output>: atributos 'doctype-root-element' y 'doctype-system' deben de aparecer juntos jsp.error.jspoutput.doctypepulicsystem=<jsp:output>: atributo 'doctype-system' debe de aparecer si aparece atributo 'doctype-public' jsp.error.jspoutput.nonemptybody=<jsp:output> no debe de tener un cuerpo -jsp.error.jspoutput.invalidUse=<jsp:output> no se debe de usar en sintxis estndar +jsp.error.jspoutput.invalidUse=<jsp:output> no se debe de usar en sint�xis est�ndar jsp.error.attributes.not.allowed = {0} no debe de tener atributos jsp.error.tagfile.badSuffix=Falta sufijo \".tag\" en trayectoria de archivo de tag {0} jsp.error.tagfile.illegalPath=Trayectoria de archivo de tag: {0}, debe de comenzar con \"/WEB-INF/tags\" o \"/META-INF/tags\" -jsp.error.plugin.wrongRootElement=El nombre del elemento raz en {0} difiere de {1} +jsp.error.plugin.wrongRootElement=El nombre del elemento ra�z en {0} difiere de {1} jsp.error.attribute.invalidPrefix=El prefijo de atributo {0} no se correponde con ninguna biblioteca importada -jsp.error.nested.jspattribute=Una accin estndar jsp:attribute no puede estar anidada dentro de otra accin estndar jsp:attribute -jsp.error.nested.jspbody=Una accin estndar jsp:body no puede estar anidada dentro de otra accin estndar jsp:body o jsp:attribute +jsp.error.nested.jspattribute=Una acci�n est�ndar jsp:attribute no puede estar anidada dentro de otra acci�n est�ndar jsp:attribute +jsp.error.nested.jspbody=Una acci�n est�ndar jsp:body no puede estar anidada dentro de otra acci�n est�ndar jsp:body o jsp:attribute jsp.error.variable.either.name=O el atributo name-given o name-from-attribute deben de ser especificados en una directiva variable jsp.error.variable.both.name=No se puede especificar ambos atributos name-given o name-from-attribute en una directiva variable jsp.error.variable.alias=Ambos atributos o ninguno de name-from-attribute y alias pueden ser especificados en una directiva variable jsp.error.attribute.null_name=Nombre de atributo nulo jsp.error.jsptext.badcontent=\'<\', cuando aparece en el cuerpo de <jsp:text>, debe de estar encapsulado dentro de un CDATA -jsp.error.jsproot.version.invalid=Nmero incorrecto de versin: \"{0}\", debe de ser \"1.2\" o \"2.0\" -jsp.error.noFunctionPrefix=La funcin {0} debe de usarse con un prefijo cuando no se especifica un espacio de nombres por defecto -jsp.error.noFunction=La funcin {0} no puede ser localizada mediante el prefijo especificado -jsp.error.noFunctionMethod=El mtodo \"{0}\" para la funcin \"{1}\" no se pudo hallar en la clase \"{2}\" -jsp.error.function.classnotfound=La clase {0} especificada en el TLD para la funcin {1} no se puede hallar: {2} -jsp.error.signature.classnotfound=La clase {0} especificada en la firma del mtodo en el TLD para la funcin {1} no se puede hallar. {2} +jsp.error.jsproot.version.invalid=N�mero incorrecto de versi�n: \"{0}\", debe de ser \"1.2\" o \"2.0\" +jsp.error.noFunctionPrefix=La funci�n {0} debe de usarse con un prefijo cuando no se especifica un espacio de nombres por defecto +jsp.error.noFunction=La funci�n {0} no puede ser localizada mediante el prefijo especificado +jsp.error.noFunctionMethod=El m�todo \"{0}\" para la funci�n \"{1}\" no se pudo hallar en la clase \"{2}\" +jsp.error.function.classnotfound=La clase {0} especificada en el TLD para la funci�n {1} no se puede hallar: {2} +jsp.error.signature.classnotfound=La clase {0} especificada en la firma del m�todo en el TLD para la funci�n {1} no se puede hallar. {2} jsp.error.text.has_subelement=<jsp:text> no debe de tener subelementos jsp.error.data.file.read=Error leyendo archivo \"{0}\" -jsp.error.prefix.refined=Intento de redefinir el prefijo {0} por {1}, cuando ya estaba definido como {2} en el mbito en curso. +jsp.error.prefix.refined=Intento de redefinir el prefijo {0} por {1}, cuando ya estaba definido como {2} en el �mbito en curso. jsp.error.nested_jsproot=<jsp:root> anidado -jsp.error.unbalanced.endtag=El tgag final \"</{0}\" est desequilibrado +jsp.error.unbalanced.endtag=El tgag final \"</{0}\" est� desequilibrado jsp.error.invalid.bean= diff --git a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties index e19772363a..e9f28202d0 100644 --- a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties +++ b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties @@ -1,54 +1,56 @@ -# 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 +# 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 # -# 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. - -# $Id: LocalStrings_fr.properties 565193 2007-08-12 22:53:10Z markt $ +# 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. # + # Default localized string information # Localized this the Default Locale as is fr_FR jsp.error.bad.servlet.engine=Version de moteur de servlet incorrecte! -jsp.error.no.scratch.dir=Le moteur de JSP engine n''est pas configur avec un rpertoire de travail.\ +jsp.error.no.scratch.dir=Le moteur de JSP engine n''est pas configur� avec un r�pertoire de travail.\ \n Merci d''ajouter \"jsp.initparams=scratchdir=\" \ \n dans le fichier "servlets.properties" de ce contexte. -jsp.error.bad.scratch.dir=Le paramtre "scratchDir" que vous avez spcifi: {0} est inutilisable. -jsp.message.scratch.dir.is=Le rpertoire de travail (scratch dir) pour le moteur de JSP est: {0} +jsp.error.bad.scratch.dir=Le param�tre "scratchDir" que vous avez sp�cifi�: {0} est inutilisable. +jsp.message.scratch.dir.is=Le r�pertoire de travail (scratch dir) pour le moteur de JSP est: {0} jsp.message.parent_class_loader_is=Le chargeur de classe parent (class loader) est: {0} -jsp.message.dont.modify.servlets=IMPORTANT: Ne pas modifier les servlets gnres -jsp.error.not.impl.comments=Erreur interne: Commentaires non implments -jsp.error.not.impl.directives=Erreur interne: Directives non implmentes -jsp.error.not.impl.declarations=Erreur interne: Declarations non implmentes -jsp.error.not.impl.expressions=Erreur interne: Expressions non implmentes -jsp.error.not.impl.scriptlets=Erreur interne: Scriptlets non implments -jsp.error.not.impl.usebean=Erreur interne: useBean non implment -jsp.error.not.impl.getp=Erreur interne: getProperty non implment -jsp.error.not.impl.setp=Erreur interne: setProperty non implment -jsp.error.not.impl.plugin=Erreur interne: plugin non implment -jsp.error.not.impl.forward=Erreur interne: forward non implment -jsp.error.not.impl.include=Erreur interne: include non implment -jsp.error.unavailable=La JSP a t marque comme non disponible -jsp.error.usebean.missing.attribute=useBean: l''identificateur d''attribut (id attribute) est manquant ou mal orthographi -jsp.error.usebean.missing.type=useBean ({0}): La classe ou le type d''attribut doit tre\ -spcifi: -jsp.error.usebean.duplicate=useBean: Nom de bean dupliqu: {0} +jsp.message.dont.modify.servlets=IMPORTANT: Ne pas modifier les servlets g�n�r�es +jsp.error.not.impl.comments=Erreur interne: Commentaires non impl�ment�s +jsp.error.not.impl.directives=Erreur interne: Directives non impl�ment�es +jsp.error.not.impl.declarations=Erreur interne: Declarations non impl�ment�es +jsp.error.not.impl.expressions=Erreur interne: Expressions non impl�ment�es +jsp.error.not.impl.scriptlets=Erreur interne: Scriptlets non impl�ment�s +jsp.error.not.impl.usebean=Erreur interne: useBean non impl�ment� +jsp.error.not.impl.getp=Erreur interne: getProperty non impl�ment� +jsp.error.not.impl.setp=Erreur interne: setProperty non impl�ment� +jsp.error.not.impl.plugin=Erreur interne: plugin non impl�ment� +jsp.error.not.impl.forward=Erreur interne: forward non impl�ment� +jsp.error.not.impl.include=Erreur interne: include non impl�ment� +jsp.error.unavailable=La JSP a �t� marqu�e comme non disponible +jsp.error.usebean.missing.attribute=useBean: l''identificateur d''attribut (id attribute) est manquant ou mal orthographi� +jsp.error.usebean.missing.type=useBean ({0}): La classe ou le type d''attribut doit �tre\ +sp�cifi�: +jsp.error.usebean.duplicate=useBean: Nom de bean dupliqu�: {0} jsp.error.usebean.prohibited.as.session=Impossible d''utiliser comme bean de session {0} car c''est interdit\ -par la directive jsp dfinie prcdemment: -jsp.error.usebean.not.both=useBean: Impossible de spcifier la fois la classe et l''attribut beanName: +par la directive jsp d�finie pr�c�demment: +jsp.error.usebean.not.both=useBean: Impossible de sp�cifier � la fois la classe et l''attribut beanName: jsp.error.usebean.bad.type.cast=useBean ({0}): Le type ({1}) n''est pas assignable depuis la classe ({2}) -jsp.error.classname=Impossible de dterminer le nom de classe d''aprs le fichier .class +jsp.error.classname=Impossible de d�terminer le nom de classe d''apr�s le fichier .class jsp.warning.bad.type=Attention: mauvais type dans le fichier .class -jsp.error.data.file.write=Erreur lors de l''criture du fichier de donnes +jsp.error.data.file.write=Erreur lors de l''�criture du fichier de donn�es #Directive de Page: valeur incorrecte pour pageEncoding jsp.error.page.invalid.contenttype=Directive de Page: valeur incorrecte pour contentType jsp.error.page.invalid.session=Directive de Page: valeur incorrecte pour session @@ -57,25 +59,25 @@ jsp.error.page.invalid.autoflush=Directive de Page: valeur incorrecte pour autoF jsp.error.page.invalid.isthreadsafe=Directive de Page: valeur incorrecte pour isThreadSafe jsp.error.page.invalid.info=Directive de Page: valeur incorrecte pour info jsp.error.page.invalid.iserrorpage=Directive de Page: valeur incorrecte pour isErrorPage -jsp.error.page.defafteruse.language=Directive de Page: on ne peut dfinir language aprs un scriptlet +jsp.error.page.defafteruse.language=Directive de Page: on ne peut d�finir language apr�s un scriptlet jsp.error.page.nomapping.language=Directive de Page: Pas de correspondance pour language: -jsp.error.page.bad_b_and_a_combo=Directive de Page: combinaison illgale de buffer=\"none\" && autoFlush=\"false\" -jsp.error.not.impl.taglib=Internal error: Tag extensions non implments +jsp.error.page.bad_b_and_a_combo=Directive de Page: combinaison ill�gale de buffer=\"none\" && autoFlush=\"false\" +jsp.error.not.impl.taglib=Internal error: Tag extensions non impl�ment�s jsp.error.include.missing.file=l''argument fichier (file) pour l''inclusion (include) est absent jsp.error.include.bad.file=Mauvais argument fichier (file) pour l''inclusion (include) jsp.error.include.exception=Impossible d''inclure (include) {0} -jsp.error.stream.closed=Flux ferm +jsp.error.stream.closed=Flux ferm� jsp.error.invalid.forward=Tag forward incorrect -jsp.error.unknownException=Erreur non traite! Vous devriez penser utiliser une page d''erreur \ -pour rapporter ce type d''erreur plus lgamment +jsp.error.unknownException=Erreur non trait�e! Vous devriez penser � utiliser une page d''erreur \ +pour rapporter ce type d''erreur plus �l�gamment jsp.error.invalid.directive=Directive incorrecte -jsp.error.directive.istagfile=La directive {0} ne peut tre utilise dans un fichier tag -jsp.error.directive.isnottagfile=La directive {0} ne peut tre utilise que dans un fichier tag -jsp.error.tagfile.tld.name=L''attribut \"name\" de la directive tag contient la valeur {0} alors que le tag \"name\" de l''lment \"tag-file\" dans le TLD est {1} -jsp.error.action.istagfile=L''action {0} ne peut tre utilise dans un fichier tag -jsp.error.action.isnottagfile=L''action {0} ne peut tre utilise que dans un fichier tag -jsp.error.unterminated=Tag {0} non termin -jsp.error.usebean.notinsamefile=le tag useBean doit commenc et finir dans le mme fichier physique +jsp.error.directive.istagfile=La directive {0} ne peut �tre utilis�e dans un fichier tag +jsp.error.directive.isnottagfile=La directive {0} ne peut �tre utilis�e que dans un fichier tag +jsp.error.tagfile.tld.name=L''attribut \"name\" de la directive tag contient la valeur {0} alors que le tag \"name\" de l''�l�ment \"tag-file\" dans le TLD est {1} +jsp.error.action.istagfile=L''action {0} ne peut �tre utilis�e dans un fichier tag +jsp.error.action.isnottagfile=L''action {0} ne peut �tre utilis�e que dans un fichier tag +jsp.error.unterminated=Tag {0} non termin� +jsp.error.usebean.notinsamefile=le tag useBean doit commenc� et finir dans le m�me fichier physique jsp.error.loadclass.taghandler=Impossible de charger la classe {0} jsp.error.unable.compile=Impossible de compiler la classe pour la JSP jsp.error.unable.load=Impossible de charger la classe pour la JSP @@ -84,63 +86,63 @@ jsp.error.mandatory.attribute={0}: L''attribut obligatoire {1} est manquant jsp.engine.info=Moteur Jasper JSP 2.0 jsp.error.invalid.expression="{0}" contient d''incorrecte(s) expression(s): {1} jsp.error.invalid.attribute={0}: Attribut incorrect: {1} -jsp.error.usebean.class.notfound=Classe: {0} non trouve +jsp.error.usebean.class.notfound=Classe: {0} non trouv�e jsp.error.file.cannot.read=Impossible de lire le fichier: {0} -jsp.error.file.already.registered=Inclusion rcursive du fichier {0} -jsp.error.file.not.registered=Le fichier {0} n''apparat pas dans l''inclusion (include) -jsp.error.quotes.unterminated=guillemets non termins -jsp.error.attr.quoted=La valeur de l''attribute doit tre entre guillemets +jsp.error.file.already.registered=Inclusion r�cursive du fichier {0} +jsp.error.file.not.registered=Le fichier {0} n''appara�t pas dans l''inclusion (include) +jsp.error.quotes.unterminated=guillemets non termin�s +jsp.error.attr.quoted=La valeur de l''attribute doit �tre entre guillemets jsp.error.attr.novalue=L''attribute {0} n''a pas de valeur -jsp.error.tag.attr.unterminated=Liste de tag d''attribut non termine +jsp.error.tag.attr.unterminated=Liste de tag d''attribut non termin�e jsp.error.param.noname=Pas de nom dans le tag PARAM jsp.error.param.novalue=Pas de valeur dans le tag PARAM -jsp.error.beans.nullbean=Tentative d''opration bean sur un objet nul. -jsp.error.beans.nobeaninfo=Pas d''information bean (BeanInfo) pour le bean de type ''{0}'' n''a pu tre trouve, la classe n''existe probablement pas. -jsp.error.beans.introspection=Une exception s''est produite lors de l''introspection de la mthode read de la proprit ''{0}'' dans le bean de type ''{1}'':\n{2} -jsp.error.beans.nomethod=Impossible de trouver une mthode pour lire la proprit ''{0}'' dans le bean de type ''{1}'' -jsp.error.beans.nomethod.setproperty=Impossible de trouver une mthode pour mettre jour la proprit ''{0}'' de type ''{1}''dans le bean de type ''{2}'' -jsp.error.beans.noproperty==Impossible de trouver de l''information sur la proprit ''{0}'' dans le bean de type ''{1}'' -jsp.error.beans.setproperty.noindexset=Impossible de renseigner la proprit indxe +jsp.error.beans.nullbean=Tentative d''op�ration bean sur un objet nul. +jsp.error.beans.nobeaninfo=Pas d''information bean (BeanInfo) pour le bean de type ''{0}'' n''a pu �tre trouv�e, la classe n''existe probablement pas. +jsp.error.beans.introspection=Une exception s''est produite lors de l''introspection de la m�thode read de la propri�t� ''{0}'' dans le bean de type ''{1}'':\n{2} +jsp.error.beans.nomethod=Impossible de trouver une m�thode pour lire la propri�t� ''{0}'' dans le bean de type ''{1}'' +jsp.error.beans.nomethod.setproperty=Impossible de trouver une m�thode pour mettre � jour la propri�t� ''{0}'' de type ''{1}''dans le bean de type ''{2}'' +jsp.error.beans.noproperty==Impossible de trouver de l''information sur la propri�t� ''{0}'' dans le bean de type ''{1}'' +jsp.error.beans.setproperty.noindexset=Impossible de renseigner la propri�t� ind�x�e jsp.error.include.tag=Tag jsp:include incorrect jsp.error.include.noflush=jsp:include doit avoir \"flush=true\" jsp.error.include.badflush=jsp:include page=\"...\" flush=\"true\" est la seule combinaison valide dans JSP 1.0 -jsp.error.attempt_to_clear_flushed_buffer=Erreur: Tentative d''effacement d''un tampon qui a dj t vidang (flush) -jsp.error.overflow=Erreur: Dpassement de capacit du tampon JSP -jsp.error.paramexpected=Le tag \"param\" est attendu avec les attributs \"name\" et \"value\" aprs le tag \"params\". -jsp.error.closeindividualparam=Le tag param doit tre ferm avec \"/>\" -jsp.error.closeparams=Le tag param tag doit tre ferm avec /params -jsp.error.plugin.notype=type non dclar dans jsp:plugin -jsp.error.plugin.nocode=code non dclar dans jsp:plugin +jsp.error.attempt_to_clear_flushed_buffer=Erreur: Tentative d''effacement d''un tampon qui a d�j� �t� vidang� (flush) +jsp.error.overflow=Erreur: D�passement de capacit� du tampon JSP +jsp.error.paramexpected=Le tag \"param\" est attendu avec les attributs \"name\" et \"value\" apr�s le tag \"params\". +jsp.error.closeindividualparam=Le tag param doit �tre ferm� avec \"/>\" +jsp.error.closeparams=Le tag param tag doit �tre ferm� avec /params +jsp.error.plugin.notype=type non d�clar� dans jsp:plugin +jsp.error.plugin.nocode=code non d�clar� dans jsp:plugin jsp.error.ise_on_clear=Il est interdit d''utiliser clear() quand la taille de tampon== 0 jsp.error.setproperty.beanNotFound=setProperty: le Bean {0} est introuvable jsp.error.getproperty.beanNotFound=getProperty: le Bean {0} est introuvable jsp.error.setproperty.ClassNotFound=setProperty: la Classe {0} est introuvable jsp.error.setproperty.invalidSyntax=setProperty: On ne peut avoir de valeur non nulle quand property=* jsp.error.setproperty.beanInfoNotFound=setproperty: beanInfo pour le bean {0} est introuvable -jsp.error.setproperty.paramOrValue=setProperty: param ou value doit tre prsent -jsp.error.setproperty.arrayVal=setProperty: on ne peut renseigner les array property {0} au travers d''une valeur chane constante (string constant value) -jsp.warning.keepgen=Attention: Valeur incorrecte pour le initParam keepgenerated. Utilisation de la valeur par dfaut \"false\" -jsp.warning.enablePooling=Attention: Valeur incorrecte pour le initParam enablePooling. Utilisation de la valeur par dfaut \"true\" -jsp.warning.mappedFile=Attention: Valeur incorrecte pour le initParam mappedFile. Utilisation de la valeur par dfaut \"false\" -jsp.warning.sendErrToClient=Attention: Valeur incorrecte pour le initParam sendErrToClient. Utilisation de la valeur par dfaut \"false\" -jsp.warning.classDebugInfo=Attention: Valeur incorrecte pour le initParam classdebuginfo. Utilisation de la valeur par dfaut \"false\" -jsp.warning.checkInterval=Attention: Valeur incorrecte pour le initParam checkInterval. Utilisation de la valeur par dfaut \"300\" secondes -jsp.warning.development=Attention: Valeur incorrecte pour le initParam development. Utilisation de la valeur par dfaut \"true\" -jsp.warning.reloading=Attention: Valeur incorrecte pour le initParam reloading. Utilisation de la valeur par dfaut \"true\" +jsp.error.setproperty.paramOrValue=setProperty: param ou value doit �tre pr�sent +jsp.error.setproperty.arrayVal=setProperty: on ne peut renseigner les array property {0} au travers d''une valeur cha�ne constante (string constant value) +jsp.warning.keepgen=Attention: Valeur incorrecte pour le initParam keepgenerated. Utilisation de la valeur par d�faut \"false\" +jsp.warning.enablePooling=Attention: Valeur incorrecte pour le initParam enablePooling. Utilisation de la valeur par d�faut \"true\" +jsp.warning.mappedFile=Attention: Valeur incorrecte pour le initParam mappedFile. Utilisation de la valeur par d�faut \"false\" +jsp.warning.sendErrToClient=Attention: Valeur incorrecte pour le initParam sendErrToClient. Utilisation de la valeur par d�faut \"false\" +jsp.warning.classDebugInfo=Attention: Valeur incorrecte pour le initParam classdebuginfo. Utilisation de la valeur par d�faut \"false\" +jsp.warning.checkInterval=Attention: Valeur incorrecte pour le initParam checkInterval. Utilisation de la valeur par d�faut \"300\" secondes +jsp.warning.development=Attention: Valeur incorrecte pour le initParam development. Utilisation de la valeur par d�faut \"true\" +jsp.warning.reloading=Attention: Valeur incorrecte pour le initParam reloading. Utilisation de la valeur par d�faut \"true\" jsp.warning.reloading= jsp.error.badtaglib=Impossible d''ouvrir le taglibrary {0} : {1} -jsp.error.badGetReader=Impossible de crer un lecteur (reader) quand le flux n''utilse pas des tampons (not buffered) -jsp.warning.unknown.element.in.TLD=Attention: Elment inconnu {0} dans le TLD -jsp.warning.unknown.element.in.tag=Attention: Elment inconnu {0} dans le tag +jsp.error.badGetReader=Impossible de cr�er un lecteur (reader) quand le flux n''utilse pas des tampons (not buffered) +jsp.warning.unknown.element.in.TLD=Attention: El�ment inconnu {0} dans le TLD +jsp.warning.unknown.element.in.tag=Attention: El�ment inconnu {0} dans le tag jsp.warning.unknown.element.in.tagfile=Attention: El?ment inconnu {0} dans le tag-file -jsp.warning.unknown.element.in.attribute=Attention: Elment inconnu {0} dans l''attribute +jsp.warning.unknown.element.in.attribute=Attention: El�ment inconnu {0} dans l''attribute jsp.error.more.than.one.taglib=plus d''un taglib dans le TLD: {0} jsp.error.teiclass.instantiation=Impossible de charger ou d''instancier la classe TagExtraInfo: {0} -jsp.error.non_null_tei_and_var_subelems=Le tag {0} possde une ou plusieurs variables subelements et une classe TagExtraInfo qui retourne une ou plusieurs VariableInfo -jsp.error.parse.error.in.TLD=Erreur d''valuation (parse) dans le descripteur de librairie de tag (TLD): {0} +jsp.error.non_null_tei_and_var_subelems=Le tag {0} poss�de une ou plusieurs variables subelements et une classe TagExtraInfo qui retourne une ou plusieurs VariableInfo +jsp.error.parse.error.in.TLD=Erreur d''�valuation (parse) dans le descripteur de librairie de tag (TLD): {0} jsp.error.unable.to.open.TLD=Impossible d''ouvrir le descripteur de librairie de tag (TLD): {0} jsp.buffer.size.zero=Taille du tampon <= 0 -jsp.error.file.not.found=Le fichier \"{0}\" n''a pas t trouv +jsp.error.file.not.found=Le fichier \"{0}\" n''a pas �t� trouv� jsp.message.copyinguri=Copie de {0} dans {1} jsp.message.htmlcomment=\nEffacement des commentaires: \t{0} jsp.message.handling_directive=\nDirective de gestion (handling): {0}\t{1} @@ -149,54 +151,54 @@ jsp.message.package_name_is=Le nom de package est: {0} jsp.message.class_name_is=Le nom de classe est: {0} jsp.message.java_file_name_is=Le nom de fichier Java est: {0} jsp.message.class_file_name_is=Le nom de fichier Class est: {0} -jsp.message.accepted=Accept {0} {1} -jsp.message.adding_jar=Ajout du jar {0} mon classpath +jsp.message.accepted=Accept� {0} � {1} +jsp.message.adding_jar=Ajout du jar {0} � mon classpath jsp.message.compiling_with=Compilation avec: {0} jsp.message.template_text=texte template -jsp.error.missing_attribute=D''aprs le TLD l''attribut {0} est obligatoire pour le tag {1} -jsp.error.bad_attribute=L''attribut {0} est incorrect pour le tag {1} d''aprs la TLD indique +jsp.error.missing_attribute=D''apr�s le TLD l''attribut {0} est obligatoire pour le tag {1} +jsp.error.bad_attribute=L''attribut {0} est incorrect pour le tag {1} d''apr�s la TLD indiqu�e jsp.error.webxml_not_found=Impossible de localiser le fichier web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd ] [-keepgenerated] \ <.jsp files> jsp.message.cp_is=Le Classpath {0} est: {1} jsp.error.unable.to_load_taghandler_class=Impossible de charger la classe gestionnaire de tag {0} car {1} -jsp.error.unable.to_find_method=Impossible de trouver une mthode de mise jour pour l''attribut: {0} -jsp.error.unable.to_convert_string=Impossible de convertir une chane vers {0} pour l''attribut {1} +jsp.error.unable.to_find_method=Impossible de trouver une m�thode de mise � jour pour l''attribut: {0} +jsp.error.unable.to_convert_string=Impossible de convertir une cha�ne vers {0} pour l''attribut {1} jsp.error.unable.to_introspect=Impossible d''introspecter la classe gestionnaire de tag : {0} car {1} -jsp.error.bad_tag=Aucun tag {0} dans la librairie de tag importe avec le prfixe {1} -jsp.error.bad_string_Character=Impossible d''extraire un caractre depuis un tableau vide -jsp.error.bad_string_char=Impossible d''extraire un caractre depuis un tableau vide -jsp.warning.compiler.class.cantcreate=Impossible de crer une instance de classe plugin pour le compilateur indiqu {0} due to {1}. Utilisation par dfaut du Compilateur Java Sun. -jsp.warning.compiler.class.notfound=La classe plugin de compilateur {0} est introuvable. Utilisation par dfaut du Compilateur Java Sun. -jsp.warning.compiler.path.notfound=le chemin de compilateur indiqu {0} est introuvable. Utilisation par dfaut du chemin systme (system PATH). -jsp.error.jspc.uriroot_not_dir=L''option -uriroot doit indiqu un rpertoire dj existant -jspc.implicit.uriRoot=uriRoot rgl implicitement "{0}" +jsp.error.bad_tag=Aucun tag {0} dans la librairie de tag import�e avec le pr�fixe {1} +jsp.error.bad_string_Character=Impossible d''extraire un caract�re depuis un tableau vide +jsp.error.bad_string_char=Impossible d''extraire un caract�re depuis un tableau vide +jsp.warning.compiler.class.cantcreate=Impossible de cr�er une instance de classe plugin pour le compilateur indiqu� {0} due to {1}. Utilisation par d�faut du Compilateur Java Sun. +jsp.warning.compiler.class.notfound=La classe plugin de compilateur {0} est introuvable. Utilisation par d�faut du Compilateur Java Sun. +jsp.warning.compiler.path.notfound=le chemin de compilateur indiqu� {0} est introuvable. Utilisation par d�faut du chemin syst�me (system PATH). +jsp.error.jspc.uriroot_not_dir=L''option -uriroot doit indiqu� un r�pertoire d�j� existant +jspc.implicit.uriRoot=uriRoot r�gl� implicitement � "{0}" jspc.usage=Usage: jspc [--] \n\ -o les fichiers jsp sont n''importe quel nombre de:\n\ -\ Un fichier valuer (parser) comme page jsp\n\ -\ -webapp

Un rpertoire contenant une application web, toutes les pages jsp\n\ -\ seront rcursivement values\n\ -o les options comprennet:\n\ -\ -q Mode silencieux (identique -v0)\n\ -\ -v[#] Mode bavard (Le nombre optionnel indique le niveau, 2 par dfaut)\n\ +o� les fichiers jsp sont n''importe quel nombre de:\n\ +\ Un fichier � �valuer (parser) comme page jsp\n\ +\ -webapp Un r�pertoire contenant une application web, toutes les pages jsp\n\ +\ seront r�cursivement �valu�es\n\ +o� les options comprennet:\n\ +\ -q Mode silencieux (identique � -v0)\n\ +\ -v[#] Mode bavard (Le nombre optionnel indique le niveau, 2 par d�faut)\n\ \ -d Dossier de sortie\n\ \ -dd Dossier de sortie literal. (Les dossiers de paquets ne seront pas construits)\n\ -\ -l Sortie du nom la page JSP en cas d''chec\n\ -\ -s Sortie du nom la page JSP en cas de succs\n\ +\ -l Sortie du nom la page JSP en cas d''�chec\n\ +\ -s Sortie du nom la page JSP en cas de succ�s\n\ \ -p Nom du paquet cible\n\ \ -c Nom d'un nom de classe cible\n\ -\ (s''applique seulement la premire page JSP)\n\ -\ -mapped Gnre des appels write() spars pour chaque ligne HTML dans la JSP\n\ -\ -die[#] Gnre un code d''erreur de retour (#) en cas d''erreurs fatales.\n\ -\ Si le nombre est absent ou non numrique, le dfaut est 1.\n\ -\ -uribase Le rpertoire uri de compilations relatif\n\ -\ (Par dfaut "/")\n\ -\ -uriroot The rpertoire racine contre lequel les fichiers seront rsolus\n\ -\ , (Par dfaut le rpertoire depuis lequel jspc est appel)\n\ -\ -webinc Cration d''association partielle de servlet pour l''option -webapp.\n\ -\ -webxml Cration d''un fichier web.xml complet pour l''option -webapp.\n\ +\ (s''applique seulement � la premi�re page JSP)\n\ +\ -mapped G�n�re des appels � write() s�par�s pour chaque ligne HTML dans la JSP\n\ +\ -die[#] G�n�re un code d''erreur de retour (#) en cas d''erreurs fatales.\n\ +\ Si le nombre est absent ou non num�rique, le d�faut est 1.\n\ +\ -uribase Le r�pertoire uri de compilations relatif\n\ +\ (Par d�faut "/")\n\ +\ -uriroot The r�pertoire racine contre lequel les fichiers seront r�solus\n\ +\ , (Par d�faut le r�pertoire depuis lequel jspc est appel�)\n\ +\ -webinc Cr�ation d''association partielle de servlet pour l''option -webapp.\n\ +\ -webxml Cr�ation d''un fichier web.xml complet pour l''option -webapp.\n\ \ -ieplugin Le classid du Plugin Java Plugin pour Internet Explorer\n\ -\ -sax2 Le nom de classe du Driver SAX 2.0 utiliser\n\ +\ -sax2 Le nom de classe du Driver SAX 2.0 � utiliser\n\ \ -trimSpaces Trim spaces in template text between actions, directives\n\ \ -javaEncoding Set the encoding charset for Java classes (default UTF-8)\n\ \ -source Set the -source argument to the compiler (default 1.4)\n\ @@ -208,7 +210,7 @@ jspc.webxml.header=\n\ \ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"\n\ \ "http://java.sun.com/dtd/web-app_2_3.dtd">\n\ \n\ \n\ \n @@ -217,7 +219,7 @@ jspc.webxml.footer=\n\ \n jspc.webinc.header=\n\ \n @@ -227,83 +229,83 @@ All session-config, mime-mapping, welcome-file-list, error-page, taglib,\n\ resource-ref, security-constraint, login-config, security-role,\n\ env-entry, and ejb-ref elements should follow this fragment.\n\ -->\n -jspc.error.jasperException=erreur-le fichier ''{0}'' a gnr l''exception d''valuation suivante: {1} -jspc.error.generalException=ERREUR-le fichier ''{0}'' a gnr l''exception gnrale suivante: +jspc.error.jasperException=erreur-le fichier ''{0}'' a g�n�r� l''exception d''�valuation suivante: {1} +jspc.error.generalException=ERREUR-le fichier ''{0}'' a g�n�r� l''exception g�n�rale suivante: jspc.error.fileDoesNotExist=L''argument fichier ''{0}'' n''existe pas -jspc.error.emptyWebApp=-webapp ncessite sa suite un argument fichier -jsp.error.library.invalid=La page JSP page est incorrecte d''aprs la librairie {0}: {1} +jspc.error.emptyWebApp=-webapp n�cessite � sa suite un argument fichier +jsp.error.library.invalid=La page JSP page est incorrecte d''apr�s la librairie {0}: {1} jsp.error.tlvclass.instantiation=Impossible de charger ou d''instancier la classe TagLibraryValidator: {0} jsp.error.tlv.invalid.page=Message d''erreurs de validation provenant du TagLibraryValidator pour {0} en {1} jsp.error.tei.invalid.attributes=Message d''erreurs de validation provenant du TagExtraInfo pour {0} -jsp.parser.sax.propertynotsupported=Proprit SAX non supporte: {0} -jsp.parser.sax.propertynotrecognized=Proprit SAX non reconnue: {0} -jsp.parser.sax.featurenotsupported=Fonctionnalit SAX non supporte: {0} -jsp.parser.sax.featurenotrecognized=Fonctionnalit SAX non reconnue: {0} -jsp.error.no.more.content=Fin de contenu alors que l''valution n''tait pas termine: erreur de tags imbriqus? -jsp.error.parse.xml=Erreur d''valuation XML sur le fichier {0} -jsp.error.parse.xml.line=Erreur d''valuation XML sur le fichier {0}: (ligne {1}, col {2}) -jsp.error.parse.xml.scripting.invalid.body=Le corps de l''lment {0} ne doit contenir aucun lments XML +jsp.parser.sax.propertynotsupported=Propri�t� SAX non support�e: {0} +jsp.parser.sax.propertynotrecognized=Propri�t� SAX non reconnue: {0} +jsp.parser.sax.featurenotsupported=Fonctionnalit� SAX non support�e: {0} +jsp.parser.sax.featurenotrecognized=Fonctionnalit� SAX non reconnue: {0} +jsp.error.no.more.content=Fin de contenu alors que l''�valution n''�tait pas termin�e: erreur de tags imbriqu�s? +jsp.error.parse.xml=Erreur d''�valuation XML sur le fichier {0} +jsp.error.parse.xml.line=Erreur d''�valuation XML sur le fichier {0}: (ligne {1}, col {2}) +jsp.error.parse.xml.scripting.invalid.body=Le corps de l''�l�ment {0} ne doit contenir aucun �l�ments XML jsp.error.internal.tldinit=Exception lors de l'initialisation de TldLocationsCache: {0} jsp.error.internal.filenotfound=Erreur interne: Fichier {0} introuvable -jsp.error.internal.evaluator_not_found=Erreur interne: Impossible de charger l''valuateur d''expression +jsp.error.internal.evaluator_not_found=Erreur interne: Impossible de charger l''�valuateur d''expression jsp.error.parse.xml.invalidPublicId=PUBLIC ID invalide: {0} jsp.error.include.flush.invalid.value=Valeur incorrecte pour l''attribut flush: {0} -jsp.error.unsupported.encoding=Encodage non support: {0} +jsp.error.unsupported.encoding=Encodage non support�: {0} jsp.warning.unknown.element.in.variable=Attention: Element inconnu {0} dans la variable -tld.error.variableNotAllowed=Ceci est une erreur pour le tag qui possde une ou plusieurs variables subelements pour avoir une classe TagExtraInfo qui retourne un objet non-nul. -jsp.error.tldInWebDotXmlNotFound=Ne peut trouver le TLD {1} pour l''URI {0} indique dans le fichier web.xml -jsp.error.taglibDirective.absUriCannotBeResolved=L''uri absolue: {0} ne peut tre rsolu dans le fichier web.xml ou dans les fichiers jar dploys avec cette application -jsp.error.taglibDirective.missing.location=Ni l''uri' ni l''attribut 'tagdir' n''ont t indiqus dans la directive taglib -jsp.error.invalid.tagdir=Le rpertoire du fichier Tag {0} ne commence pas par \"/WEB-INF/tags\" -jsp.error.unterminated.user.tag=Tag user-defined non termin: Le tag de fermeture {0} est introuvable found ou incorrectement imbriqu -#jspx.error.templateDataNotInJspCdata=Erreur de validation: l''lment <{0}> ne peut avoir de donnes template. Les donnes Template doivent tre encapsules l''intrieur d''un lment <jsp:cdata>. [JSP1.2 PFD section 5.1.9]\nDonne Template en erreur: {1} -jspx.error.templateDataNotInJspCdata=Erreur de validation: l''lment <{0}> ne peut avoir de donnes template. Les donnes Template doivent tre encapsules l''intrieur d''un lment <jsp:text>. [JSP1.2 PFD section 5.1.9]\nDonne Template en erreur: {1} +tld.error.variableNotAllowed=Ceci est une erreur pour le tag qui poss�de une ou plusieurs variables subelements pour avoir une classe TagExtraInfo qui retourne un objet non-nul. +jsp.error.tldInWebDotXmlNotFound=Ne peut trouver le TLD {1} pour l''URI {0} indiqu�e dans le fichier web.xml +jsp.error.taglibDirective.absUriCannotBeResolved=L''uri absolue: {0} ne peut �tre r�solu dans le fichier web.xml ou dans les fichiers jar d�ploy�s avec cette application +jsp.error.taglibDirective.missing.location=Ni l''uri' ni l''attribut 'tagdir' n''ont �t� indiqu�s dans la directive taglib +jsp.error.invalid.tagdir=Le r�pertoire du fichier Tag {0} ne commence pas par \"/WEB-INF/tags\" +jsp.error.unterminated.user.tag=Tag user-defined non termin�: Le tag de fermeture {0} est introuvable found ou incorrectement imbriqu� +#jspx.error.templateDataNotInJspCdata=Erreur de validation: l''�l�ment <{0}> ne peut avoir de donn�es template. Les donn�es Template doivent �tre encapsul�es � l''int�rieur d''un �l�ment <jsp:cdata>. [JSP1.2 PFD section 5.1.9]\nDonn�e Template en erreur: {1} +jspx.error.templateDataNotInJspCdata=Erreur de validation: l''�l�ment <{0}> ne peut avoir de donn�es template. Les donn�es Template doivent �tre encapsul�es � l''int�rieur d''un �l�ment <jsp:text>. [JSP1.2 PFD section 5.1.9]\nDonn�e Template en erreur: {1} #Erreur lors du traitement du fichier jar de la taglib {0}: {1} -jsp.error.taglib.reserved.prefix=Le prfixe taglib {0} est rserv -jsp.error.invalid.javaEncoding=Encodage java incorrect. Essai de {0} puis de {1}. Les deux ont chou. -jsp.error.needAlternateJavaEncoding=L''encodage java par dfaut {0} est incorrect sur votre environnement java. Une alternative peut tre indique via le paramtre 'javaEncoding' de la JspServlet. -#Erreur lors de la compilation, utilis pour la ligne jsp des messages d''erreur -jsp.error.single.line.number=Une erreur s''est produite la ligne: {0} dans le fichier jsp: {1} +jsp.error.taglib.reserved.prefix=Le pr�fixe taglib {0} est r�serv� +jsp.error.invalid.javaEncoding=Encodage java incorrect. Essai de {0} puis de {1}. Les deux ont �chou�. +jsp.error.needAlternateJavaEncoding=L''encodage java par d�faut {0} est incorrect sur votre environnement java. Une alternative peut �tre indiqu�e via le param�tre 'javaEncoding' de la JspServlet. +#Erreur lors de la compilation, utilis� pour la ligne jsp des messages d''erreur +jsp.error.single.line.number=Une erreur s''est produite � la ligne: {0} dans le fichier jsp: {1} jsp.error.multiple.line.number=\n\nUne erreur s''est produite entre les lignes: {0} et {1} dans le fichier jsp: {2}\n\n -jsp.error.corresponding.servlet=Erreur de servlet gnre:\n -jsp.error.empty.body.not.allowed=Un corps vide n'est pas autoris pour {0} -jsp.error.jspbody.required=Doit utiliser jsp:body pour indiqu le corps de tag body de {0} si jsp:attribute est utilis. +jsp.error.corresponding.servlet=Erreur de servlet g�n�r�e:\n +jsp.error.empty.body.not.allowed=Un corps vide n'est pas autoris� pour {0} +jsp.error.jspbody.required=Doit utiliser jsp:body pour indiqu� le corps de tag body de {0} si jsp:attribute est utilis�. jsp.error.jspbody.emptybody.only=Le tag {0} ne peut avoir que jsp:attribute dans son corps. -jsp.error.no.scriptlets=Les lments de Scripting ( <%!, Date: Sat, 21 Oct 2017 11:24:47 +0200 Subject: [PATCH 0199/2288] Adds missing header with license --- apps/pom.xml | 2 - apps/rest-showcase/pom.xml | 2 - .../src/main/resources/log4j2.xml | 20 ++++ .../src/main/resources/struts.xml | 2 - .../src/main/webapp/WEB-INF/web.xml | 21 +++- apps/showcase/pom.xml | 2 - apps/showcase/src/main/resources/log4j2.xml | 20 ++++ ...-lotsOfRichtexteditorSubmit-validation.xml | 22 +++- .../action/EmployeeAction-validation.xml | 20 ++++ .../action/SkillAction-validation.xml | 20 ++++ .../FileUploadAction-validation.xml | 22 +++- .../person/NewPersonAction-validation.xml | 20 ++++ .../showcase/person/Person-validation.xml | 20 ++++ .../IteratorGeneratorTagDemo-validation.xml | 22 +++- ...ClientSideValidationExample-validation.xml | 21 +++- ...bmitFieldValidatorsExamples-validation.xml | 21 +++- ...tNonFieldValidatorsExamples-validation.xml | 21 +++- .../validation/QuizAction-validation.xml | 21 +++- ...plication-submitApplication-validation.xml | 20 ++++ .../User-userContext-validation.xml | 21 +++- ...itVisitorValidatorsExamples-validation.xml | 21 +++- .../main/resources/struts-actionchaining.xml | 20 ++++ .../src/main/resources/struts-conversion.xml | 20 ++++ .../main/resources/struts-filedownload.xml | 20 ++++ .../src/main/resources/struts-fileupload.xml | 20 ++++ .../src/main/resources/struts-freemarker.xml | 20 ++++ .../src/main/resources/struts-hangman.xml | 20 ++++ .../src/main/resources/struts-interactive.xml | 20 ++++ .../main/resources/struts-model-driven.xml | 20 ++++ .../src/main/resources/struts-person.xml | 20 ++++ .../src/main/resources/struts-tags-non-ui.xml | 20 ++++ .../src/main/resources/struts-tags-ui.xml | 20 ++++ .../src/main/resources/struts-tags.xml | 20 ++++ .../src/main/resources/struts-tiles.xml | 20 ++++ .../src/main/resources/struts-token.xml | 20 ++++ .../src/main/resources/struts-validation.xml | 20 ++++ .../src/main/resources/struts-wait.xml | 20 ++++ .../src/main/resources/struts-xslt.xml | 21 +++- apps/showcase/src/main/resources/struts.xml | 21 +++- .../webapp/WEB-INF/applicationContext.xml | 20 ++++ .../src/main/webapp/WEB-INF/decorators.xml | 21 +++- apps/showcase/src/main/webapp/WEB-INF/dwr.xml | 21 +++- .../src/main/webapp/WEB-INF/sitemesh.xml | 20 ++++ .../src/main/webapp/WEB-INF/tiles.xml | 3 +- .../src/main/webapp/WEB-INF/validation.xml | 21 +++- apps/showcase/src/main/webapp/WEB-INF/web.xml | 22 +++- assembly/pom.xml | 20 ++++ assembly/src/main/assembly/all.xml | 3 - assembly/src/main/assembly/apps.xml | 2 - assembly/src/main/assembly/docs.xml | 3 - assembly/src/main/assembly/lib.xml | 3 - assembly/src/main/assembly/min-lib.xml | 3 - assembly/src/main/assembly/src.xml | 3 - assembly/src/main/resources/build.xml | 22 +++- bom/pom.xml | 20 ++++ bundles/admin/pom.xml | 20 ++++ bundles/admin/src/main/resources/struts.xml | 38 +++---- bundles/demo/pom.xml | 20 ++++ .../META-INF/spring/applicationContext.xml | 20 ++++ bundles/demo/src/main/resources/struts.xml | 20 ++++ bundles/pom.xml | 2 - core/pom.xml | 2 - .../xwork2/validator/validators/default.xml | 20 ++++ core/src/main/resources/struts-default.xml | 2 - core/src/main/resources/xwork-default.xml | 20 ++++ .../src/test/resources/XSLTResultTest-val.xml | 2 - .../xwork2/ModelDrivenAction-validation.xml | 20 ++++ .../SimpleAction-some-alias-validation.xml | 20 ++++ .../SimpleAction-subproperty-validation.xml | 20 ++++ .../xwork2/SimpleAction-validation.xml | 20 ++++ ...impleAction-validationAlias-validation.xml | 20 ++++ .../TestBean-anotherContext-validation.xml | 20 ++++ .../xwork2/TestBean-badtest-validation.xml | 20 ++++ .../TestBean-beanMessageBundle-validation.xml | 20 ++++ ...stBean-expressionValidation-validation.xml | 20 ++++ .../xwork2/TestBean-validation.xml | 20 ++++ ...Bean-visitorChildValidation-validation.xml | 20 ++++ .../TestBean-visitorValidation-validation.xml | 20 ++++ .../xwork2/TestChildBean-validation.xml | 20 ++++ .../ValidationOrderAction-validation.xml | 21 +++- .../loadorder1/xwork-test-load-order.xml | 20 ++++ .../loadorder2/xwork-test-load-order.xml | 20 ++++ .../loadorder3/xwork-test-load-order.xml | 20 ++++ .../xwork2/config/providers/xwork- test.xml | 20 ++++ .../xwork-include-after-package-2.xml | 20 ++++ .../providers/xwork-include-after-package.xml | 20 ++++ .../xwork-include-before-package-2.xml | 20 ++++ .../xwork-include-before-package.xml | 20 ++++ .../config/providers/xwork-include-parent.xml | 20 ++++ .../providers/xwork-test-action-invalid.xml | 20 ++++ ...rk-test-actions-packagedefaultclassref.xml | 20 ++++ .../config/providers/xwork-test-actions.xml | 20 ++++ .../providers/xwork-test-allowed-methods.xml | 20 ++++ .../providers/xwork-test-bad-inheritance.xml | 20 ++++ .../providers/xwork-test-basic-packages.xml | 20 ++++ .../providers/xwork-test-default-package.xml | 20 ++++ .../xwork-test-defaultclassref-package.xml | 20 ++++ .../xwork-test-envs-substitution.xml | 20 ++++ .../xwork-test-exception-mappings.xml | 20 ++++ .../xwork-test-global-result-inheritence.xml | 20 ++++ .../providers/xwork-test-include-wildcard.xml | 20 ++++ .../xwork-test-interceptor-defaultref.xml | 20 ++++ .../xwork-test-interceptor-inheritance.xml | 20 ++++ ...work-test-interceptor-param-overriding.xml | 20 ++++ .../xwork-test-interceptor-params.xml | 20 ++++ ...est-interceptor-stack-param-overriding.xml | 20 ++++ .../xwork-test-interceptors-basic.xml | 20 ++++ .../xwork-test-interceptors-spring.xml | 20 ++++ .../providers/xwork-test-invalid-file.xml | 20 ++++ .../providers/xwork-test-multilevel.xml | 20 ++++ .../xwork-test-package-inheritance.xml | 20 ++++ .../xwork-test-result-inheritance.xml | 20 ++++ .../providers/xwork-test-result-names.xml | 20 ++++ .../providers/xwork-test-result-types.xml | 21 +++- .../config/providers/xwork-test-results.xml | 20 ++++ .../providers/xwork-test-wildcard-1.xml | 20 ++++ .../providers/xwork-test-wildcard-2.xml | 20 ++++ .../providers/xwork-test-wildcard-include.xml | 20 ++++ .../xwork-unknownhandler-stack-empty.xml | 20 ++++ .../providers/xwork-unknownhandler-stack.xml | 20 ++++ .../xwork2/spring/actionContext-spring.xml | 20 ++++ .../xwork2/spring/actionContext-xwork.xml | 20 ++++ .../xwork2/spring/autowireContext.xml | 20 ++++ .../spring/resolverApplicationContext.xml | 20 ++++ .../xwork2/spring/xwork-autowire.xml | 20 ++++ .../xwork2/test/DataAware-validation.xml | 20 ++++ .../DataAware-validationAlias-validation.xml | 20 ++++ .../xwork2/test/DataAware2-validation.xml | 20 ++++ .../xwork2/test/Equidae-validation.xml | 20 ++++ .../xwork2/test/SimpleAction2-validation.xml | 20 ++++ ...mpleAction2-validationAlias-validation.xml | 20 ++++ .../xwork2/test/User-validation.xml | 20 ++++ .../xwork2/test/UserMarker-validation.xml | 20 ++++ .../util/location/xml-with-location.xml | 20 ++++ ...VisitorValidatorModelAction-validation.xml | 20 ++++ ...estAction-beanMessageBundle-validation.xml | 20 ++++ ...torTestAction-validateArray-validation.xml | 20 ++++ ...atorTestAction-validateList-validation.xml | 20 ++++ .../VisitorValidatorTestAction-validation.xml | 20 ++++ ...tion-visitorChildValidation-validation.xml | 20 ++++ ...estAction-visitorValidation-validation.xml | 20 ++++ ...tion-visitorValidationAlias-validation.xml | 20 ++++ .../validator/validator-parser-test.xml | 20 ++++ .../validator/validator-parser-test2.xml | 22 +++- .../validator/validator-parser-test3.xml | 20 ++++ .../validator/validator-parser-test4.xml | 20 ++++ .../validator/validator-parser-test5.xml | 20 ++++ .../validator/validator-parser-test6.xml | 20 ++++ .../xwork2/validator/validators-fail.xml | 20 ++++ core/src/test/resources/includeTest.xml | 20 ++++ core/src/test/resources/log4j2.xml | 20 ++++ core/src/test/resources/my-validators.xml | 20 ++++ .../src/test/resources/myOther-validators.xml | 20 ++++ .../apache/struts2/TestAction-validation.xml | 2 - .../struts2/dispatcher/ng/struts-no-op.xml | 2 - .../struts2/views/jsp/WW3090-struts.xml | 2 - .../ui/DoubleValidationAction-validation.xml | 20 ++++ .../jsp/ui/IntValidationAction-validation.xml | 20 ++++ .../struts2/views/jsp/ui/User-validation.xml | 20 ++++ .../struts-object-factory-result-builder.xml | 2 - core/src/test/resources/struts.xml | 2 - core/src/test/resources/validators.xml | 20 ++++ .../test/resources/xwork-class-param-test.xml | 20 ++++ core/src/test/resources/xwork-param-test.xml | 20 ++++ core/src/test/resources/xwork-proxyinvoke.xml | 20 ++++ core/src/test/resources/xwork-sample.xml | 20 ++++ core/src/test/resources/xwork-test-beans.xml | 20 ++++ .../src/test/resources/xwork-test-default.xml | 20 ++++ .../test/resources/xwork-test-validation.xml | 20 ++++ .../src/main/resources/struts-plugin.xml | 2 - .../test/resources/bean-validation-test.xml | 20 ++++ plugins/cdi/src/site/site.xml | 2 +- .../cdi/src/test/resources/META-INF/beans.xml | 20 ++++ plugins/cdi/src/test/resources/log4j2.xml | 20 ++++ plugins/config-browser/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/config-browser/src/site/site.xml | 2 +- plugins/convention/pom.xml | 20 ++++ .../src/main/resources/struts-plugin.xml | 2 - plugins/dwr/pom.xml | 2 - plugins/embeddedjsp/pom.xml | 2 - .../jasper/servlet/mbeans-descriptors.xml | 32 +++--- .../jasper/tagplugins/jstl/tagPlugins.xml | 32 +++--- .../src/main/resources/struts-plugin.xml | 2 - plugins/gxp/pom.xml | 20 ++++ .../gxp/src/main/resources/struts-plugin.xml | 21 +++- plugins/jasperreports/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/javatemplates/pom.xml | 38 +++---- .../src/main/resources/struts-plugin.xml | 40 ++++--- plugins/jfreechart/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/json/pom.xml | 2 - .../json/src/main/resources/struts-plugin.xml | 21 +++- plugins/junit/pom.xml | 2 - .../src/test/resources/applicationContext.xml | 38 +++---- .../struts-convention-configuration.xml | 2 - .../resources/struts-session-values-test.xml | 1 - .../junit/src/test/resources/struts-test.xml | 40 ++++--- plugins/junit/src/test/resources/struts.xml | 38 +++---- plugins/osgi/pom.xml | 20 ++++ .../src/main/resources/beanRefContext.xml | 20 ++++ .../osgi/src/main/resources/struts-plugin.xml | 21 +++- plugins/oval/pom.xml | 2 - .../oval/src/main/resources/struts-plugin.xml | 2 - .../SimpleFieldsXML-validation.xml | 20 ++++ .../SimpleFieldsXMLChild-validation.xml | 20 ++++ plugins/oval/src/test/resources/oval-test.xml | 20 ++++ plugins/pell-multipart/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/plexus/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/pom.xml | 2 - plugins/portlet-tiles/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/portlet/pom.xml | 20 ++++ .../src/main/resources/struts-plugin.xml | 2 - plugins/portlet/src/test/resources/log4j2.xml | 20 ++++ plugins/portlet/src/test/resources/struts.xml | 20 ++++ plugins/rest/pom.xml | 2 - .../rest/src/main/resources/struts-plugin.xml | 2 - plugins/sitegraph/pom.xml | 2 - .../org/apache/struts2/sitegraph/struts.xml | 2 - plugins/sitemesh/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - plugins/spring/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - ...ngObjectFactoryTest-applicationContext.xml | 2 - plugins/testng/pom.xml | 2 - plugins/tiles/pom.xml | 2 - .../src/main/resources/struts-plugin.xml | 2 - pom.xml | 20 ++++ src/etc/header.txt | 2 - src/main/idea/project.xml | 36 ------- src/main/idea/workspace.xml | 101 ------------------ 235 files changed, 3459 insertions(+), 428 deletions(-) delete mode 100644 src/main/idea/project.xml delete mode 100644 src/main/idea/workspace.xml diff --git a/apps/pom.xml b/apps/pom.xml index ffc4b1f055..e7e0fa6e8f 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -1,8 +1,6 @@ diff --git a/apps/rest-showcase/src/main/resources/struts.xml b/apps/rest-showcase/src/main/resources/struts.xml index 16d073978a..daf26d0768 100644 --- a/apps/rest-showcase/src/main/resources/struts.xml +++ b/apps/rest-showcase/src/main/resources/struts.xml @@ -1,8 +1,6 @@ diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml index 383eeb86f0..3d728f30c1 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml @@ -1,4 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction-validation.xml index a82f7654b1..2fb09bc77b 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction-validation.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction-validation.xml index 911e1fad31..0c0929ff2c 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction-validation.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/FileUploadAction-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/FileUploadAction-validation.xml index 989656e426..df2dd55d8e 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/FileUploadAction-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/fileupload/FileUploadAction-validation.xml @@ -1,5 +1,25 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/NewPersonAction-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/NewPersonAction-validation.xml index 6d7f85fe17..56a20829b7 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/NewPersonAction-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/NewPersonAction-validation.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml index 4d8a374b25..5532033638 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/tag/nonui/iteratortag/IteratorGeneratorTagDemo-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/tag/nonui/iteratortag/IteratorGeneratorTagDemo-validation.xml index 981cf73e32..44eb0032f8 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/tag/nonui/iteratortag/IteratorGeneratorTagDemo-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/tag/nonui/iteratortag/IteratorGeneratorTagDemo-validation.xml @@ -1,5 +1,25 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml index 2f5bad26be..16273112a3 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitFieldValidatorsExamples-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitFieldValidatorsExamples-validation.xml index 26a87f3be8..d1e68215ef 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitFieldValidatorsExamples-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitFieldValidatorsExamples-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/NonFieldValidatorsExampleAction-submitNonFieldValidatorsExamples-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/NonFieldValidatorsExampleAction-submitNonFieldValidatorsExamples-validation.xml index 71673c1f12..92fb2313e2 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/NonFieldValidatorsExampleAction-submitNonFieldValidatorsExamples-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/NonFieldValidatorsExampleAction-submitNonFieldValidatorsExamples-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/QuizAction-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/QuizAction-validation.xml index 4da868ac40..1c062bc6f9 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/QuizAction-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/QuizAction-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/User-userContext-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/User-userContext-validation.xml index 7984609c0d..1020aa60a7 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/User-userContext-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/User-userContext-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml index 3789b1c394..7e24f4bb25 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/VisitorValidatorsExampleAction-submitVisitorValidatorsExamples-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/struts-actionchaining.xml b/apps/showcase/src/main/resources/struts-actionchaining.xml index ab0f2ea5b7..f140f9e969 100644 --- a/apps/showcase/src/main/resources/struts-actionchaining.xml +++ b/apps/showcase/src/main/resources/struts-actionchaining.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-conversion.xml b/apps/showcase/src/main/resources/struts-conversion.xml index e597b25c0f..a3c147bd67 100644 --- a/apps/showcase/src/main/resources/struts-conversion.xml +++ b/apps/showcase/src/main/resources/struts-conversion.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-filedownload.xml b/apps/showcase/src/main/resources/struts-filedownload.xml index de50f5abd3..56d083f0af 100644 --- a/apps/showcase/src/main/resources/struts-filedownload.xml +++ b/apps/showcase/src/main/resources/struts-filedownload.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-fileupload.xml b/apps/showcase/src/main/resources/struts-fileupload.xml index d9d0cfcacb..a13739aa57 100644 --- a/apps/showcase/src/main/resources/struts-fileupload.xml +++ b/apps/showcase/src/main/resources/struts-fileupload.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-freemarker.xml b/apps/showcase/src/main/resources/struts-freemarker.xml index 9a6c9017f1..26ee8aedce 100644 --- a/apps/showcase/src/main/resources/struts-freemarker.xml +++ b/apps/showcase/src/main/resources/struts-freemarker.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-hangman.xml b/apps/showcase/src/main/resources/struts-hangman.xml index b8540630a7..ee1f4f6a11 100644 --- a/apps/showcase/src/main/resources/struts-hangman.xml +++ b/apps/showcase/src/main/resources/struts-hangman.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-interactive.xml b/apps/showcase/src/main/resources/struts-interactive.xml index 7c50d37538..ad584a17a8 100644 --- a/apps/showcase/src/main/resources/struts-interactive.xml +++ b/apps/showcase/src/main/resources/struts-interactive.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-model-driven.xml b/apps/showcase/src/main/resources/struts-model-driven.xml index 56e4bdfbe7..c8731e9803 100644 --- a/apps/showcase/src/main/resources/struts-model-driven.xml +++ b/apps/showcase/src/main/resources/struts-model-driven.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-person.xml b/apps/showcase/src/main/resources/struts-person.xml index e880e5b27a..946c4c1042 100644 --- a/apps/showcase/src/main/resources/struts-person.xml +++ b/apps/showcase/src/main/resources/struts-person.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-tags-non-ui.xml b/apps/showcase/src/main/resources/struts-tags-non-ui.xml index 9ecf1528be..4843419762 100644 --- a/apps/showcase/src/main/resources/struts-tags-non-ui.xml +++ b/apps/showcase/src/main/resources/struts-tags-non-ui.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-tags-ui.xml b/apps/showcase/src/main/resources/struts-tags-ui.xml index 659e97934c..69b9bdac08 100644 --- a/apps/showcase/src/main/resources/struts-tags-ui.xml +++ b/apps/showcase/src/main/resources/struts-tags-ui.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-tags.xml b/apps/showcase/src/main/resources/struts-tags.xml index 8485a64f0d..b2896dace7 100644 --- a/apps/showcase/src/main/resources/struts-tags.xml +++ b/apps/showcase/src/main/resources/struts-tags.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-tiles.xml b/apps/showcase/src/main/resources/struts-tiles.xml index caa0727f03..6845710dca 100644 --- a/apps/showcase/src/main/resources/struts-tiles.xml +++ b/apps/showcase/src/main/resources/struts-tiles.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-token.xml b/apps/showcase/src/main/resources/struts-token.xml index 8b545df041..ffdf2761a3 100644 --- a/apps/showcase/src/main/resources/struts-token.xml +++ b/apps/showcase/src/main/resources/struts-token.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-validation.xml b/apps/showcase/src/main/resources/struts-validation.xml index 63fcd79709..7872d42b0d 100755 --- a/apps/showcase/src/main/resources/struts-validation.xml +++ b/apps/showcase/src/main/resources/struts-validation.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-wait.xml b/apps/showcase/src/main/resources/struts-wait.xml index 1a5556d733..273e8e5506 100644 --- a/apps/showcase/src/main/resources/struts-wait.xml +++ b/apps/showcase/src/main/resources/struts-wait.xml @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/resources/struts-xslt.xml b/apps/showcase/src/main/resources/struts-xslt.xml index d3a040bb74..5bbdc55b50 100644 --- a/apps/showcase/src/main/resources/struts-xslt.xml +++ b/apps/showcase/src/main/resources/struts-xslt.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/resources/struts.xml b/apps/showcase/src/main/resources/struts.xml index 11ca7246a9..46611f9cd3 100644 --- a/apps/showcase/src/main/resources/struts.xml +++ b/apps/showcase/src/main/resources/struts.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/webapp/WEB-INF/applicationContext.xml b/apps/showcase/src/main/webapp/WEB-INF/applicationContext.xml index c4a105954e..f5c15414c0 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/applicationContext.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/applicationContext.xml @@ -1,4 +1,24 @@ + - + diff --git a/apps/showcase/src/main/webapp/WEB-INF/dwr.xml b/apps/showcase/src/main/webapp/WEB-INF/dwr.xml index 99869bf4ab..e2ce2bef3c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/dwr.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/dwr.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles.xml b/apps/showcase/src/main/webapp/WEB-INF/tiles.xml index a74de1b6b9..890e387186 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles.xml @@ -9,7 +9,7 @@ * "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 + * 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 @@ -17,7 +17,6 @@ * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. - * */ --> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation.xml b/apps/showcase/src/main/webapp/WEB-INF/validation.xml index 2849753649..289e83c436 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/validation.xml @@ -1,5 +1,24 @@ - + diff --git a/apps/showcase/src/main/webapp/WEB-INF/web.xml b/apps/showcase/src/main/webapp/WEB-INF/web.xml index 5b7f48aaaa..d597101c38 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/web.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/web.xml @@ -1,5 +1,25 @@ - + diff --git a/assembly/pom.xml b/assembly/pom.xml index 0e7d342469..a7518bac10 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -1,3 +1,23 @@ + 4.0.0 diff --git a/assembly/src/main/assembly/all.xml b/assembly/src/main/assembly/all.xml index 6d8fefb69a..ab63068c95 100644 --- a/assembly/src/main/assembly/all.xml +++ b/assembly/src/main/assembly/all.xml @@ -1,7 +1,5 @@ - diff --git a/assembly/src/main/assembly/apps.xml b/assembly/src/main/assembly/apps.xml index 37ec61afd3..3d574dad9e 100644 --- a/assembly/src/main/assembly/apps.xml +++ b/assembly/src/main/assembly/apps.xml @@ -1,7 +1,5 @@ - diff --git a/assembly/src/main/assembly/lib.xml b/assembly/src/main/assembly/lib.xml index e25418d122..3abb7c2183 100644 --- a/assembly/src/main/assembly/lib.xml +++ b/assembly/src/main/assembly/lib.xml @@ -1,7 +1,5 @@ - diff --git a/assembly/src/main/assembly/min-lib.xml b/assembly/src/main/assembly/min-lib.xml index f139dd07c2..af9bd88317 100644 --- a/assembly/src/main/assembly/min-lib.xml +++ b/assembly/src/main/assembly/min-lib.xml @@ -1,7 +1,5 @@ - diff --git a/assembly/src/main/assembly/src.xml b/assembly/src/main/assembly/src.xml index c520129eec..a25653d771 100644 --- a/assembly/src/main/assembly/src.xml +++ b/assembly/src/main/assembly/src.xml @@ -1,7 +1,5 @@ - diff --git a/assembly/src/main/resources/build.xml b/assembly/src/main/resources/build.xml index d271ab66dd..2c27d6bb29 100644 --- a/assembly/src/main/resources/build.xml +++ b/assembly/src/main/resources/build.xml @@ -1,4 +1,24 @@ - + + diff --git a/bom/pom.xml b/bom/pom.xml index 482fb1985d..fe72ff2ef0 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -1,4 +1,24 @@ + 4.0.0 diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index bfe74548f9..f6eeba272c 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -1,4 +1,24 @@ + 4.0.0 diff --git a/bundles/admin/src/main/resources/struts.xml b/bundles/admin/src/main/resources/struts.xml index a6e545e5f3..404c3b3b7c 100644 --- a/bundles/admin/src/main/resources/struts.xml +++ b/bundles/admin/src/main/resources/struts.xml @@ -1,24 +1,24 @@ +/* + * 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. + */ +--> + 4.0.0 diff --git a/bundles/demo/src/main/resources/META-INF/spring/applicationContext.xml b/bundles/demo/src/main/resources/META-INF/spring/applicationContext.xml index aae9d2b422..38cd7bf7a6 100644 --- a/bundles/demo/src/main/resources/META-INF/spring/applicationContext.xml +++ b/bundles/demo/src/main/resources/META-INF/spring/applicationContext.xml @@ -1,4 +1,24 @@ + diff --git a/bundles/demo/src/main/resources/struts.xml b/bundles/demo/src/main/resources/struts.xml index 3f72ce8619..5a10fb3157 100644 --- a/bundles/demo/src/main/resources/struts.xml +++ b/bundles/demo/src/main/resources/struts.xml @@ -1,4 +1,24 @@ + diff --git a/bundles/pom.xml b/bundles/pom.xml index cb4f36c9f2..f326433c0b 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -1,8 +1,6 @@ diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index e1b52667cd..3c68264d2f 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -1,8 +1,6 @@ diff --git a/core/src/test/resources/XSLTResultTest-val.xml b/core/src/test/resources/XSLTResultTest-val.xml index 6fe5614aeb..a32a07a94c 100644 --- a/core/src/test/resources/XSLTResultTest-val.xml +++ b/core/src/test/resources/XSLTResultTest-val.xml @@ -1,8 +1,6 @@ diff --git a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-some-alias-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-some-alias-validation.xml index e22d206809..1949998f63 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-some-alias-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-some-alias-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-subproperty-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-subproperty-validation.xml index 849b5acb5d..870acda69c 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-subproperty-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-subproperty-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validation.xml index e1e9e458e7..96334ab43e 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validationAlias-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validationAlias-validation.xml index e22d206809..1949998f63 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validationAlias-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/SimpleAction-validationAlias-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-anotherContext-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-anotherContext-validation.xml index b1eee9e3d7..2c50150aa7 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-anotherContext-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-anotherContext-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-badtest-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-badtest-validation.xml index 2d2aa4ef03..7bff857d38 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-badtest-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-badtest-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-beanMessageBundle-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-beanMessageBundle-validation.xml index 4e0a3df48b..2a085048d1 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-beanMessageBundle-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-beanMessageBundle-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-expressionValidation-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-expressionValidation-validation.xml index 5537544a66..7233fc664a 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-expressionValidation-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-expressionValidation-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-validation.xml index 7a3efc588e..54ed03d04e 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorChildValidation-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorChildValidation-validation.xml index cdae277b2b..797db01f3c 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorChildValidation-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorChildValidation-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorValidation-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorValidation-validation.xml index fabf79497c..0173c71e90 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorValidation-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestBean-visitorValidation-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/TestChildBean-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/TestChildBean-validation.xml index 93298018cc..48c94b41f6 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/TestChildBean-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/TestChildBean-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/ValidationOrderAction-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/ValidationOrderAction-validation.xml index 481aa34db9..ddb2ce12cb 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/ValidationOrderAction-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/ValidationOrderAction-validation.xml @@ -1,5 +1,24 @@ - + diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/loadorder1/xwork-test-load-order.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/loadorder1/xwork-test-load-order.xml index c62a21cced..f95289eb28 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/loadorder1/xwork-test-load-order.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/config/providers/loadorder1/xwork-test-load-order.xml @@ -1,3 +1,23 @@ + + + diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptor-params.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptor-params.xml index 493320ca8b..a7d9bc5d5c 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptor-params.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptor-params.xml @@ -1,3 +1,23 @@ + + diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptors-basic.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptors-basic.xml index 41d98c86ab..7f562afff2 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptors-basic.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-interceptors-basic.xml @@ -1,3 +1,23 @@ + 17 23 diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-multilevel.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-multilevel.xml index 0e270dbc30..3d669e4a7a 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-multilevel.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-multilevel.xml @@ -1,3 +1,23 @@ + - + diff --git a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-results.xml b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-results.xml index 5df61c7076..25b84b538b 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-results.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-results.xml @@ -1,3 +1,23 @@ + + diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/autowireContext.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/autowireContext.xml index 8422e8badc..4704c8418a 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/autowireContext.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/autowireContext.xml @@ -1,4 +1,24 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/resolverApplicationContext.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/resolverApplicationContext.xml index 6f0908f92e..c955021bae 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/resolverApplicationContext.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/resolverApplicationContext.xml @@ -1,4 +1,24 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/xwork-autowire.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/xwork-autowire.xml index a86ce20887..b83d3b92fe 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/spring/xwork-autowire.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/xwork-autowire.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validation.xml index 8bc0a7b3d7..3b3f480cf8 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validationAlias-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validationAlias-validation.xml index f32dd3bb00..983683cf38 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validationAlias-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware-validationAlias-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware2-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware2-validation.xml index 054d34fd5c..6d48a64372 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/DataAware2-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/DataAware2-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/Equidae-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/Equidae-validation.xml index b59fe1f511..0c2f5ef56c 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/Equidae-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/Equidae-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validation.xml index a48237f671..720188138b 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validationAlias-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validationAlias-validation.xml index e22d206809..1949998f63 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validationAlias-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/SimpleAction2-validationAlias-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/User-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/User-validation.xml index afe5d33548..83375c9f57 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/User-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/User-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/test/UserMarker-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/test/UserMarker-validation.xml index e96fa5487a..5a04f14d7f 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/test/UserMarker-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/test/UserMarker-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/util/location/xml-with-location.xml b/core/src/test/resources/com/opensymphony/xwork2/util/location/xml-with-location.xml index 3e709c87ec..e6f80345b1 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/util/location/xml-with-location.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/util/location/xml-with-location.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-beanMessageBundle-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-beanMessageBundle-validation.xml index 69380c6850..7ff581d744 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-beanMessageBundle-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-beanMessageBundle-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateArray-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateArray-validation.xml index be4d34c977..b841d1973d 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateArray-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateArray-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateList-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateList-validation.xml index f83f1018b3..1b766d67f7 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateList-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validateList-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validation.xml index 03dfc5bf34..3ef45f2ab1 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorChildValidation-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorChildValidation-validation.xml index 69380c6850..7ff581d744 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorChildValidation-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorChildValidation-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidation-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidation-validation.xml index 69380c6850..7ff581d744 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidation-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidation-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidationAlias-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidationAlias-validation.xml index c9fc4f7643..aa3f2e04b7 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidationAlias-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/VisitorValidatorTestAction-visitorValidationAlias-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test.xml index 9302f2f763..98eccd1bc4 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test2.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test2.xml index cf7798ad5b..bb51b8ca73 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test2.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test2.xml @@ -1,4 +1,24 @@ - + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test3.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test3.xml index b09037bd2a..11638fcce8 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test3.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test3.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test4.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test4.xml index 379f216e9b..d32756ae3b 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test4.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test4.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test5.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test5.xml index 3f4bbb61cf..fe3f6046d4 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test5.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test5.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test6.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test6.xml index 1ecd594b1c..cc293a267c 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test6.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validator-parser-test6.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/com/opensymphony/xwork2/validator/validators-fail.xml b/core/src/test/resources/com/opensymphony/xwork2/validator/validators-fail.xml index 890a4a184d..eaf9f381d8 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/validator/validators-fail.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/validator/validators-fail.xml @@ -1,4 +1,24 @@ + diff --git a/core/src/test/resources/includeTest.xml b/core/src/test/resources/includeTest.xml index d8b2a19a04..66bfd13009 100644 --- a/core/src/test/resources/includeTest.xml +++ b/core/src/test/resources/includeTest.xml @@ -1,3 +1,23 @@ + + diff --git a/core/src/test/resources/my-validators.xml b/core/src/test/resources/my-validators.xml index ac5f2e7f33..bc4543e407 100644 --- a/core/src/test/resources/my-validators.xml +++ b/core/src/test/resources/my-validators.xml @@ -1,4 +1,24 @@ + diff --git a/core/src/test/resources/myOther-validators.xml b/core/src/test/resources/myOther-validators.xml index c8fd91b0af..128c186de9 100644 --- a/core/src/test/resources/myOther-validators.xml +++ b/core/src/test/resources/myOther-validators.xml @@ -1,4 +1,24 @@ + diff --git a/core/src/test/resources/org/apache/struts2/TestAction-validation.xml b/core/src/test/resources/org/apache/struts2/TestAction-validation.xml index 717f73746e..28f323e648 100644 --- a/core/src/test/resources/org/apache/struts2/TestAction-validation.xml +++ b/core/src/test/resources/org/apache/struts2/TestAction-validation.xml @@ -1,7 +1,5 @@ diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/IntValidationAction-validation.xml b/core/src/test/resources/org/apache/struts2/views/jsp/ui/IntValidationAction-validation.xml index 3f058a9aba..8dbc0a4cea 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/IntValidationAction-validation.xml +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/IntValidationAction-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/User-validation.xml b/core/src/test/resources/org/apache/struts2/views/jsp/ui/User-validation.xml index 93473001ea..10dc9876cc 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/User-validation.xml +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/User-validation.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/struts-object-factory-result-builder.xml b/core/src/test/resources/struts-object-factory-result-builder.xml index 67d379aeec..5db810d8e3 100644 --- a/core/src/test/resources/struts-object-factory-result-builder.xml +++ b/core/src/test/resources/struts-object-factory-result-builder.xml @@ -1,7 +1,5 @@ diff --git a/core/src/test/resources/xwork-class-param-test.xml b/core/src/test/resources/xwork-class-param-test.xml index f12c083844..6a5b22a0e4 100644 --- a/core/src/test/resources/xwork-class-param-test.xml +++ b/core/src/test/resources/xwork-class-param-test.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/xwork-param-test.xml b/core/src/test/resources/xwork-param-test.xml index 7a97df1468..15f540840b 100644 --- a/core/src/test/resources/xwork-param-test.xml +++ b/core/src/test/resources/xwork-param-test.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/xwork-proxyinvoke.xml b/core/src/test/resources/xwork-proxyinvoke.xml index 7338496e2b..42639e64af 100644 --- a/core/src/test/resources/xwork-proxyinvoke.xml +++ b/core/src/test/resources/xwork-proxyinvoke.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/xwork-sample.xml b/core/src/test/resources/xwork-sample.xml index 2cdee20c7a..6a6202814a 100644 --- a/core/src/test/resources/xwork-sample.xml +++ b/core/src/test/resources/xwork-sample.xml @@ -1,3 +1,23 @@ + diff --git a/core/src/test/resources/xwork-test-default.xml b/core/src/test/resources/xwork-test-default.xml index fdfc609c98..e31bbb4e0f 100644 --- a/core/src/test/resources/xwork-test-default.xml +++ b/core/src/test/resources/xwork-test-default.xml @@ -1,3 +1,23 @@ + + \ No newline at end of file diff --git a/plugins/cdi/src/test/resources/log4j2.xml b/plugins/cdi/src/test/resources/log4j2.xml index 3edabe1bf5..84e67390a8 100644 --- a/plugins/cdi/src/test/resources/log4j2.xml +++ b/plugins/cdi/src/test/resources/log4j2.xml @@ -1,4 +1,24 @@ + diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 8ede1c1db4..a7d9ed6322 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -1,8 +1,6 @@ 4.0.0 diff --git a/plugins/convention/src/main/resources/struts-plugin.xml b/plugins/convention/src/main/resources/struts-plugin.xml index e710f00ca1..5205f18136 100644 --- a/plugins/convention/src/main/resources/struts-plugin.xml +++ b/plugins/convention/src/main/resources/struts-plugin.xml @@ -1,8 +1,6 @@ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml index c5c280655e..d513c2d6dd 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml @@ -1,19 +1,23 @@ diff --git a/plugins/embeddedjsp/src/main/resources/struts-plugin.xml b/plugins/embeddedjsp/src/main/resources/struts-plugin.xml index fc5b993d18..2f7b5565cf 100644 --- a/plugins/embeddedjsp/src/main/resources/struts-plugin.xml +++ b/plugins/embeddedjsp/src/main/resources/struts-plugin.xml @@ -1,8 +1,6 @@ 4.0.0 diff --git a/plugins/gxp/src/main/resources/struts-plugin.xml b/plugins/gxp/src/main/resources/struts-plugin.xml index 478c926826..b6d9c8ffba 100644 --- a/plugins/gxp/src/main/resources/struts-plugin.xml +++ b/plugins/gxp/src/main/resources/struts-plugin.xml @@ -1,5 +1,24 @@ - + diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index c993716dc5..50ed778fef 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -1,8 +1,6 @@ +/* + * 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. + */ +--> 4.0.0 diff --git a/plugins/javatemplates/src/main/resources/struts-plugin.xml b/plugins/javatemplates/src/main/resources/struts-plugin.xml index 6ea5110b60..5370957925 100644 --- a/plugins/javatemplates/src/main/resources/struts-plugin.xml +++ b/plugins/javatemplates/src/main/resources/struts-plugin.xml @@ -1,26 +1,24 @@ - - +/* + * 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. + */ +--> diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 061a50eb05..ffccb737b5 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -1,8 +1,6 @@ diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index e231c82be9..2ccc794bef 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -1,8 +1,6 @@ +/* + * 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. + */ +--> diff --git a/plugins/junit/src/test/resources/struts-convention-configuration.xml b/plugins/junit/src/test/resources/struts-convention-configuration.xml index 9d9dd218e2..ff279f2cc4 100644 --- a/plugins/junit/src/test/resources/struts-convention-configuration.xml +++ b/plugins/junit/src/test/resources/struts-convention-configuration.xml @@ -1,8 +1,6 @@ - +/* + * 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. + */ +--> diff --git a/plugins/junit/src/test/resources/struts.xml b/plugins/junit/src/test/resources/struts.xml index 1c860907d7..f99b8421c0 100644 --- a/plugins/junit/src/test/resources/struts.xml +++ b/plugins/junit/src/test/resources/struts.xml @@ -1,24 +1,24 @@ +/* + * 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. + */ +--> diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 2586040401..08e2c3e602 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -1,4 +1,24 @@ + 4.0.0 diff --git a/plugins/osgi/src/main/resources/beanRefContext.xml b/plugins/osgi/src/main/resources/beanRefContext.xml index 4b9b1615d2..70d66f8f57 100644 --- a/plugins/osgi/src/main/resources/beanRefContext.xml +++ b/plugins/osgi/src/main/resources/beanRefContext.xml @@ -1,4 +1,24 @@ + diff --git a/plugins/osgi/src/main/resources/struts-plugin.xml b/plugins/osgi/src/main/resources/struts-plugin.xml index 302c7b45bf..8e529244f1 100644 --- a/plugins/osgi/src/main/resources/struts-plugin.xml +++ b/plugins/osgi/src/main/resources/struts-plugin.xml @@ -1,5 +1,24 @@ - + diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 12d37edb74..2982969c07 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -1,8 +1,6 @@ + 4.0.0 diff --git a/plugins/portlet/src/main/resources/struts-plugin.xml b/plugins/portlet/src/main/resources/struts-plugin.xml index 2d95d904b3..7b9144767d 100644 --- a/plugins/portlet/src/main/resources/struts-plugin.xml +++ b/plugins/portlet/src/main/resources/struts-plugin.xml @@ -1,8 +1,6 @@ diff --git a/plugins/portlet/src/test/resources/struts.xml b/plugins/portlet/src/test/resources/struts.xml index 15d7a4a41b..d8c52875b7 100644 --- a/plugins/portlet/src/test/resources/struts.xml +++ b/plugins/portlet/src/test/resources/struts.xml @@ -1,4 +1,24 @@ + diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index f85b4962a2..7f4bf8d5b0 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -1,8 +1,6 @@ diff --git a/src/etc/header.txt b/src/etc/header.txt index 3470b3ccd9..51ceab3b55 100644 --- a/src/etc/header.txt +++ b/src/etc/header.txt @@ -1,5 +1,3 @@ -$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 diff --git a/src/main/idea/project.xml b/src/main/idea/project.xml deleted file mode 100644 index e80b654cdf..0000000000 --- a/src/main/idea/project.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - diff --git a/src/main/idea/workspace.xml b/src/main/idea/workspace.xml deleted file mode 100644 index 479e9807ad..0000000000 --- a/src/main/idea/workspace.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - From ce335f19c48754b76d87cc2553be37f555e024ba Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 11:36:24 +0200 Subject: [PATCH 0200/2288] Adds missing header with license --- .../ajaxErrorContainers/actionerror.ftl | 2 -- .../ajaxErrorContainers/controlfooter.ftl | 2 -- .../controlheader-core.ftl | 2 -- .../customTheme/ftlCustomTemplate.ftl | 20 ++++++++++++++++++ core/src/main/resources/jshint.conf.js | 18 ++++++++++++++++ .../org/apache/struts2/dispatcher/error.ftl | 2 -- .../struts2/interceptor/debugging/browser.ftl | 2 -- .../struts2/interceptor/debugging/console.ftl | 2 -- .../org/apache/struts2/interceptor/wait.ftl | 2 -- core/src/main/resources/struts-2.0.dtd | 2 -- core/src/main/resources/struts-2.1.7.dtd | 2 -- core/src/main/resources/struts-2.1.dtd | 2 -- core/src/main/resources/struts-2.3.dtd | 2 -- core/src/main/resources/struts-2.5.dtd | 2 -- .../resources/template/css_xhtml/checkbox.ftl | 2 -- .../template/css_xhtml/control-close.ftl | 2 -- .../resources/template/css_xhtml/control.ftl | 2 -- .../template/css_xhtml/controlfooter.ftl | 2 -- .../template/css_xhtml/controlheader-core.ftl | 2 -- .../template/css_xhtml/controlheader.ftl | 2 -- .../template/css_xhtml/form-validate.ftl | 2 -- .../resources/template/css_xhtml/head.ftl | 2 -- .../resources/template/css_xhtml/hidden.ftl | 2 -- .../resources/template/css_xhtml/label.ftl | 2 -- .../resources/template/css_xhtml/reset.ftl | 2 -- .../template/css_xhtml/submit-close.ftl | 20 ++++++++++++++++++ .../resources/template/css_xhtml/submit.ftl | 2 -- .../resources/template/simple/a-close.ftl | 2 -- core/src/main/resources/template/simple/a.ftl | 2 -- .../resources/template/simple/actionerror.ftl | 2 -- .../template/simple/actionmessage.ftl | 2 -- .../resources/template/simple/checkbox.ftl | 2 -- .../template/simple/checkboxlist.ftl | 2 -- .../resources/template/simple/combobox.ftl | 2 -- .../template/simple/common-attributes.ftl | 2 -- .../template/simple/controlfooter.ftl | 2 -- .../template/simple/controlheader.ftl | 2 -- .../main/resources/template/simple/css.ftl | 2 -- .../main/resources/template/simple/debug.ftl | 2 -- .../template/simple/doubleselect.ftl | 2 -- .../template/simple/dynamic-attributes.ftl | 2 -- .../main/resources/template/simple/empty.ftl | 2 -- .../resources/template/simple/fielderror.ftl | 2 -- .../main/resources/template/simple/file.ftl | 2 -- .../resources/template/simple/form-close.ftl | 2 -- .../main/resources/template/simple/form.ftl | 2 -- .../main/resources/template/simple/head.ftl | 2 -- .../main/resources/template/simple/hidden.ftl | 2 -- .../template/simple/inputtransferselect.ftl | 2 -- .../main/resources/template/simple/label.ftl | 2 -- .../resources/template/simple/optgroup.ftl | 2 -- .../template/simple/optiontransferselect.ftl | 2 -- .../resources/template/simple/password.ftl | 2 -- .../resources/template/simple/radiomap.ftl | 2 -- .../main/resources/template/simple/reset.ftl | 2 -- .../template/simple/scripting-events.ftl | 2 -- .../main/resources/template/simple/select.ftl | 2 -- .../template/simple/submit-close.ftl | 20 ++++++++++++++++++ .../main/resources/template/simple/submit.ftl | 2 -- .../main/resources/template/simple/text.ftl | 2 -- .../resources/template/simple/textarea.ftl | 2 -- .../main/resources/template/simple/token.ftl | 2 -- .../template/simple/updownselect.ftl | 2 -- .../resources/template/xhtml/checkbox.ftl | 2 -- .../resources/template/xhtml/checkboxlist.ftl | 2 -- .../resources/template/xhtml/combobox.ftl | 2 -- .../template/xhtml/control-close.ftl | 2 -- .../main/resources/template/xhtml/control.ftl | 2 -- .../template/xhtml/controlfooter.ftl | 2 -- .../template/xhtml/controlheader-core.ftl | 2 -- .../template/xhtml/controlheader.ftl | 2 -- .../resources/template/xhtml/doubleselect.ftl | 2 -- .../main/resources/template/xhtml/file.ftl | 2 -- .../template/xhtml/form-close-validate.ftl | 2 -- .../resources/template/xhtml/form-close.ftl | 2 -- .../template/xhtml/form-validate.ftl | 2 -- .../main/resources/template/xhtml/form.ftl | 2 -- .../main/resources/template/xhtml/head.ftl | 2 -- .../main/resources/template/xhtml/hidden.ftl | 2 -- .../template/xhtml/inputtransferselect.ftl | 2 -- .../main/resources/template/xhtml/label.ftl | 2 -- .../template/xhtml/optiontransferselect.ftl | 2 -- .../resources/template/xhtml/password.ftl | 2 -- .../resources/template/xhtml/radiomap.ftl | 2 -- .../main/resources/template/xhtml/reset.ftl | 2 -- .../main/resources/template/xhtml/select.ftl | 2 -- .../resources/template/xhtml/submit-close.ftl | 2 -- .../main/resources/template/xhtml/submit.ftl | 2 -- .../main/resources/template/xhtml/text.ftl | 2 -- .../resources/template/xhtml/textarea.ftl | 2 -- .../main/resources/template/xhtml/tooltip.ftl | 2 -- .../resources/template/xhtml/updownselect.ftl | 2 -- core/src/main/resources/xwork-1.0.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-1.1.1.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-1.1.2.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-1.1.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-2.0.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-2.1.3.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-2.1.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-2.3.dtd | 21 ++++++++++++++++++- core/src/main/resources/xwork-2.5.dtd | 21 ++++++++++++++++++- .../main/resources/xwork-validator-1.0.2.dtd | 21 ++++++++++++++++++- .../main/resources/xwork-validator-1.0.3.dtd | 21 ++++++++++++++++++- .../main/resources/xwork-validator-1.0.dtd | 21 ++++++++++++++++++- .../resources/xwork-validator-config-1.0.dtd | 21 ++++++++++++++++++- .../xwork-validator-definition-1.0.dtd | 21 ++++++++++++++++++- .../views/freemarker/someFreeMarkerFile.ftl | 2 -- .../resources/template/test/Component.ftl | 2 -- .../src/test/resources/template/test/text.ftl | 20 ++++++++++++++++++ core/src/test/resources/xwork-1.0.dtd | 20 ++++++++++++++++++ .../resources/config-browser/actionNames.ftl | 2 -- .../main/resources/config-browser/error.ftl | 2 -- .../resources/config-browser/page-footer.ftl | 2 -- .../resources/config-browser/page-header.ftl | 2 -- .../resources/config-browser/showBeans.ftl | 2 -- .../resources/config-browser/showConfig.ftl | 2 -- .../config-browser/showConstants.ftl | 2 -- .../resources/config-browser/showJars.ftl | 2 -- .../config-browser/showValidators.ftl | 2 -- .../resources/config-browser/simple-error.ftl | 2 -- .../config-browser/tigris-macros.ftl | 2 -- .../config-browser/validatorDetails.ftl | 2 -- .../tutorial/sitegraph/guess-error.ftl | 2 -- .../tutorial/sitegraph/guess-input.ftl | 2 -- 124 files changed, 398 insertions(+), 222 deletions(-) diff --git a/apps/showcase/src/main/resources/template/ajaxErrorContainers/actionerror.ftl b/apps/showcase/src/main/resources/template/ajaxErrorContainers/actionerror.ftl index 3f7d8ab52c..e5ba7fb068 100644 --- a/apps/showcase/src/main/resources/template/ajaxErrorContainers/actionerror.ftl +++ b/apps/showcase/src/main/resources/template/ajaxErrorContainers/actionerror.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlfooter.ftl b/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlfooter.ftl index 7f95111f3d..5d27b6f787 100644 --- a/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlfooter.ftl +++ b/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlfooter.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlheader-core.ftl b/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlheader-core.ftl index c07b867b03..fe0b96c2c6 100644 --- a/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlheader-core.ftl +++ b/apps/showcase/src/main/resources/template/ajaxErrorContainers/controlheader-core.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl index 4152334439..668d45b77a 100644 --- a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl +++ b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl @@ -1,3 +1,23 @@ +

Freemarker Custom Template - diff --git a/core/src/main/resources/jshint.conf.js b/core/src/main/resources/jshint.conf.js index 350b03a4a2..d9d9417e69 100644 --- a/core/src/main/resources/jshint.conf.js +++ b/core/src/main/resources/jshint.conf.js @@ -1,3 +1,21 @@ +/* + * 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. + */ { "maxparams": 5, "indent": true, diff --git a/core/src/main/resources/org/apache/struts2/dispatcher/error.ftl b/core/src/main/resources/org/apache/struts2/dispatcher/error.ftl index 090bb92a1a..2153bdaed7 100644 --- a/core/src/main/resources/org/apache/struts2/dispatcher/error.ftl +++ b/core/src/main/resources/org/apache/struts2/dispatcher/error.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl b/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl index 8b1b3cb3a7..6558608d8c 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl +++ b/core/src/main/resources/org/apache/struts2/interceptor/debugging/browser.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/org/apache/struts2/interceptor/debugging/console.ftl b/core/src/main/resources/org/apache/struts2/interceptor/debugging/console.ftl index 552aa9d80a..22a251b9b5 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/debugging/console.ftl +++ b/core/src/main/resources/org/apache/struts2/interceptor/debugging/console.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/org/apache/struts2/interceptor/wait.ftl b/core/src/main/resources/org/apache/struts2/interceptor/wait.ftl index 83bf03cd09..e966b26d45 100644 --- a/core/src/main/resources/org/apache/struts2/interceptor/wait.ftl +++ b/core/src/main/resources/org/apache/struts2/interceptor/wait.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/struts-2.0.dtd b/core/src/main/resources/struts-2.0.dtd index 7400cc624f..b71a8539a6 100644 --- a/core/src/main/resources/struts-2.0.dtd +++ b/core/src/main/resources/struts-2.0.dtd @@ -1,8 +1,6 @@ <#include "/${parameters.templateDir}/simple/submit-close.ftl" /> <#if !parameters.labelposition?? && (parameters.form.labelposition)??> <#assign labelpos = parameters.form.labelposition/> diff --git a/core/src/main/resources/template/css_xhtml/submit.ftl b/core/src/main/resources/template/css_xhtml/submit.ftl index d7173253ad..055aca5161 100644 --- a/core/src/main/resources/template/css_xhtml/submit.ftl +++ b/core/src/main/resources/template/css_xhtml/submit.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/a-close.ftl b/core/src/main/resources/template/simple/a-close.ftl index f2f58e6fbe..78b319c482 100644 --- a/core/src/main/resources/template/simple/a-close.ftl +++ b/core/src/main/resources/template/simple/a-close.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/a.ftl b/core/src/main/resources/template/simple/a.ftl index dcf27d239c..2ffa2ec5d1 100644 --- a/core/src/main/resources/template/simple/a.ftl +++ b/core/src/main/resources/template/simple/a.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/actionerror.ftl b/core/src/main/resources/template/simple/actionerror.ftl index 6164a44193..16a9a4750a 100644 --- a/core/src/main/resources/template/simple/actionerror.ftl +++ b/core/src/main/resources/template/simple/actionerror.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/actionmessage.ftl b/core/src/main/resources/template/simple/actionmessage.ftl index f5b02e5956..3643654bad 100644 --- a/core/src/main/resources/template/simple/actionmessage.ftl +++ b/core/src/main/resources/template/simple/actionmessage.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/checkbox.ftl b/core/src/main/resources/template/simple/checkbox.ftl index fd47810442..81c13f3d74 100644 --- a/core/src/main/resources/template/simple/checkbox.ftl +++ b/core/src/main/resources/template/simple/checkbox.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/checkboxlist.ftl b/core/src/main/resources/template/simple/checkboxlist.ftl index c90e024b57..0018b811b3 100644 --- a/core/src/main/resources/template/simple/checkboxlist.ftl +++ b/core/src/main/resources/template/simple/checkboxlist.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/combobox.ftl b/core/src/main/resources/template/simple/combobox.ftl index a9ef547d07..3d953c5e32 100644 --- a/core/src/main/resources/template/simple/combobox.ftl +++ b/core/src/main/resources/template/simple/combobox.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/common-attributes.ftl b/core/src/main/resources/template/simple/common-attributes.ftl index 909c37d86e..9c96fbb1c2 100644 --- a/core/src/main/resources/template/simple/common-attributes.ftl +++ b/core/src/main/resources/template/simple/common-attributes.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/controlfooter.ftl b/core/src/main/resources/template/simple/controlfooter.ftl index 32bba27fae..1626c3cd92 100644 --- a/core/src/main/resources/template/simple/controlfooter.ftl +++ b/core/src/main/resources/template/simple/controlfooter.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/controlheader.ftl b/core/src/main/resources/template/simple/controlheader.ftl index 32bba27fae..1626c3cd92 100644 --- a/core/src/main/resources/template/simple/controlheader.ftl +++ b/core/src/main/resources/template/simple/controlheader.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/css.ftl b/core/src/main/resources/template/simple/css.ftl index 2d8e68e3c6..f1f07b64f7 100644 --- a/core/src/main/resources/template/simple/css.ftl +++ b/core/src/main/resources/template/simple/css.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/debug.ftl b/core/src/main/resources/template/simple/debug.ftl index a67b7fadcd..c331d50fed 100644 --- a/core/src/main/resources/template/simple/debug.ftl +++ b/core/src/main/resources/template/simple/debug.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/doubleselect.ftl b/core/src/main/resources/template/simple/doubleselect.ftl index 19c65dc1fd..f1adf8f6eb 100644 --- a/core/src/main/resources/template/simple/doubleselect.ftl +++ b/core/src/main/resources/template/simple/doubleselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/dynamic-attributes.ftl b/core/src/main/resources/template/simple/dynamic-attributes.ftl index 0c751b7c7e..a6e394397d 100644 --- a/core/src/main/resources/template/simple/dynamic-attributes.ftl +++ b/core/src/main/resources/template/simple/dynamic-attributes.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/empty.ftl b/core/src/main/resources/template/simple/empty.ftl index 32bba27fae..1626c3cd92 100644 --- a/core/src/main/resources/template/simple/empty.ftl +++ b/core/src/main/resources/template/simple/empty.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/fielderror.ftl b/core/src/main/resources/template/simple/fielderror.ftl index 81e95d9ed9..0c8545b92d 100644 --- a/core/src/main/resources/template/simple/fielderror.ftl +++ b/core/src/main/resources/template/simple/fielderror.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/file.ftl b/core/src/main/resources/template/simple/file.ftl index 9e7a3805c8..1c35b47262 100644 --- a/core/src/main/resources/template/simple/file.ftl +++ b/core/src/main/resources/template/simple/file.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/form-close.ftl b/core/src/main/resources/template/simple/form-close.ftl index e8defdfd5a..0efea0c599 100644 --- a/core/src/main/resources/template/simple/form-close.ftl +++ b/core/src/main/resources/template/simple/form-close.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/form.ftl b/core/src/main/resources/template/simple/form.ftl index 53fb3d59a0..c08548e026 100644 --- a/core/src/main/resources/template/simple/form.ftl +++ b/core/src/main/resources/template/simple/form.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/head.ftl b/core/src/main/resources/template/simple/head.ftl index 03c3940bad..2c5484a084 100644 --- a/core/src/main/resources/template/simple/head.ftl +++ b/core/src/main/resources/template/simple/head.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/hidden.ftl b/core/src/main/resources/template/simple/hidden.ftl index 9ca3fc0db3..73849c20c3 100644 --- a/core/src/main/resources/template/simple/hidden.ftl +++ b/core/src/main/resources/template/simple/hidden.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/inputtransferselect.ftl b/core/src/main/resources/template/simple/inputtransferselect.ftl index 44afd6609c..0b14f51438 100644 --- a/core/src/main/resources/template/simple/inputtransferselect.ftl +++ b/core/src/main/resources/template/simple/inputtransferselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/label.ftl b/core/src/main/resources/template/simple/label.ftl index 6ec54aab92..9634aca655 100644 --- a/core/src/main/resources/template/simple/label.ftl +++ b/core/src/main/resources/template/simple/label.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/optgroup.ftl b/core/src/main/resources/template/simple/optgroup.ftl index c2a15a3c26..f1f8a3e9e7 100644 --- a/core/src/main/resources/template/simple/optgroup.ftl +++ b/core/src/main/resources/template/simple/optgroup.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/optiontransferselect.ftl b/core/src/main/resources/template/simple/optiontransferselect.ftl index 67b5f2c2b3..093ec22aba 100644 --- a/core/src/main/resources/template/simple/optiontransferselect.ftl +++ b/core/src/main/resources/template/simple/optiontransferselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/password.ftl b/core/src/main/resources/template/simple/password.ftl index 9e1f095597..2958d6231d 100644 --- a/core/src/main/resources/template/simple/password.ftl +++ b/core/src/main/resources/template/simple/password.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/radiomap.ftl b/core/src/main/resources/template/simple/radiomap.ftl index 11d53329a6..cdff00ec0c 100644 --- a/core/src/main/resources/template/simple/radiomap.ftl +++ b/core/src/main/resources/template/simple/radiomap.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/reset.ftl b/core/src/main/resources/template/simple/reset.ftl index 67d6505e4c..11d18069b2 100644 --- a/core/src/main/resources/template/simple/reset.ftl +++ b/core/src/main/resources/template/simple/reset.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/scripting-events.ftl b/core/src/main/resources/template/simple/scripting-events.ftl index c998e6172b..f0e7a84df7 100644 --- a/core/src/main/resources/template/simple/scripting-events.ftl +++ b/core/src/main/resources/template/simple/scripting-events.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/select.ftl b/core/src/main/resources/template/simple/select.ftl index 7d3c8e1835..a0c17b4cd3 100644 --- a/core/src/main/resources/template/simple/select.ftl +++ b/core/src/main/resources/template/simple/select.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/submit-close.ftl b/core/src/main/resources/template/simple/submit-close.ftl index c16ac6e4b8..8e81dd42eb 100644 --- a/core/src/main/resources/template/simple/submit-close.ftl +++ b/core/src/main/resources/template/simple/submit-close.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <#if parameters.type?? && parameters.type=="button"> <#if parameters.body?length gt 0>${parameters.body}<#elseif parameters.label??><@s.property value="parameters.label"/><#rt/> diff --git a/core/src/main/resources/template/simple/submit.ftl b/core/src/main/resources/template/simple/submit.ftl index d77b5d0902..bf5a4f0a48 100644 --- a/core/src/main/resources/template/simple/submit.ftl +++ b/core/src/main/resources/template/simple/submit.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/text.ftl b/core/src/main/resources/template/simple/text.ftl index 775e196f77..fb40f1508a 100644 --- a/core/src/main/resources/template/simple/text.ftl +++ b/core/src/main/resources/template/simple/text.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/textarea.ftl b/core/src/main/resources/template/simple/textarea.ftl index 4d4308c71d..43c28a68be 100644 --- a/core/src/main/resources/template/simple/textarea.ftl +++ b/core/src/main/resources/template/simple/textarea.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/token.ftl b/core/src/main/resources/template/simple/token.ftl index 18131cfa9a..7c4d4ca461 100644 --- a/core/src/main/resources/template/simple/token.ftl +++ b/core/src/main/resources/template/simple/token.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/simple/updownselect.ftl b/core/src/main/resources/template/simple/updownselect.ftl index bc741ad7f4..ad0a8aec58 100644 --- a/core/src/main/resources/template/simple/updownselect.ftl +++ b/core/src/main/resources/template/simple/updownselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/checkbox.ftl b/core/src/main/resources/template/xhtml/checkbox.ftl index 7791dfe978..04033c4b38 100644 --- a/core/src/main/resources/template/xhtml/checkbox.ftl +++ b/core/src/main/resources/template/xhtml/checkbox.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/checkboxlist.ftl b/core/src/main/resources/template/xhtml/checkboxlist.ftl index 8cc0dd8f22..fd0137dd9b 100644 --- a/core/src/main/resources/template/xhtml/checkboxlist.ftl +++ b/core/src/main/resources/template/xhtml/checkboxlist.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/combobox.ftl b/core/src/main/resources/template/xhtml/combobox.ftl index a1a85f181d..de0fffda10 100644 --- a/core/src/main/resources/template/xhtml/combobox.ftl +++ b/core/src/main/resources/template/xhtml/combobox.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/control-close.ftl b/core/src/main/resources/template/xhtml/control-close.ftl index a89de7e34a..f94cdcda31 100644 --- a/core/src/main/resources/template/xhtml/control-close.ftl +++ b/core/src/main/resources/template/xhtml/control-close.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/control.ftl b/core/src/main/resources/template/xhtml/control.ftl index 06cb89ecb8..026b8d71a0 100644 --- a/core/src/main/resources/template/xhtml/control.ftl +++ b/core/src/main/resources/template/xhtml/control.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/controlfooter.ftl b/core/src/main/resources/template/xhtml/controlfooter.ftl index 16d4a107b0..7101f6e9ba 100644 --- a/core/src/main/resources/template/xhtml/controlfooter.ftl +++ b/core/src/main/resources/template/xhtml/controlfooter.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/controlheader-core.ftl b/core/src/main/resources/template/xhtml/controlheader-core.ftl index 31df869441..ebc124ff60 100644 --- a/core/src/main/resources/template/xhtml/controlheader-core.ftl +++ b/core/src/main/resources/template/xhtml/controlheader-core.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/controlheader.ftl b/core/src/main/resources/template/xhtml/controlheader.ftl index c14779e5a5..86f2c3bc10 100644 --- a/core/src/main/resources/template/xhtml/controlheader.ftl +++ b/core/src/main/resources/template/xhtml/controlheader.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/doubleselect.ftl b/core/src/main/resources/template/xhtml/doubleselect.ftl index f923462cbe..d6b56951bb 100644 --- a/core/src/main/resources/template/xhtml/doubleselect.ftl +++ b/core/src/main/resources/template/xhtml/doubleselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/file.ftl b/core/src/main/resources/template/xhtml/file.ftl index cae4a2e434..0ee2055d6a 100644 --- a/core/src/main/resources/template/xhtml/file.ftl +++ b/core/src/main/resources/template/xhtml/file.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/form-close-validate.ftl b/core/src/main/resources/template/xhtml/form-close-validate.ftl index cc42cfa187..2cbb174f3e 100644 --- a/core/src/main/resources/template/xhtml/form-close-validate.ftl +++ b/core/src/main/resources/template/xhtml/form-close-validate.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/form-close.ftl b/core/src/main/resources/template/xhtml/form-close.ftl index aca423665e..3e0e2a7694 100644 --- a/core/src/main/resources/template/xhtml/form-close.ftl +++ b/core/src/main/resources/template/xhtml/form-close.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/form-validate.ftl b/core/src/main/resources/template/xhtml/form-validate.ftl index 32556ca770..2d140b7cc0 100644 --- a/core/src/main/resources/template/xhtml/form-validate.ftl +++ b/core/src/main/resources/template/xhtml/form-validate.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/form.ftl b/core/src/main/resources/template/xhtml/form.ftl index cce99cc03d..5da3cf4a56 100644 --- a/core/src/main/resources/template/xhtml/form.ftl +++ b/core/src/main/resources/template/xhtml/form.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/head.ftl b/core/src/main/resources/template/xhtml/head.ftl index e8a8fb82da..8bd9f55ec9 100644 --- a/core/src/main/resources/template/xhtml/head.ftl +++ b/core/src/main/resources/template/xhtml/head.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/hidden.ftl b/core/src/main/resources/template/xhtml/hidden.ftl index 92881ab2c7..260d443419 100644 --- a/core/src/main/resources/template/xhtml/hidden.ftl +++ b/core/src/main/resources/template/xhtml/hidden.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/inputtransferselect.ftl b/core/src/main/resources/template/xhtml/inputtransferselect.ftl index f25a6ab1e1..64572db49e 100644 --- a/core/src/main/resources/template/xhtml/inputtransferselect.ftl +++ b/core/src/main/resources/template/xhtml/inputtransferselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/label.ftl b/core/src/main/resources/template/xhtml/label.ftl index 8faf8d6b0a..dc02757773 100644 --- a/core/src/main/resources/template/xhtml/label.ftl +++ b/core/src/main/resources/template/xhtml/label.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/optiontransferselect.ftl b/core/src/main/resources/template/xhtml/optiontransferselect.ftl index e1cd440916..b82852f3af 100644 --- a/core/src/main/resources/template/xhtml/optiontransferselect.ftl +++ b/core/src/main/resources/template/xhtml/optiontransferselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/password.ftl b/core/src/main/resources/template/xhtml/password.ftl index 202da51e1c..bb8a75a0aa 100644 --- a/core/src/main/resources/template/xhtml/password.ftl +++ b/core/src/main/resources/template/xhtml/password.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/radiomap.ftl b/core/src/main/resources/template/xhtml/radiomap.ftl index 008de45535..d09629795b 100644 --- a/core/src/main/resources/template/xhtml/radiomap.ftl +++ b/core/src/main/resources/template/xhtml/radiomap.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/reset.ftl b/core/src/main/resources/template/xhtml/reset.ftl index 7d6121c389..48c7611432 100644 --- a/core/src/main/resources/template/xhtml/reset.ftl +++ b/core/src/main/resources/template/xhtml/reset.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/select.ftl b/core/src/main/resources/template/xhtml/select.ftl index 9d07046040..1965920946 100644 --- a/core/src/main/resources/template/xhtml/select.ftl +++ b/core/src/main/resources/template/xhtml/select.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/submit-close.ftl b/core/src/main/resources/template/xhtml/submit-close.ftl index 5a13a28294..7bd2fae0d8 100644 --- a/core/src/main/resources/template/xhtml/submit-close.ftl +++ b/core/src/main/resources/template/xhtml/submit-close.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/submit.ftl b/core/src/main/resources/template/xhtml/submit.ftl index 989e816560..fb08cbed66 100644 --- a/core/src/main/resources/template/xhtml/submit.ftl +++ b/core/src/main/resources/template/xhtml/submit.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/text.ftl b/core/src/main/resources/template/xhtml/text.ftl index 53f1647823..dc02c03a27 100644 --- a/core/src/main/resources/template/xhtml/text.ftl +++ b/core/src/main/resources/template/xhtml/text.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/textarea.ftl b/core/src/main/resources/template/xhtml/textarea.ftl index 46f77d95d2..0cc2ad450f 100644 --- a/core/src/main/resources/template/xhtml/textarea.ftl +++ b/core/src/main/resources/template/xhtml/textarea.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/tooltip.ftl b/core/src/main/resources/template/xhtml/tooltip.ftl index 862500f879..29b08c4eaf 100644 --- a/core/src/main/resources/template/xhtml/tooltip.ftl +++ b/core/src/main/resources/template/xhtml/tooltip.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/template/xhtml/updownselect.ftl b/core/src/main/resources/template/xhtml/updownselect.ftl index bd575f7124..947d0e52a8 100644 --- a/core/src/main/resources/template/xhtml/updownselect.ftl +++ b/core/src/main/resources/template/xhtml/updownselect.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/core/src/main/resources/xwork-1.0.dtd b/core/src/main/resources/xwork-1.0.dtd index 0ab3cd5448..23661a186b 100644 --- a/core/src/main/resources/xwork-1.0.dtd +++ b/core/src/main/resources/xwork-1.0.dtd @@ -1,5 +1,24 @@ - + <#if parameters.autofocus!false> autofocus="autofocus"<#rt/> diff --git a/core/src/test/resources/xwork-1.0.dtd b/core/src/test/resources/xwork-1.0.dtd index d04fb7b2fb..bdac1f976b 100644 --- a/core/src/test/resources/xwork-1.0.dtd +++ b/core/src/test/resources/xwork-1.0.dtd @@ -1 +1,21 @@ + Duplicate file test \ No newline at end of file diff --git a/plugins/config-browser/src/main/resources/config-browser/actionNames.ftl b/plugins/config-browser/src/main/resources/config-browser/actionNames.ftl index d850028f52..993e8640fa 100644 --- a/plugins/config-browser/src/main/resources/config-browser/actionNames.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/actionNames.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/error.ftl b/plugins/config-browser/src/main/resources/config-browser/error.ftl index 7f35b52667..e66c1276cf 100644 --- a/plugins/config-browser/src/main/resources/config-browser/error.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/error.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/page-footer.ftl b/plugins/config-browser/src/main/resources/config-browser/page-footer.ftl index b69f7754d3..60d56178d0 100644 --- a/plugins/config-browser/src/main/resources/config-browser/page-footer.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/page-footer.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/page-header.ftl b/plugins/config-browser/src/main/resources/config-browser/page-header.ftl index 18ee1a62f0..ac286130bb 100644 --- a/plugins/config-browser/src/main/resources/config-browser/page-header.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/page-header.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/showBeans.ftl b/plugins/config-browser/src/main/resources/config-browser/showBeans.ftl index 4a01db34d9..78a614097f 100644 --- a/plugins/config-browser/src/main/resources/config-browser/showBeans.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/showBeans.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/showConfig.ftl b/plugins/config-browser/src/main/resources/config-browser/showConfig.ftl index d140fca518..c661c71976 100644 --- a/plugins/config-browser/src/main/resources/config-browser/showConfig.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/showConfig.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/showConstants.ftl b/plugins/config-browser/src/main/resources/config-browser/showConstants.ftl index 312f96a789..05bcce3215 100644 --- a/plugins/config-browser/src/main/resources/config-browser/showConstants.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/showConstants.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/showJars.ftl b/plugins/config-browser/src/main/resources/config-browser/showJars.ftl index 4ea8d4f46f..feb3d2515f 100644 --- a/plugins/config-browser/src/main/resources/config-browser/showJars.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/showJars.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/showValidators.ftl b/plugins/config-browser/src/main/resources/config-browser/showValidators.ftl index 47c6fe32a8..ad98169f26 100644 --- a/plugins/config-browser/src/main/resources/config-browser/showValidators.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/showValidators.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/simple-error.ftl b/plugins/config-browser/src/main/resources/config-browser/simple-error.ftl index e0c6311663..f3de13c721 100644 --- a/plugins/config-browser/src/main/resources/config-browser/simple-error.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/simple-error.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/tigris-macros.ftl b/plugins/config-browser/src/main/resources/config-browser/tigris-macros.ftl index 4bb4d420a5..cb0a5e7fae 100644 --- a/plugins/config-browser/src/main/resources/config-browser/tigris-macros.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/tigris-macros.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/config-browser/src/main/resources/config-browser/validatorDetails.ftl b/plugins/config-browser/src/main/resources/config-browser/validatorDetails.ftl index 77f4264ce1..d4fb2d73c6 100644 --- a/plugins/config-browser/src/main/resources/config-browser/validatorDetails.ftl +++ b/plugins/config-browser/src/main/resources/config-browser/validatorDetails.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-error.ftl b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-error.ftl index 1294af3094..8e670c1a2b 100644 --- a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-error.ftl +++ b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-error.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 diff --git a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-input.ftl b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-input.ftl index 0016cef8ef..3c9c901a30 100644 --- a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-input.ftl +++ b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/tutorial/sitegraph/guess-input.ftl @@ -1,7 +1,5 @@ <#-- /* - * $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 From fd8e3bc912b20813fb4a668e6b5778ef483c7deb Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 11:51:44 +0200 Subject: [PATCH 0201/2288] Adds missing header with license --- apps/rest-showcase/src/main/webapp/css/app.css | 18 ++++++++++++++++++ .../DefaultValidatorFileParserTest.java | 10 +++++----- .../dispatcher/StaticContentLoaderTest.java | 2 +- .../org/apache/struts2/static/resource.css | 18 ++++++++++++++++++ pom.xml | 1 + 5 files changed, 43 insertions(+), 6 deletions(-) diff --git a/apps/rest-showcase/src/main/webapp/css/app.css b/apps/rest-showcase/src/main/webapp/css/app.css index 266479a389..f77ce39f78 100644 --- a/apps/rest-showcase/src/main/webapp/css/app.css +++ b/apps/rest-showcase/src/main/webapp/css/app.css @@ -1,3 +1,21 @@ +/* + * 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. + */ .form-group .errorMessage { list-style: none; font-weight: bold; diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java index 5bfe151733..50b35e5679 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java @@ -101,7 +101,7 @@ public void testParser() { assertEquals("required", cfg.getType()); assertEquals("foo", cfg.getParams().get("fieldName")); assertEquals("You must enter a value for foo.", cfg.getDefaultMessage()); - assertEquals(4, cfg.getLocation().getLineNumber()); + assertEquals(24, cfg.getLocation().getLineNumber()); cfg = (ValidatorConfig) configs.get(3); assertEquals("required", cfg.getType()); @@ -124,7 +124,7 @@ public void testParserWithBadValidation() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName3); } catch (XWorkException ex) { - assertTrue("Wrong line number", 3 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number", 23 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); @@ -137,7 +137,7 @@ public void testParserWithBadXML() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName4); } catch (XWorkException ex) { - assertTrue("Wrong line number: " + ex.getLocation(), 13 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number: " + ex.getLocation(), 33 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); @@ -150,7 +150,7 @@ public void testParserWithBadXML2() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileNameFail); } catch (XWorkException ex) { - assertTrue("Wrong line number: " + ex.getLocation(), 8 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number: " + ex.getLocation(), 28 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); @@ -163,7 +163,7 @@ public void testValidatorDefinitionsWithBadClassName() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName5); } catch (XWorkException ex) { - assertTrue("Wrong line number", 3 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number", 23 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); diff --git a/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java b/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java index e0eed0a0b3..7995ecadac 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java @@ -57,7 +57,7 @@ public void testCanHandle() { public void testValidRersources() throws IOException { contentLoader.findStaticResource("/struts/resource.css", req, res); - assertEquals("heya!", res.getContentAsString()); + assertTrue(res.getContentAsString().contains("heya!")); } public void testInvalidRersources1() throws IOException { diff --git a/core/src/test/resources/org/apache/struts2/static/resource.css b/core/src/test/resources/org/apache/struts2/static/resource.css index b4d8ec7ca0..7d6fde5bff 100644 --- a/core/src/test/resources/org/apache/struts2/static/resource.css +++ b/core/src/test/resources/org/apache/struts2/static/resource.css @@ -1 +1,19 @@ +/* + * 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. + */ heya! \ No newline at end of file diff --git a/pom.xml b/pom.xml index 0f393de910..25118a5be7 100644 --- a/pom.xml +++ b/pom.xml @@ -356,6 +356,7 @@ src/test/resources/org/apache/struts2/interceptor/validation/* src/site/resources/tags/** src/main/resources/*LICENSE.txt + src/test/resources/com/opensymphony/xwork2/somefile.txt From cb3299b3c9582538248852f4cd0a84bd3e3c4cbc Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 17:47:32 +0200 Subject: [PATCH 0202/2288] Enables Rat plugin on each build --- pom.xml | 91 +++++++++++++++++++++++++-------------------------------- 1 file changed, 40 insertions(+), 51 deletions(-) diff --git a/pom.xml b/pom.xml index 25118a5be7..8a1fa67b69 100644 --- a/pom.xml +++ b/pom.xml @@ -128,43 +128,6 @@ assembly - jdk8 @@ -254,6 +217,33 @@ + + org.apache.rat + apache-rat-plugin + + true + true + true + false + + + org.apache.rat.analysis.license.ApacheSoftwareLicense20 + + + + pom.xml + src/** + + + src/test/resources/org/apache/struts2/views/jsp/ui/* + src/main/resources/org/apache/struts2/static/domTT.js + src/test/resources/org/apache/struts2/interceptor/validation/* + src/site/resources/tags/** + src/main/resources/*LICENSE.txt + src/test/resources/com/opensymphony/xwork2/somefile.txt + + + @@ -313,6 +303,19 @@ + + org.apache.rat + apache-rat-plugin + + + verify + + check + + + + + install @@ -345,20 +348,6 @@ org.apache.rat apache-rat-plugin - - - pom.xml - src/** - - - src/test/resources/org/apache/struts2/views/jsp/ui/* - src/main/resources/org/apache/struts2/static/domTT.js - src/test/resources/org/apache/struts2/interceptor/validation/* - src/site/resources/tags/** - src/main/resources/*LICENSE.txt - src/test/resources/com/opensymphony/xwork2/somefile.txt - - From e7c65fb0b43975f192b55d0176c707e587b60670 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 17:47:48 +0200 Subject: [PATCH 0203/2288] Adds missing header with license --- .../demo/rest/example/IndexController.java | 18 ++++++++ .../java/org/demo/rest/example/Order.java | 18 ++++++++ .../demo/rest/example/OrdersController.java | 18 ++++++++ .../org/demo/rest/example/OrdersService.java | 18 ++++++++ .../struts2/rest/example/GetOrdersTest.java | 18 ++++++++ .../struts2/rest/example/ListOrdersTest.java | 18 ++++++++ .../struts2/rest/example/ParameterUtils.java | 18 ++++++++ .../struts2/rest/example/PostOrderTest.java | 18 ++++++++ .../showcase/action/AbstractCRUDAction.java | 2 - .../showcase/action/EmployeeAction.java | 2 - .../showcase/action/ExampleAction.java | 2 - .../showcase/action/JSPEvalAction.java | 2 - .../struts2/showcase/action/SkillAction.java | 2 - .../showcase/actionchaining/ActionChain1.java | 2 - .../showcase/actionchaining/ActionChain2.java | 2 - .../showcase/actionchaining/ActionChain3.java | 2 - .../constraints/FieldMatch.java | 2 - .../constant/ValidatorConstants.java | 2 - .../BeanValidationInterceptor.java | 2 - .../interceptor/BeanValidationManager.java | 2 - .../DefaultBeanValidationManager.java | 2 - .../BeanValidationInterceptorTest.java | 2 - .../struts/beanvalidation/VoidResult.java | 2 - .../beanvalidation/actions/FieldAction.java | 2 - .../actions/FieldActionDoExecute.java | 18 ++++++++ .../actions/FieldMatchAction.java | 2 - .../actions/ModelDrivenAction.java | 2 - .../actions/ModelDrivenActionInterface.java | 18 ++++++++ .../struts/beanvalidation/models/Address.java | 2 - .../struts/beanvalidation/models/Person.java | 17 ++++---- .../apache/struts2/cdi/CdiObjectFactory.java | 1 - .../struts2/cdi/CdiObjectFactoryTest.java | 18 ++++++++ .../org/apache/struts2/cdi/FooConsumer.java | 18 ++++++++ .../org/apache/struts2/cdi/FooService.java | 18 ++++++++ .../config_browser/ActionNamesAction.java | 3 -- .../config_browser/ConfigurationHelper.java | 3 -- .../config_browser/ListValidatorsAction.java | 3 -- .../config_browser/ShowBeansAction.java | 3 -- .../config_browser/ShowConfigAction.java | 4 -- .../config_browser/ShowConstantsAction.java | 3 -- .../config_browser/ShowJarsAction.java | 3 -- .../config_browser/ShowValidatorAction.java | 3 -- .../convention/AbstractActionNameBuilder.java | 1 - .../struts2/convention/annotation/Action.java | 2 - .../convention/annotation/Actions.java | 2 - .../convention/annotation/AllowedMethods.java | 18 ++++++++ .../annotation/DefaultInterceptorRef.java | 2 - .../annotation/ExceptionMapping.java | 2 - .../annotation/ExceptionMappings.java | 2 - .../convention/annotation/InterceptorRef.java | 2 - .../annotation/InterceptorRefs.java | 2 - .../convention/annotation/Namespace.java | 2 - .../convention/annotation/Namespaces.java | 2 - .../convention/annotation/ParentPackage.java | 2 - .../struts2/convention/annotation/Result.java | 2 - .../convention/annotation/ResultPath.java | 2 - .../convention/annotation/Results.java | 2 - .../ConventionUnknownHandlerTest.java | 2 - .../DefaultResultMapBuilderTest.java | 2 - .../PackageBasedActionConfigBuilderTest.java | 2 - .../convention/ReflectionToolsTest.java | 2 - .../convention/SEOActionNameBuilderTest.java | 2 - .../struts2/convention/TestInterceptor.java | 42 +++++++++++++------ .../actions/DefaultResultPathAction.java | 2 - .../actions/NoAnnotationAction.java | 2 - .../struts2/convention/actions/Skip.java | 2 - .../actions/action/ActionNameAction.java | 2 - .../actions/action/ActionNamesAction.java | 2 - .../action/ClassLevelAnnotationAction.java | 2 - ...assLevelAnnotationDefaultMethodAction.java | 2 - .../action/ClassLevelAnnotationsAction.java | 2 - ...ssLevelAnnotationsDefaultMethodAction.java | 2 - .../actions/action/ClassNameAction.java | 2 - .../action/SingleActionNameAction.java | 2 - .../convention/actions/action/TestAction.java | 2 - .../convention/actions/action/TestBase.java | 2 - .../actions/action/TestExtends.java | 2 - .../ClassLevelAllowedMethodsAction.java | 18 ++++++++ .../PackageLevelAllowedMethodsAction.java | 18 ++++++++ .../actions/allowedmethods/package-info.java | 2 - ...PackageLevelAllowedMethodsChildAction.java | 18 ++++++++ .../actions/chain/ChainedAction.java | 2 - .../SingleActionNameAction2.java | 2 - .../defaultinterceptor/package-info.java | 2 - .../ExceptionsActionLevelAction.java | 2 - .../ExceptionsMethodLevelAction.java | 2 - .../actions/exclude/ExcludeAction.java | 2 - .../struts2/convention/actions/idx/Index.java | 2 - .../convention/actions/idx/idx2/Index.java | 2 - .../ActionLevelInterceptor2Action.java | 2 - .../ActionLevelInterceptor3Action.java | 2 - .../ActionLevelInterceptorAction.java | 2 - .../interceptor/InterceptorsAction.java | 2 - .../namespace/ActionLevelNamespaceAction.java | 2 - .../namespace/ClassLevelNamespaceAction.java | 2 - .../PackageLevelNamespaceAction.java | 2 - .../actions/namespace/package-info.java | 2 - .../namespace2/DefaultNamespaceAction.java | 2 - .../ActionLevelNamespacesAction.java | 2 - ...ActionAndPackageLevelNamespacesAction.java | 2 - .../actions/namespace4/package-info.java | 2 - .../params/ActionParamsMethodLevelAction.java | 2 - .../ClassLevelParentPackageAction.java | 2 - .../PackageLevelParentPackageAction.java | 2 - .../actions/parentpackage/package-info.java | 2 - .../ClassLevelParentPackageChildAction.java | 2 - .../PackageLevelParentPackageChildAction.java | 2 - .../result/ActionLevelResultAction.java | 2 - .../result/ActionLevelResultsAction.java | 2 - .../result/ActionLevelResultsNamesAction.java | 2 - .../result/ClassLevelResultAction.java | 2 - .../result/ClassLevelResultsAction.java | 2 - .../actions/result/GlobalResultAction.java | 18 ++++++++ .../result/GlobalResultOverrideAction.java | 18 ++++++++ .../result/InheritedResultExtends.java | 2 - .../result/InheritedResultTestBase.java | 2 - .../result/InheritedResultsExtends.java | 2 - .../result/InheritedResultsTestBase.java | 2 - .../OverrideInheritedResultExtends.java | 2 - .../OverrideInheritedResultTestBase.java | 2 - .../actions/result/OverrideResultAction.java | 2 - .../ClassLevelResultPathAction.java | 2 - .../PackageLevelResultPathAction.java | 2 - .../actions/resultpath/package-info.java | 2 - .../convention/actions/skip/Index.java | 2 - .../actions/transactions/TransNameAction.java | 2 - .../convention/dontfind/DontFindMeAction.java | 2 - .../struts2/validators/DWRValidator.java | 3 -- .../org/apache/struts2/EmbeddedJSPResult.java | 2 - .../java/org/apache/struts2/JSPLoader.java | 2 - .../java/org/apache/struts2/JSPRuntime.java | 2 - .../org/apache/struts2/JSPServletConfig.java | 2 - .../java/org/apache/struts2/ServletCache.java | 2 - .../struts2/compiler/MemoryClassLoader.java | 2 - .../compiler/MemoryJavaFileObject.java | 2 - .../struts2/el/ExpressionFactoryImpl.java | 32 +++++++------- .../struts2/el/MethodExpressionImpl.java | 32 +++++++------- .../struts2/el/MethodExpressionLiteral.java | 32 +++++++------- .../struts2/el/ValueExpressionImpl.java | 32 +++++++------- .../struts2/el/ValueExpressionLiteral.java | 32 +++++++------- .../apache/struts2/el/lang/ELArithmetic.java | 27 ++++++------ .../org/apache/struts2/el/lang/ELSupport.java | 31 +++++++------- .../struts2/el/lang/EvaluationContext.java | 31 +++++++------- .../struts2/el/lang/ExpressionBuilder.java | 27 ++++++------ .../el/lang/FunctionMapperFactory.java | 31 +++++++------- .../struts2/el/lang/FunctionMapperImpl.java | 31 +++++++------- .../el/lang/VariableMapperFactory.java | 31 +++++++------- .../struts2/el/lang/VariableMapperImpl.java | 31 +++++++------- .../struts2/el/parser/ArithmeticNode.java | 31 +++++++------- .../org/apache/struts2/el/parser/AstAnd.java | 28 ++++++------- .../struts2/el/parser/AstBracketSuffix.java | 28 ++++++------- .../apache/struts2/el/parser/AstChoice.java | 28 ++++++------- .../el/parser/AstCompositeExpression.java | 28 ++++++------- .../el/parser/AstDeferredExpression.java | 28 ++++++------- .../org/apache/struts2/el/parser/AstDiv.java | 28 ++++++------- .../struts2/el/parser/AstDotSuffix.java | 28 ++++++------- .../el/parser/AstDynamicExpression.java | 28 ++++++------- .../apache/struts2/el/parser/AstEmpty.java | 28 ++++++------- .../apache/struts2/el/parser/AstEqual.java | 28 ++++++------- .../apache/struts2/el/parser/AstFalse.java | 28 ++++++------- .../struts2/el/parser/AstFloatingPoint.java | 28 ++++++------- .../apache/struts2/el/parser/AstFunction.java | 28 ++++++------- .../struts2/el/parser/AstGreaterThan.java | 28 ++++++------- .../el/parser/AstGreaterThanEqual.java | 28 ++++++------- .../struts2/el/parser/AstIdentifier.java | 28 ++++++------- .../apache/struts2/el/parser/AstInteger.java | 28 ++++++------- .../apache/struts2/el/parser/AstLessThan.java | 29 +++++++------ .../struts2/el/parser/AstLessThanEqual.java | 29 +++++++------ .../el/parser/AstLiteralExpression.java | 29 +++++++------ .../apache/struts2/el/parser/AstMinus.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstMod.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstMult.java | 29 +++++++------ .../apache/struts2/el/parser/AstNegative.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstNot.java | 29 +++++++------ .../apache/struts2/el/parser/AstNotEqual.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstNull.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstOr.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstPlus.java | 29 +++++++------ .../apache/struts2/el/parser/AstString.java | 29 +++++++------ .../org/apache/struts2/el/parser/AstTrue.java | 29 +++++++------ .../apache/struts2/el/parser/AstValue.java | 29 +++++++------ .../apache/struts2/el/parser/BooleanNode.java | 31 +++++++------- .../org/apache/struts2/el/parser/Node.java | 34 +++++++-------- .../apache/struts2/el/parser/NodeVisitor.java | 30 ++++++------- .../struts2/el/parser/ParseException.java | 20 ++++++++- .../struts2/el/parser/SimpleCharStream.java | 20 ++++++++- .../apache/struts2/el/parser/SimpleNode.java | 29 +++++++------ .../org/apache/struts2/el/parser/Token.java | 20 ++++++++- .../struts2/el/parser/TokenMgrError.java | 20 ++++++++- .../struts2/el/util/ConcurrentCache.java | 26 ++++++------ .../struts2/el/util/MessageFactory.java | 30 ++++++------- .../struts2/el/util/ReflectionUtil.java | 31 +++++++------- .../org/apache/struts2/jasper/Constants.java | 32 +++++++------- .../apache/struts2/jasper/CustomCompiler.java | 2 - .../jasper/EmbeddedServletOptions.java | 31 +++++++------- .../struts2/jasper/JasperException.java | 31 +++++++------- .../java/org/apache/struts2/jasper/JspC.java | 27 ++++++------ .../struts2/jasper/JspCompilationContext.java | 31 +++++++------- .../org/apache/struts2/jasper/Options.java | 31 +++++++------- .../jasper/compiler/BeanRepository.java | 31 +++++++------- .../struts2/jasper/compiler/Collector.java | 27 ++++++------ .../struts2/jasper/compiler/Compiler.java | 31 +++++++------- .../jasper/compiler/DefaultErrorHandler.java | 31 +++++++------- .../struts2/jasper/compiler/Dumper.java | 31 +++++++------- .../jasper/compiler/ELFunctionMapper.java | 31 +++++++------- .../struts2/jasper/compiler/ELNode.java | 31 +++++++------- .../struts2/jasper/compiler/ELParser.java | 31 +++++++------- .../jasper/compiler/ErrorDispatcher.java | 30 ++++++------- .../struts2/jasper/compiler/ErrorHandler.java | 31 +++++++------- .../struts2/jasper/compiler/Generator.java | 27 ++++++------ .../compiler/ImplicitTagLibraryInfo.java | 31 +++++++------- .../jasper/compiler/JasperTagInfo.java | 31 +++++++------- .../jasper/compiler/JavacErrorDetail.java | 31 +++++++------- .../struts2/jasper/compiler/JspConfig.java | 31 +++++++------- .../jasper/compiler/JspDocumentParser.java | 30 ++++++------- .../struts2/jasper/compiler/JspReader.java | 31 +++++++------- .../jasper/compiler/JspRuntimeContext.java | 31 +++++++------- .../struts2/jasper/compiler/JspUtil.java | 31 +++++++------- .../struts2/jasper/compiler/Localizer.java | 31 +++++++------- .../apache/struts2/jasper/compiler/Mark.java | 30 ++++++------- .../apache/struts2/jasper/compiler/Node.java | 31 +++++++------- .../struts2/jasper/compiler/PageDataImpl.java | 30 ++++++------- .../struts2/jasper/compiler/PageInfo.java | 26 ++++++------ .../struts2/jasper/compiler/Parser.java | 30 ++++++------- .../jasper/compiler/ParserController.java | 31 +++++++------- .../jasper/compiler/ScriptingVariabler.java | 31 +++++++------- .../jasper/compiler/ServletWriter.java | 30 ++++++------- .../jasper/compiler/SmapGenerator.java | 31 +++++++------- .../struts2/jasper/compiler/SmapStratum.java | 31 +++++++------- .../struts2/jasper/compiler/SmapUtil.java | 31 +++++++------- .../struts2/jasper/compiler/TagConstants.java | 31 +++++++------- .../jasper/compiler/TagFileProcessor.java | 31 +++++++------- .../jasper/compiler/TagLibraryInfoImpl.java | 31 +++++++------- .../jasper/compiler/TagPluginManager.java | 31 +++++++------- .../jasper/compiler/TextOptimizer.java | 30 ++++++------- .../jasper/compiler/TldLocationsCache.java | 31 +++++++------- .../struts2/jasper/compiler/Validator.java | 31 +++++++------- .../jasper/compiler/tagplugin/TagPlugin.java | 31 +++++++------- .../compiler/tagplugin/TagPluginContext.java | 32 +++++++------- .../struts2/jasper/el/ELContextImpl.java | 30 ++++++------- .../struts2/jasper/el/ELContextWrapper.java | 30 ++++++------- .../struts2/jasper/el/ELResolverImpl.java | 31 +++++++------- .../jasper/el/ExpressionEvaluatorImpl.java | 31 +++++++------- .../struts2/jasper/el/ExpressionImpl.java | 30 ++++++------- .../struts2/jasper/el/FunctionMapperImpl.java | 30 ++++++------- .../struts2/jasper/el/JspELException.java | 30 ++++++------- .../jasper/el/JspMethodExpression.java | 30 ++++++------- .../jasper/el/JspMethodNotFoundException.java | 30 ++++++------- .../el/JspPropertyNotFoundException.java | 30 ++++++------- .../el/JspPropertyNotWritableException.java | 30 ++++++------- .../struts2/jasper/el/JspValueExpression.java | 30 ++++++------- .../jasper/el/VariableResolverImpl.java | 30 ++++++------- .../jasper/runtime/AnnotationHelper.java | 31 +++++++------- .../jasper/runtime/BodyContentImpl.java | 31 +++++++------- .../struts2/jasper/runtime/HttpJspBase.java | 31 +++++++------- .../runtime/JspApplicationContextImpl.java | 30 ++++++------- .../jasper/runtime/JspContextWrapper.java | 31 +++++++------- .../jasper/runtime/JspFactoryImpl.java | 30 ++++++------- .../jasper/runtime/JspFragmentHelper.java | 31 +++++++------- .../jasper/runtime/JspRuntimeLibrary.java | 31 +++++++------- .../jasper/runtime/JspSourceDependent.java | 31 +++++++------- .../struts2/jasper/runtime/JspWriterImpl.java | 31 +++++++------- .../jasper/runtime/PageContextImpl.java | 31 +++++++------- .../runtime/PerThreadTagHandlerPool.java | 31 +++++++------- .../runtime/ProtectedFunctionMapper.java | 31 +++++++------- .../ServletResponseWrapperInclude.java | 31 +++++++------- .../jasper/runtime/TagHandlerPool.java | 31 +++++++------- .../jasper/security/SecurityClassLoad.java | 32 +++++++------- .../struts2/jasper/security/SecurityUtil.java | 30 ++++++------- .../struts2/jasper/servlet/JasperLoader.java | 31 +++++++------- .../jasper/servlet/JspCServletContext.java | 31 +++++++------- .../struts2/jasper/servlet/JspServlet.java | 31 +++++++------- .../jasper/servlet/JspServletWrapper.java | 31 +++++++------- .../struts2/jasper/tagplugins/jstl/Util.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Catch.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Choose.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/ForEach.java | 32 +++++++------- .../tagplugins/jstl/core/ForTokens.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/If.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Import.java | 32 +++++++------- .../tagplugins/jstl/core/Otherwise.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Out.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Param.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Redirect.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Remove.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Set.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/Url.java | 32 +++++++------- .../jasper/tagplugins/jstl/core/When.java | 32 +++++++------- .../struts2/jasper/util/Enumerator.java | 34 +++++++-------- .../struts2/jasper/xmlparser/ASCIIReader.java | 31 +++++++------- .../struts2/jasper/xmlparser/EncodingMap.java | 37 +++++++--------- .../struts2/jasper/xmlparser/ParserUtils.java | 31 +++++++------- .../struts2/jasper/xmlparser/SymbolTable.java | 37 +++++++--------- .../struts2/jasper/xmlparser/TreeNode.java | 32 +++++++------- .../struts2/jasper/xmlparser/UCSReader.java | 31 +++++++------- .../struts2/jasper/xmlparser/UTF8Reader.java | 31 +++++++------- .../struts2/jasper/xmlparser/XMLChar.java | 37 +++++++--------- .../jasper/xmlparser/XMLEncodingDetector.java | 37 +++++++--------- .../struts2/jasper/xmlparser/XMLString.java | 37 +++++++--------- .../jasper/xmlparser/XMLStringBuffer.java | 37 +++++++--------- .../org/apache/struts2/el/Messages.properties | 0 .../apache/struts2/el/Messages_es.properties | 0 .../jasper/servlet/mbeans-descriptors.xml | 0 .../jasper/tagplugins/jstl/tagPlugins.xml | 0 .../apache/struts2/views/gxp/AbstractGxp.java | 2 - .../struts2/views/gxp/AbstractGxpResult.java | 2 - .../org/apache/struts2/views/gxp/Gxp.java | 2 - .../apache/struts2/views/gxp/GxpInstance.java | 2 - .../apache/struts2/views/gxp/GxpResult.java | 2 - .../org/apache/struts2/views/gxp/Param.java | 2 - .../views/jasperreports/CompileReport.java | 3 -- .../jasperreports/JasperReportConstants.java | 3 -- .../jasperreports/JasperReportsResult.java | 3 -- .../jasperreports/ValueStackDataSource.java | 3 -- .../jasperreports/ValueStackShadowMap.java | 3 -- .../apache/struts2/views/java/Attributes.java | 2 - .../views/java/DefaultTagHandlerFactory.java | 2 - .../struts2/views/java/DefaultTheme.java | 3 -- .../views/java/JavaTemplateEngine.java | 2 - .../struts2/views/java/TagGenerator.java | 2 - .../apache/struts2/views/java/TagHandler.java | 2 - .../struts2/views/java/TagHandlerFactory.java | 2 - .../struts2/views/java/TagSerializer.java | 2 - .../org/apache/struts2/views/java/Theme.java | 2 - .../views/java/XHTMLTagSerializer.java | 2 - .../simple/AbstractMessageListHandler.java | 2 - .../views/java/simple/AbstractTagHandler.java | 2 - .../views/java/simple/ActionErrorHandler.java | 2 - .../java/simple/ActionMessageHandler.java | 3 -- .../views/java/simple/AnchorHandler.java | 2 - .../views/java/simple/CheckboxHandler.java | 3 -- .../java/simple/CheckboxListHandler.java | 3 -- .../java/simple/CommonAttributesHandler.java | 2 - .../java/simple/DateTextFieldHandler.java | 18 ++++++++ .../java/simple/DynamicAttributesHandler.java | 3 -- .../views/java/simple/EmptyHandler.java | 2 - .../views/java/simple/FieldErrorHandler.java | 2 - .../views/java/simple/FileHandler.java | 2 - .../views/java/simple/FormHandler.java | 2 - .../views/java/simple/HeadHandler.java | 3 -- .../views/java/simple/HiddenHandler.java | 2 - .../views/java/simple/LabelHandler.java | 2 - .../views/java/simple/PasswordHandler.java | 2 - .../views/java/simple/RadioHandler.java | 3 -- .../views/java/simple/ResetHandler.java | 2 - .../java/simple/ScriptingEventsHandler.java | 2 - .../views/java/simple/SelectHandler.java | 2 - .../views/java/simple/SimpleTheme.java | 2 - .../views/java/simple/SubmitHandler.java | 2 - .../views/java/simple/TextAreaHandler.java | 2 - .../views/java/simple/TextFieldHandler.java | 2 - .../views/java/simple/TokenHandler.java | 2 - .../struts2/dispatcher/ChartResult.java | 3 -- .../struts2/dispatcher/ChartResultTest.java | 3 -- .../json/JSONActionRedirectResult.java | 18 ++++++++ .../org/apache/struts2/json/JSONCleaner.java | 2 - .../apache/struts2/json/JSONConstants.java | 25 ++++++----- .../apache/struts2/json/JSONException.java | 2 - .../apache/struts2/json/JSONInterceptor.java | 2 - .../apache/struts2/json/JSONPopulator.java | 2 - .../org/apache/struts2/json/JSONReader.java | 2 - .../org/apache/struts2/json/JSONResult.java | 2 - .../org/apache/struts2/json/JSONUtil.java | 2 - .../json/JSONValidationInterceptor.java | 3 -- .../org/apache/struts2/json/JSONWriter.java | 25 ++++++----- .../struts2/json/SerializationParams.java | 2 - .../apache/struts2/json/annotations/JSON.java | 2 - .../json/annotations/JSONFieldBridge.java | 3 -- .../json/annotations/JSONParameter.java | 3 -- .../apache/struts2/json/annotations/SMD.java | 2 - .../struts2/json/annotations/SMDMethod.java | 2 - .../json/annotations/SMDMethodParameter.java | 2 - .../struts2/json/bridge/FieldBridge.java | 3 -- .../json/bridge/ParameterizedBridge.java | 3 -- .../struts2/json/bridge/StringBridge.java | 3 -- .../org/apache/struts2/json/rpc/RPCError.java | 2 - .../apache/struts2/json/rpc/RPCErrorCode.java | 2 - .../apache/struts2/json/rpc/RPCResponse.java | 2 - .../java/org/apache/struts2/json/smd/SMD.java | 2 - .../apache/struts2/json/smd/SMDGenerator.java | 18 ++++++++ .../apache/struts2/json/smd/SMDMethod.java | 2 - .../struts2/json/smd/SMDMethodParameter.java | 2 - .../java/org/apache/struts2/json/AnEnum.java | 2 - .../org/apache/struts2/json/AnEnumBean.java | 2 - .../org/apache/struts2/json/AnotherBean.java | 18 ++++++++ .../java/org/apache/struts2/json/Bean.java | 2 - .../struts2/json/DefaultJSONWriterTest.java | 18 ++++++++ .../json/JSONActionRedirectResultTest.java | 18 ++++++++ .../apache/struts2/json/JSONCleanerTest.java | 27 ++++++------ .../org/apache/struts2/json/JSONEnumTest.java | 2 - .../struts2/json/JSONInterceptorTest.java | 2 - .../struts2/json/JSONPopulatorTest.java | 2 - .../apache/struts2/json/JSONReaderTest.java | 18 ++++++++ .../apache/struts2/json/JSONResultTest.java | 2 - .../org/apache/struts2/json/JSONUtilTest.java | 2 - .../json/JSONValidationInterceptorTest.java | 3 -- .../org/apache/struts2/json/ListBean.java | 18 ++++++++ .../org/apache/struts2/json/OtherBean.java | 2 - .../apache/struts2/json/SMDActionTest1.java | 2 - .../apache/struts2/json/SMDActionTest2.java | 2 - .../struts2/json/SMDMethodInterfaceTest.java | 2 - .../org/apache/struts2/json/SimpleValue.java | 2 - .../apache/struts2/json/SingleDateBean.java | 18 ++++++++ .../json/StrutsMockHttpServletRequest.java | 1 - .../json/StrutsMockHttpServletResponse.java | 18 ++++++++ .../struts2/json/StrutsMockHttpSession.java | 1 - .../json/StrutsMockServletContext.java | 1 - .../org/apache/struts2/json/TestAction.java | 2 - .../org/apache/struts2/json/TestAction2.java | 2 - .../org/apache/struts2/json/TestAction3.java | 2 - .../org/apache/struts2/json/TestAction4.java | 2 - .../org/apache/struts2/json/TestAction5.java | 2 - .../org/apache/struts2/json/TestUtils.java | 2 - .../apache/struts2/json/WrapperClassBean.java | 2 - .../ConventionPluginResourceLoader.java | 18 ++++++++ .../apache/struts2/StrutsJUnit4TestCase.java | 3 -- .../apache/struts2/StrutsRestTestCase.java | 18 ++++++++ .../struts2/StrutsSpringJUnit4TestCase.java | 3 -- .../apache/struts2/StrutsSpringTestCase.java | 2 - .../org/apache/struts2/StrutsTestCase.java | 3 -- .../src/test/java/actions/ViewAction.java | 2 - .../org/apache/struts2/JUnitTestAction.java | 2 - .../org/apache/struts2/MySessionBean.java | 2 - .../struts2/StrutsJUnit4TestCaseTest.java | 3 -- .../StrutsSpringJUnit4TestCaseTest.java | 2 - .../struts2/StrutsSpringTestCaseTest.java | 2 - .../apache/struts2/StrutsTestCaseTest.java | 2 - .../StrutsJUnit4ConventionTestCaseTest.java | 2 - .../struts2/session/SessionGetAction.java | 2 - .../struts2/session/SessionSetAction.java | 2 - .../StrutsJUnit4SessionTestCaseTest.java | 3 -- .../apache/struts2/osgi/BundleAccessor.java | 3 -- .../osgi/BundleClassLoaderInterface.java | 3 -- .../struts2/osgi/BundleFreemarkerManager.java | 3 -- .../struts2/osgi/BundlePackageLoader.java | 3 -- .../struts2/osgi/DefaultBundleAccessor.java | 3 -- .../struts2/osgi/DelegatingObjectFactory.java | 3 -- .../osgi/OsgiConfigurationProvider.java | 3 -- .../apache/struts2/osgi/OsgiHostFactory.java | 2 - .../org/apache/struts2/osgi/OsgiUtil.java | 3 -- .../apache/struts2/osgi/PackageLoader.java | 3 -- .../struts2/osgi/SpringOsgiObjectFactory.java | 3 -- .../struts2/osgi/StrutsOsgiListener.java | 18 ++++++++ .../struts2/osgi/host/BaseOsgiHost.java | 2 - .../struts2/osgi/host/FelixOsgiHost.java | 3 -- .../struts2/osgi/host/GlassfishOSGiHost.java | 2 - .../apache/struts2/osgi/host/OsgiHost.java | 5 --- .../osgi/interceptor/BundleContextAware.java | 2 - .../osgi/interceptor/OsgiInterceptor.java | 2 - .../osgi/interceptor/ServiceAware.java | 2 - .../FreeMarkerBundleResourceLoader.java | 3 -- .../StaticContentBundleResourceLoader.java | 3 -- .../loaders/VelocityBundleResourceLoader.java | 3 -- .../struts2/osgi/host/FelixOsgiHostTest.java | 2 - .../osgi/interceptor/OsgiInterceptorTest.java | 18 ++++++++ .../struts2/osgi/interceptor/SomeAction.java | 2 - .../struts2/oval/annotation/Profiles.java | 2 - .../DefaultOValValidationManager.java | 18 ++++++++ .../OValValidationInterceptor.java | 2 - .../interceptor/OValValidationManager.java | 20 ++++++++- .../DummyDefaultOValValidationManager.java | 2 - .../oval/interceptor/FieldsWithProfiles.java | 2 - .../oval/interceptor/MemberObject.java | 18 ++++++++ .../oval/interceptor/ModelDrivenAction.java | 18 ++++++++ .../OValValidationInterceptorTest.java | 2 - .../struts2/oval/interceptor/SimpleField.java | 2 - .../oval/interceptor/SimpleFieldI18n.java | 2 - .../SimpleFieldI18nDefaultKey.java | 2 - .../SimpleFieldJPAAnnotations.java | 2 - .../SimpleFieldOGNLExpression.java | 5 --- .../oval/interceptor/SimpleFieldsXML.java | 18 ++++++++ .../interceptor/SimpleFieldsXMLChild.java | 2 - .../oval/interceptor/SimpleMethod.java | 2 - .../oval/interceptor/ValidationInMethods.java | 2 - .../struts2/oval/interceptor/VoidResult.java | 2 - .../oval/interceptor/domain/Address.java | 18 ++++++++ .../oval/interceptor/domain/Person.java | 18 ++++++++ .../multipart/PellMultiPartRequest.java | 4 -- .../apache/struts2/plexus/PlexusFilter.java | 3 -- .../plexus/PlexusLifecycleListener.java | 3 -- .../struts2/plexus/PlexusObjectFactory.java | 3 -- .../struts2/plexus/PlexusThreadLocal.java | 3 -- .../apache/struts2/plexus/PlexusUtils.java | 3 -- .../views/tiles/PortletTilesResult.java | 3 -- .../apache/struts2/StrutsPortletTestCase.java | 18 ++++++++ .../components/PortletUrlRenderer.java | 2 - .../portlet/PortletApplicationMap.java | 2 - .../struts2/portlet/PortletConstants.java | 18 ++++++++ .../apache/struts2/portlet/PortletPhase.java | 18 ++++++++ .../struts2/portlet/PortletRequestMap.java | 2 - .../struts2/portlet/PortletSessionMap.java | 2 - .../portlet/context/PortletActionContext.java | 3 -- .../DirectRenderFromEventAction.java | 2 - .../portlet/dispatcher/DispatcherServlet.java | 2 - .../portlet/dispatcher/Jsr168Dispatcher.java | 3 -- .../portlet/dispatcher/Jsr286Dispatcher.java | 18 ++++++++ .../interceptor/PortletAwareInterceptor.java | 2 - .../interceptor/PortletContextAware.java | 2 - .../interceptor/PortletPreferencesAware.java | 2 - .../interceptor/PortletPrincipalProxy.java | 2 - .../interceptor/PortletRequestAware.java | 2 - .../interceptor/PortletResponseAware.java | 2 - .../interceptor/PortletStateInterceptor.java | 2 - .../ServletPortletPreferences.java | 2 - .../result/PortletActionRedirectResult.java | 2 - .../struts2/portlet/result/PortletResult.java | 2 - .../portlet/result/PortletResultHelper.java | 18 ++++++++ .../result/PortletResultHelperJSR168.java | 18 ++++++++ .../result/PortletResultHelperJSR286.java | 18 ++++++++ .../portlet/result/PortletVelocityResult.java | 2 - .../portlet/servlet/PortletHttpSession.java | 2 - .../portlet/servlet/PortletServletConfig.java | 2 - .../servlet/PortletServletContext.java | 2 - .../servlet/PortletServletInputStream.java | 2 - .../servlet/PortletServletOutputStream.java | 2 - .../servlet/PortletServletRequest.java | 2 - .../PortletServletRequestDispatcher.java | 2 - .../servlet/PortletServletResponse.java | 2 - .../servlet/PortletServletResponseJSR286.java | 18 ++++++++ .../portlet/util/PortletUrlHelper.java | 2 - .../portlet/util/PortletUrlHelperJSR286.java | 18 ++++++++ .../freemarker/PortletFreemarkerResult.java | 2 - .../struts2/components/PortletAction.java | 18 ++++++++ .../components/PortletUrlRendererTest.java | 18 ++++++++ .../portlet/PortletApplicationMapTest.java | 2 - .../portlet/PortletRequestMapTest.java | 2 - .../portlet/PortletSessionMapTest.java | 2 - .../context/PortletActionContextTest.java | 2 - .../dispatcher/Jsr168DispatcherTest.java | 2 - .../dispatcher/Jsr286DispatcherTest.java | 2 - .../PortletAwareInterceptorTest.java | 2 - .../PortletStateInterceptorTest.java | 2 - .../portlet/result/PortletResultTest.java | 2 - .../portlet/util/PortletUrlHelperTest.java | 2 - .../struts2/views/jsp/PortletUrlTagTest.java | 2 - .../rest/ContentTypeHandlerManager.java | 3 -- .../struts2/rest/ContentTypeInterceptor.java | 3 -- .../DefaultContentTypeHandlerManager.java | 3 -- .../struts2/rest/DefaultHttpHeaders.java | 3 -- .../org/apache/struts2/rest/HttpHeaders.java | 3 -- .../struts2/rest/RestActionInvocation.java | 3 -- .../apache/struts2/rest/RestActionMapper.java | 3 -- .../struts2/rest/RestActionProxyFactory.java | 3 -- .../struts2/rest/RestActionSupport.java | 3 -- .../struts2/rest/RestWorkflowInterceptor.java | 3 -- .../handler/AbstractContentTypeHandler.java | 1 - .../rest/handler/AllowedClassNames.java | 1 - .../struts2/rest/handler/AllowedClasses.java | 1 - .../rest/handler/ContentTypeHandler.java | 3 -- .../rest/handler/FormUrlEncodedHandler.java | 2 - .../struts2/rest/handler/HtmlHandler.java | 3 -- .../rest/handler/JacksonLibHandler.java | 3 -- .../struts2/rest/handler/JsonLibHandler.java | 3 -- .../handler/MultipartFormDataHandler.java | 2 - .../struts2/rest/handler/XStreamHandler.java | 3 -- .../handler/XStreamPermissionProvider.java | 1 - .../rest/ContentTypeHandlerManagerTest.java | 3 -- .../DefaultContentTypeHandlerManagerTest.java | 18 ++++++++ .../struts2/rest/DefaultHttpHeadersTest.java | 3 -- .../rest/RestActionInvocationTest.java | 18 ++++++++ .../struts2/rest/RestActionMapperTest.java | 3 -- .../rest/RestWorkflowInterceptorTest.java | 2 - .../apache/struts2/rest/handler/Contact.java | 3 -- .../rest/handler/JacksonLibHandlerTest.java | 3 -- .../rest/handler/JsonLibHandlerTest.java | 3 -- .../main/java/org/apache/struts2/Main.java | 3 -- .../apache/struts2/sitegraph/SiteGraph.java | 3 -- .../sitegraph/StrutsConfigRetriever.java | 3 -- .../sitegraph/entities/FileBasedView.java | 3 -- .../sitegraph/entities/FreeMarkerView.java | 3 -- .../struts2/sitegraph/entities/JspView.java | 3 -- .../struts2/sitegraph/entities/Target.java | 3 -- .../sitegraph/entities/VelocityView.java | 3 -- .../struts2/sitegraph/entities/View.java | 3 -- .../struts2/sitegraph/model/ActionNode.java | 3 -- .../apache/struts2/sitegraph/model/Graph.java | 3 -- .../struts2/sitegraph/model/IndentWriter.java | 3 -- .../apache/struts2/sitegraph/model/Link.java | 3 -- .../struts2/sitegraph/model/Render.java | 3 -- .../sitegraph/model/SiteGraphNode.java | 3 -- .../struts2/sitegraph/model/SubGraph.java | 3 -- .../struts2/sitegraph/model/ViewNode.java | 3 -- .../sitegraph/renderers/DOTRenderer.java | 3 -- .../struts2/sitegraph/SiteGraphTest.java | 3 -- .../sitemesh/FreemarkerDecoratorServlet.java | 2 - .../FreemarkerMapper2DecoratorSelector.java | 7 ---- .../sitemesh/FreemarkerPageFilter.java | 3 -- .../struts2/sitemesh/NoneDecoratorMapper.java | 3 -- .../OldDecorator2NewStrutsDecorator.java | 3 -- ...ecorator2NewStrutsFreemarkerDecorator.java | 9 ++-- ...dDecorator2NewStrutsVelocityDecorator.java | 8 +--- .../sitemesh/VelocityDecoratorServlet.java | 8 +--- .../VelocityMapper2DecoratorSelector.java | 6 --- .../struts2/sitemesh/VelocityPageFilter.java | 2 - .../spring/ClassReloadingBeanFactory.java | 3 -- .../ClassReloadingInstantiationStrategy.java | 2 - ...lassReloadingXMLWebApplicationContext.java | 2 - .../spring/StrutsSpringObjectFactory.java | 5 --- .../spring/StrutsSpringObjectFactoryTest.java | 3 -- .../org/apache/struts2/StrutsTestCase.java | 3 -- .../struts2/TestNGStrutsTestCaseTest.java | 3 -- .../struts2/tiles/I18NAttributeEvaluator.java | 1 - .../tiles/StrutsApplicationResource.java | 1 - .../tiles/StrutsAttributeEvaluator.java | 1 - .../StrutsFreeMarkerAttributeRenderer.java | 1 - .../struts2/tiles/StrutsPreparerFactory.java | 1 - .../tiles/StrutsTilesContainerFactory.java | 1 - .../struts2/tiles/StrutsTilesInitializer.java | 1 - .../struts2/tiles/StrutsTilesListener.java | 1 - .../tiles/StrutsTilesLocaleResolver.java | 1 - ...rutsWildcardServletApplicationContext.java | 1 - .../struts2/views/tiles/TilesResult.java | 3 -- 612 files changed, 3585 insertions(+), 3375 deletions(-) rename plugins/embeddedjsp/src/main/{java => resources}/org/apache/struts2/el/Messages.properties (100%) rename plugins/embeddedjsp/src/main/{java => resources}/org/apache/struts2/el/Messages_es.properties (100%) rename plugins/embeddedjsp/src/main/{java => resources}/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml (100%) rename plugins/embeddedjsp/src/main/{java => resources}/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml (100%) diff --git a/apps/rest-showcase/src/main/java/org/demo/rest/example/IndexController.java b/apps/rest-showcase/src/main/java/org/demo/rest/example/IndexController.java index 0e6d40355e..eb330e8af2 100644 --- a/apps/rest-showcase/src/main/java/org/demo/rest/example/IndexController.java +++ b/apps/rest-showcase/src/main/java/org/demo/rest/example/IndexController.java @@ -1,3 +1,21 @@ +/* + * 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 org.demo.rest.example; import org.apache.struts2.convention.annotation.Action; diff --git a/apps/rest-showcase/src/main/java/org/demo/rest/example/Order.java b/apps/rest-showcase/src/main/java/org/demo/rest/example/Order.java index 2c5e3f8224..ad368bf7d4 100644 --- a/apps/rest-showcase/src/main/java/org/demo/rest/example/Order.java +++ b/apps/rest-showcase/src/main/java/org/demo/rest/example/Order.java @@ -1,3 +1,21 @@ +/* + * 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 org.demo.rest.example; import org.apache.commons.lang3.builder.EqualsBuilder; diff --git a/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersController.java b/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersController.java index 8ccad7e7ad..2184e2b1ec 100644 --- a/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersController.java +++ b/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersController.java @@ -1,3 +1,21 @@ +/* + * 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 org.demo.rest.example; import java.util.Collection; diff --git a/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersService.java b/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersService.java index 1f36aa4e2a..321723e3f6 100644 --- a/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersService.java +++ b/apps/rest-showcase/src/main/java/org/demo/rest/example/OrdersService.java @@ -1,3 +1,21 @@ +/* + * 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 org.demo.rest.example; import java.util.*; diff --git a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/GetOrdersTest.java b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/GetOrdersTest.java index 9a2b8a731c..b44d3d9c2b 100644 --- a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/GetOrdersTest.java +++ b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/GetOrdersTest.java @@ -1,3 +1,21 @@ +/* + * 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 it.org.apache.struts2.rest.example; import net.sourceforge.jwebunit.junit.WebTestCase; diff --git a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ListOrdersTest.java b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ListOrdersTest.java index 75dfcdbb48..5fc76a5df1 100644 --- a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ListOrdersTest.java +++ b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ListOrdersTest.java @@ -1,3 +1,21 @@ +/* + * 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 it.org.apache.struts2.rest.example; import net.sourceforge.jwebunit.junit.WebTestCase; diff --git a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ParameterUtils.java b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ParameterUtils.java index f5eb8ee83b..f7c935f2ec 100644 --- a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ParameterUtils.java +++ b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/ParameterUtils.java @@ -1,3 +1,21 @@ +/* + * 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 it.org.apache.struts2.rest.example; public class ParameterUtils { diff --git a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/PostOrderTest.java b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/PostOrderTest.java index 30df79c853..80f48aef2e 100644 --- a/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/PostOrderTest.java +++ b/apps/rest-showcase/src/test/java/it/org/apache/struts2/rest/example/PostOrderTest.java @@ -1,3 +1,21 @@ +/* + * 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 it.org.apache.struts2.rest.example; import net.sourceforge.jwebunit.junit.WebTestCase; diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/AbstractCRUDAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/AbstractCRUDAction.java index 42e51a5c8e..4c79c7ea94 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/AbstractCRUDAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/AbstractCRUDAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/EmployeeAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/EmployeeAction.java index 21159705f8..af2281f17e 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/EmployeeAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/EmployeeAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/ExampleAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/ExampleAction.java index 82d8d3231d..35c0715631 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/ExampleAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/ExampleAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java index cc370c8a6c..fed9cd6447 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/JSPEvalAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/SkillAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/SkillAction.java index ebc1b0b486..1c96d20dca 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/action/SkillAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/action/SkillAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain1.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain1.java index 2edf548297..e196e2226f 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain1.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain1.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain2.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain2.java index 53baf90f52..b973a2b78c 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain2.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain2.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain3.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain3.java index 43cf103a23..e22712f8e9 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain3.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/actionchaining/ActionChain3.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/constraints/FieldMatch.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/constraints/FieldMatch.java index f478344ab2..03d20b359c 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/constraints/FieldMatch.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/constraints/FieldMatch.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/constant/ValidatorConstants.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/constant/ValidatorConstants.java index e8c5225e3f..c01a513e12 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/constant/ValidatorConstants.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/constant/ValidatorConstants.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java index be7a0c9e9c..12629c9011 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationManager.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationManager.java index 973c32a8a2..3f2a561312 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationManager.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/BeanValidationManager.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/DefaultBeanValidationManager.java b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/DefaultBeanValidationManager.java index 9bae97a56e..a3b56defdd 100644 --- a/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/DefaultBeanValidationManager.java +++ b/plugins/bean-validation/src/main/java/org/apache/struts/beanvalidation/validation/interceptor/DefaultBeanValidationManager.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java index 2d04ba28b1..944083c60d 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/BeanValidationInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/VoidResult.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/VoidResult.java index 3a5e95586a..a5f5016022 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/VoidResult.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/VoidResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldAction.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldAction.java index 9d95be2b1a..e9af62d4ff 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldAction.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldActionDoExecute.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldActionDoExecute.java index 8bb510e516..cd96e18ac8 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldActionDoExecute.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldActionDoExecute.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts.beanvalidation.actions; import org.hibernate.validator.constraints.NotBlank; diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldMatchAction.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldMatchAction.java index a4d452082d..935ad5d178 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldMatchAction.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/FieldMatchAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java index 2de4764a6b..d39e04847b 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java index 9eba4bffe0..a2796a3429 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/actions/ModelDrivenActionInterface.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts.beanvalidation.actions; import org.apache.struts2.interceptor.validation.SkipValidation; diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Address.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Address.java index a94f2e31e3..284f4bcebf 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Address.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Address.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Person.java b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Person.java index 5e7a88e9eb..7cc650d3b7 100644 --- a/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Person.java +++ b/plugins/bean-validation/src/test/java/org/apache/struts/beanvalidation/models/Person.java @@ -1,14 +1,4 @@ -package org.apache.struts.beanvalidation.models; - -import org.hibernate.validator.constraints.Email; - -import javax.validation.Valid; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; - /* - * $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 @@ -26,6 +16,13 @@ * specific language governing permissions and limitations * under the License. */ +package org.apache.struts.beanvalidation.models; + +import org.hibernate.validator.constraints.Email; + +import javax.validation.Valid; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; public class Person { diff --git a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java index e14103b050..72272cb45f 100644 --- a/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java +++ b/plugins/cdi/src/main/java/org/apache/struts2/cdi/CdiObjectFactory.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.cdi; import com.opensymphony.xwork2.ObjectFactory; diff --git a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java index f35ac55637..7bee7629a4 100644 --- a/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java +++ b/plugins/cdi/src/test/java/org/apache/struts2/cdi/CdiObjectFactoryTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.cdi; import org.jboss.weld.environment.se.StartMain; diff --git a/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooConsumer.java b/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooConsumer.java index 9f133f740f..53a8038d79 100644 --- a/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooConsumer.java +++ b/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooConsumer.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.cdi; import javax.inject.Inject; diff --git a/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooService.java b/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooService.java index afc6bf07ca..ea0599636d 100644 --- a/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooService.java +++ b/plugins/cdi/src/test/java/org/apache/struts2/cdi/FooService.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.cdi; /** diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ActionNamesAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ActionNamesAction.java index 8a34bced13..8ba236f05a 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ActionNamesAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ActionNamesAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.ActionSupport; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ConfigurationHelper.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ConfigurationHelper.java index 536435f84a..296ae9a9aa 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ConfigurationHelper.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ConfigurationHelper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.config.Configuration; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ListValidatorsAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ListValidatorsAction.java index 3fbc1c2dcd..9eade6bb63 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ListValidatorsAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ListValidatorsAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java index 8ad85c9b6a..c1eec8a09b 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.ActionProxyFactory; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConfigAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConfigAction.java index 9fd0cb1fa1..5538cf3a8f 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConfigAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConfigAction.java @@ -1,7 +1,4 @@ /* - * $Id: ShowConfigAction.java 1536698 2013-10-29 13:00:58Z lukaszlenart $ - * $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 @@ -19,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.ObjectFactory; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConstantsAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConstantsAction.java index 3b056452d4..abd6711cd5 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConstantsAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowConstantsAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.inject.Container; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowJarsAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowJarsAction.java index 9f1aa5a981..81135062dd 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowJarsAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowJarsAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.util.ClassLoaderUtil; diff --git a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowValidatorAction.java b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowValidatorAction.java index 90ea243c6e..c740e1473f 100644 --- a/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowValidatorAction.java +++ b/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowValidatorAction.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.config_browser; import com.opensymphony.xwork2.inject.Inject; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java index 333b293aea..9e95dae5dc 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/AbstractActionNameBuilder.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.convention; import com.opensymphony.xwork2.inject.Inject; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Action.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Action.java index a72fae6986..1a11af245c 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Action.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Action.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Actions.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Actions.java index 56fb0535dd..8cc50461df 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Actions.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Actions.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/AllowedMethods.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/AllowedMethods.java index a21ae924c8..05203b5670 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/AllowedMethods.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/AllowedMethods.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.annotation; import com.opensymphony.xwork2.config.entities.ActionConfig; diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/DefaultInterceptorRef.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/DefaultInterceptorRef.java index 01762d53b9..4a4288ddfd 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/DefaultInterceptorRef.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/DefaultInterceptorRef.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMapping.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMapping.java index 587dc1f6c0..1d834516ef 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMapping.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMapping.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMappings.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMappings.java index a517b92761..e347c816c4 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMappings.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ExceptionMappings.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRef.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRef.java index d427dfc898..adf3460da3 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRef.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRef.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRefs.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRefs.java index c878760ead..934e6dae85 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRefs.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/InterceptorRefs.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespace.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespace.java index 9e60df5b49..45e071987a 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespace.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespace.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespaces.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespaces.java index e043c030bf..e7de40b984 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespaces.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Namespaces.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ParentPackage.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ParentPackage.java index 2e0b1f9dec..6a48591773 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ParentPackage.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ParentPackage.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java index f90e7b50c1..84a91034dd 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Result.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ResultPath.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ResultPath.java index 4e06e7c380..5b66b9313c 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ResultPath.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/ResultPath.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Results.java b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Results.java index 156ef9af50..0ad8dd0936 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Results.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/annotation/Results.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/ConventionUnknownHandlerTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/ConventionUnknownHandlerTest.java index 1522d0d7af..36ed5c2b27 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/ConventionUnknownHandlerTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/ConventionUnknownHandlerTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/DefaultResultMapBuilderTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/DefaultResultMapBuilderTest.java index 8a4325b905..5f5f609a5c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/DefaultResultMapBuilderTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/DefaultResultMapBuilderTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java index 1bdc5a3e9f..6c97dec38d 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/PackageBasedActionConfigBuilderTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/ReflectionToolsTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/ReflectionToolsTest.java index 9b85e7a0d1..ef4143f3cf 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/ReflectionToolsTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/ReflectionToolsTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/SEOActionNameBuilderTest.java b/plugins/convention/src/test/java/org/apache/struts2/convention/SEOActionNameBuilderTest.java index 984420a5a3..af6961c484 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/SEOActionNameBuilderTest.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/SEOActionNameBuilderTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/TestInterceptor.java b/plugins/convention/src/test/java/org/apache/struts2/convention/TestInterceptor.java index 92b9fe7246..14a01f880c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/TestInterceptor.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/TestInterceptor.java @@ -1,21 +1,39 @@ +/* + * 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 org.apache.struts2.convention; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; public class TestInterceptor extends AbstractInterceptor { - private String string1; - - @Override - public String intercept(ActionInvocation invocation) throws Exception { - return null; - } + private String string1; - public String getString1() { - return string1; - } + @Override + public String intercept(ActionInvocation invocation) throws Exception { + return null; + } - public void setString1(String string1) { - this.string1 = string1; - } + public String getString1() { + return string1; + } + + public void setString1(String string1) { + this.string1 = string1; + } } diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/DefaultResultPathAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/DefaultResultPathAction.java index 636953e43e..9d00012a32 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/DefaultResultPathAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/DefaultResultPathAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/NoAnnotationAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/NoAnnotationAction.java index 224987e039..d307f79d85 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/NoAnnotationAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/NoAnnotationAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java index 3e7e517c50..105832760f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/Skip.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNameAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNameAction.java index 5071586def..bc6a2d5ebf 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNameAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNameAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNamesAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNamesAction.java index bded4e0372..eb0e2f366d 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNamesAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ActionNamesAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationAction.java index 4023ff4894..5b8918148e 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationDefaultMethodAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationDefaultMethodAction.java index fb4af6cc10..ac33fe1a4c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationDefaultMethodAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationDefaultMethodAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsAction.java index 0384284b77..8e5f25ac48 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsDefaultMethodAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsDefaultMethodAction.java index d1dc8d51a8..9f22270dab 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsDefaultMethodAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassLevelAnnotationsDefaultMethodAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassNameAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassNameAction.java index ccd7255ce8..1d51fbbcc2 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassNameAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/ClassNameAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/SingleActionNameAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/SingleActionNameAction.java index 699bad1a22..354d653bfd 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/SingleActionNameAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/SingleActionNameAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestAction.java index cfd90e40bd..ba28a5d22e 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestBase.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestBase.java index 3b7d83ce64..21520312e1 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestBase.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestBase.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestExtends.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestExtends.java index 074d60d5c7..15d28b12ab 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestExtends.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/action/TestExtends.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/ClassLevelAllowedMethodsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/ClassLevelAllowedMethodsAction.java index 24ea48950a..c0345ab0bf 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/ClassLevelAllowedMethodsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/ClassLevelAllowedMethodsAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.actions.allowedmethods; import org.apache.struts2.convention.annotation.AllowedMethods; diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/PackageLevelAllowedMethodsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/PackageLevelAllowedMethodsAction.java index eab0895071..24a5586c02 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/PackageLevelAllowedMethodsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/PackageLevelAllowedMethodsAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.actions.allowedmethods; public class PackageLevelAllowedMethodsAction { diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/package-info.java index 745a1a6f68..2725668594 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/sub/PackageLevelAllowedMethodsChildAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/sub/PackageLevelAllowedMethodsChildAction.java index 4a6223d0d5..0c0445d5ea 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/sub/PackageLevelAllowedMethodsChildAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/allowedmethods/sub/PackageLevelAllowedMethodsChildAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.actions.allowedmethods.sub; import org.apache.struts2.convention.actions.allowedmethods.PackageLevelAllowedMethodsAction; diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/chain/ChainedAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/chain/ChainedAction.java index f481c40d7e..d7e94951f9 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/chain/ChainedAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/chain/ChainedAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java index 703ba9898c..37d88ce52e 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/SingleActionNameAction2.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/package-info.java index fc05e762a8..8d9751df79 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/defaultinterceptor/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsActionLevelAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsActionLevelAction.java index 4e7fc49c5c..174a646fec 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsActionLevelAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsActionLevelAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsMethodLevelAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsMethodLevelAction.java index 925cf8f1e5..99eff480ed 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsMethodLevelAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exception/ExceptionsMethodLevelAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exclude/ExcludeAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exclude/ExcludeAction.java index f4d1607ac3..555fa66e9b 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exclude/ExcludeAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/exclude/ExcludeAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java index 124306a91c..37fa8f9fb8 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/Index.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java index e4388bd106..33235c48b0 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/idx/idx2/Index.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor2Action.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor2Action.java index 80705942ab..2df939e63f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor2Action.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor2Action.java @@ -1,6 +1,4 @@ /* - * $Id: ActionLevelResultAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor3Action.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor3Action.java index 37f429ca90..be398551d8 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor3Action.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptor3Action.java @@ -1,6 +1,4 @@ /* - * $Id: ActionLevelResultAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptorAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptorAction.java index 474fc62c48..54c7046671 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptorAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/ActionLevelInterceptorAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionLevelResultAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/InterceptorsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/InterceptorsAction.java index 40150e6d48..591fa17767 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/InterceptorsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/interceptor/InterceptorsAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionLevelResultAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ActionLevelNamespaceAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ActionLevelNamespaceAction.java index 908c8cec55..43ea514821 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ActionLevelNamespaceAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ActionLevelNamespaceAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ClassLevelNamespaceAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ClassLevelNamespaceAction.java index e73e4078cb..825b135b01 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ClassLevelNamespaceAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/ClassLevelNamespaceAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/PackageLevelNamespaceAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/PackageLevelNamespaceAction.java index 88447a39a1..f5167f0e3c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/PackageLevelNamespaceAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/PackageLevelNamespaceAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/package-info.java index e90de8e059..b37715d555 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace2/DefaultNamespaceAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace2/DefaultNamespaceAction.java index 153246362f..35ebb0fa04 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace2/DefaultNamespaceAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace2/DefaultNamespaceAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace3/ActionLevelNamespacesAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace3/ActionLevelNamespacesAction.java index 1d1d0b9569..2da1df4a6b 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace3/ActionLevelNamespacesAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace3/ActionLevelNamespacesAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/ActionAndPackageLevelNamespacesAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/ActionAndPackageLevelNamespacesAction.java index 61ac8d76c4..05e8444ecc 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/ActionAndPackageLevelNamespacesAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/ActionAndPackageLevelNamespacesAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/package-info.java index 07407a7f0f..4b0fc82da2 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/namespace4/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/params/ActionParamsMethodLevelAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/params/ActionParamsMethodLevelAction.java index 3ee2dbecbe..c949ee418f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/params/ActionParamsMethodLevelAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/params/ActionParamsMethodLevelAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/ClassLevelParentPackageAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/ClassLevelParentPackageAction.java index bcabeb9422..54fa332d0f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/ClassLevelParentPackageAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/ClassLevelParentPackageAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/PackageLevelParentPackageAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/PackageLevelParentPackageAction.java index ebe3f1706a..5643ed2d7c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/PackageLevelParentPackageAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/PackageLevelParentPackageAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/package-info.java index 434b24d289..611a04dc68 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/ClassLevelParentPackageChildAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/ClassLevelParentPackageChildAction.java index 0aca0cc48b..a909dcc977 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/ClassLevelParentPackageChildAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/ClassLevelParentPackageChildAction.java @@ -1,6 +1,4 @@ /* - * $Id: ClassLevelParentPackageAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/PackageLevelParentPackageChildAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/PackageLevelParentPackageChildAction.java index fd9d2f7ef5..3a7c7e7179 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/PackageLevelParentPackageChildAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/parentpackage/sub/PackageLevelParentPackageChildAction.java @@ -1,6 +1,4 @@ /* - * $Id: ClassLevelParentPackageAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultAction.java index bf188cf9af..86a706e19c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsAction.java index 27d1a5ad31..5de3cc766d 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsNamesAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsNamesAction.java index 2ae4bb6297..2136f8d0a1 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsNamesAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ActionLevelResultsNamesAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultAction.java index 91fe4debc4..4d631700e3 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultsAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultsAction.java index 8e28f04e42..cf4ca1bfd9 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultsAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/ClassLevelResultsAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultAction.java index 6f31d5917a..ea7b33c2fa 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.actions.result; import org.apache.struts2.convention.annotation.ParentPackage; diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultOverrideAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultOverrideAction.java index 3a58035f72..8825e1a9a9 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultOverrideAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/GlobalResultOverrideAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.convention.actions.result; import org.apache.struts2.convention.annotation.ParentPackage; diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultExtends.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultExtends.java index ed5eb2b32d..12dee04c60 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultExtends.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultExtends.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultTestBase.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultTestBase.java index e57e8c393f..9bfb8f6526 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultTestBase.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultTestBase.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsExtends.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsExtends.java index fc3441c49d..c06027e1f6 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsExtends.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsExtends.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsTestBase.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsTestBase.java index 0ffa34597e..f36fad9697 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsTestBase.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/InheritedResultsTestBase.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultExtends.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultExtends.java index d0ed594d4d..746e4c92eb 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultExtends.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultExtends.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultTestBase.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultTestBase.java index 7b256f8d46..084e5e5d5f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultTestBase.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideInheritedResultTestBase.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideResultAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideResultAction.java index 497dbf9eda..044647f52f 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideResultAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/result/OverrideResultAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/ClassLevelResultPathAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/ClassLevelResultPathAction.java index 67d4d16ea7..e75448dbc5 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/ClassLevelResultPathAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/ClassLevelResultPathAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/PackageLevelResultPathAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/PackageLevelResultPathAction.java index 473eeac8ef..1058f12442 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/PackageLevelResultPathAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/PackageLevelResultPathAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/package-info.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/package-info.java index b4af5a0a23..54bfbffa9b 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/package-info.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/resultpath/package-info.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java index 987be9358c..28a262f8cf 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/skip/Index.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/transactions/TransNameAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/transactions/TransNameAction.java index d7ffc7b5a5..eaf38cd00c 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/actions/transactions/TransNameAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/actions/transactions/TransNameAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNameAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/convention/src/test/java/org/apache/struts2/convention/dontfind/DontFindMeAction.java b/plugins/convention/src/test/java/org/apache/struts2/convention/dontfind/DontFindMeAction.java index 11baeaba2d..45b932cddb 100644 --- a/plugins/convention/src/test/java/org/apache/struts2/convention/dontfind/DontFindMeAction.java +++ b/plugins/convention/src/test/java/org/apache/struts2/convention/dontfind/DontFindMeAction.java @@ -1,6 +1,4 @@ /* - * $Id: ActionNamesAction.java 655902 2008-05-13 15:15:12Z bpontarelli $ - * * 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 diff --git a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java index 4c279102be..04c371afb1 100644 --- a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java +++ b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.validators; import java.util.HashMap; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/EmbeddedJSPResult.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/EmbeddedJSPResult.java index 7be09103f0..a3afce46bf 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/EmbeddedJSPResult.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/EmbeddedJSPResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPLoader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPLoader.java index 280ae91873..e1c048cc9a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPLoader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPLoader.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPRuntime.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPRuntime.java index 1aa719ac8c..ab91528462 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPRuntime.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPRuntime.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPServletConfig.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPServletConfig.java index 69057df7f8..35abe2b1ad 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPServletConfig.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/JSPServletConfig.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/ServletCache.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/ServletCache.java index 6854804272..15f59fb617 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/ServletCache.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/ServletCache.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java index a6cc61b979..740749420f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryJavaFileObject.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryJavaFileObject.java index 6a93d3dac5..b9923c8fbe 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryJavaFileObject.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryJavaFileObject.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ExpressionFactoryImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ExpressionFactoryImpl.java index 707582a48f..efb9155e1f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ExpressionFactoryImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ExpressionFactoryImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el; import javax.el.ELContext; @@ -26,7 +27,6 @@ import org.apache.struts2.el.lang.ExpressionBuilder; import org.apache.struts2.el.util.MessageFactory; - /** * @see javax.el.ExpressionFactory * diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionImpl.java index 60f631493b..ec2617149b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el; import java.io.Externalizable; @@ -39,7 +40,6 @@ import org.apache.struts2.el.parser.Node; import org.apache.struts2.el.util.ReflectionUtil; - /** * An Expression that refers to a method on an object. * diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionLiteral.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionLiteral.java index 7d5f194bfa..83f24d68c4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionLiteral.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/MethodExpressionLiteral.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el; import java.io.Externalizable; @@ -30,7 +31,6 @@ import org.apache.struts2.el.lang.ELSupport; import org.apache.struts2.el.util.ReflectionUtil; - public class MethodExpressionLiteral extends MethodExpression implements Externalizable { private Class expectedType; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionImpl.java index 7dc16de280..ba7e007ef5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el; import java.io.Externalizable; @@ -40,7 +41,6 @@ import org.apache.struts2.el.parser.Node; import org.apache.struts2.el.util.ReflectionUtil; - /** * An Expression that can get or set a value. * diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionLiteral.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionLiteral.java index 0c9f70c9fc..5994a24942 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionLiteral.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/ValueExpressionLiteral.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el; import java.io.Externalizable; @@ -31,7 +32,6 @@ import org.apache.struts2.el.util.MessageFactory; import org.apache.struts2.el.util.ReflectionUtil; - public final class ValueExpressionLiteral extends ValueExpression implements Externalizable { diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELArithmetic.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELArithmetic.java index eb177c44e7..35d89f4b28 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELArithmetic.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELArithmetic.java @@ -1,20 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.el.lang; import java.math.BigDecimal; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELSupport.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELSupport.java index 7ed5e71940..95a69f8fa4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELSupport.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ELSupport.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import java.beans.PropertyEditor; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/EvaluationContext.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/EvaluationContext.java index 0b1c6acbb7..978724c406 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/EvaluationContext.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/EvaluationContext.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import java.util.Locale; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ExpressionBuilder.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ExpressionBuilder.java index a60b89df62..ccc2f82b46 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ExpressionBuilder.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/ExpressionBuilder.java @@ -1,20 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.el.lang; import java.io.StringReader; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperFactory.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperFactory.java index 74f7c94db7..54aac4eef9 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperFactory.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperFactory.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import java.lang.reflect.Method; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperImpl.java index 7bebefb8e9..0b7b7f37d8 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/FunctionMapperImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import java.io.Externalizable; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperFactory.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperFactory.java index 80b5479ec4..41d4035ef4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperFactory.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperFactory.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import javax.el.ValueExpression; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperImpl.java index 935c6cd14c..a0012f9e3b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/lang/VariableMapperImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.lang; import java.io.Externalizable; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ArithmeticNode.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ArithmeticNode.java index 1dd5fcaf26..f5f75ddd67 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ArithmeticNode.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ArithmeticNode.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstAnd.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstAnd.java index bb3319562a..6f79ad3864 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstAnd.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstAnd.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstAnd.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstBracketSuffix.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstBracketSuffix.java index 405f4c4402..0bf328d49a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstBracketSuffix.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstBracketSuffix.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstBracketSuffix.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstChoice.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstChoice.java index a804fbad7e..89845e24e6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstChoice.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstChoice.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstChoice.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstCompositeExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstCompositeExpression.java index 41f9bfeb69..05f8fe1642 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstCompositeExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstCompositeExpression.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstCompositeExpression.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDeferredExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDeferredExpression.java index 30ef84dd7a..1ea15bb4d4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDeferredExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDeferredExpression.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstDeferredExpression.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDiv.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDiv.java index 5f60a10a7e..1d32597062 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDiv.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDiv.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstDiv.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDotSuffix.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDotSuffix.java index fa8126cb41..01e02d7ccb 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDotSuffix.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDotSuffix.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstDotSuffix.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDynamicExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDynamicExpression.java index d2e446907b..be33015b84 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDynamicExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstDynamicExpression.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstDynamicExpression.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEmpty.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEmpty.java index 8d077e8a34..c53c2a5212 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEmpty.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEmpty.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstEmpty.java */ - package org.apache.struts2.el.parser; import java.util.Collection; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEqual.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEqual.java index 3befad10a7..b7aceb7ca3 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEqual.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstEqual.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstEqual.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFalse.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFalse.java index be97d20b0e..9042e52836 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFalse.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFalse.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstFalse.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFloatingPoint.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFloatingPoint.java index 33935610ed..6cb0ce7ac6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFloatingPoint.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFloatingPoint.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstFloatingPoint.java */ - package org.apache.struts2.el.parser; import java.math.BigDecimal; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFunction.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFunction.java index adb9d14aba..acecf8cc67 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFunction.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstFunction.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstFunction.java */ - package org.apache.struts2.el.parser; import java.lang.reflect.InvocationTargetException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThan.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThan.java index 6c3577e43a..dad15a6bc5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThan.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThan.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstGreaterThan.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThanEqual.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThanEqual.java index 6443516c52..a9cbc8b91f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThanEqual.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstGreaterThanEqual.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstGreaterThanEqual.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstIdentifier.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstIdentifier.java index 46127cb5b9..cba4f2e242 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstIdentifier.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstIdentifier.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstIdentifier.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstInteger.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstInteger.java index f5fb4ed0ad..628c2dc409 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstInteger.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstInteger.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstInteger.java */ - package org.apache.struts2.el.parser; import java.math.BigInteger; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThan.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThan.java index b1458b4874..54b61e8548 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThan.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThan.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstLessThan.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThanEqual.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThanEqual.java index 5e357d1208..271b3f9d8d 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThanEqual.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLessThanEqual.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstLessThanEqual.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLiteralExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLiteralExpression.java index 390cd6c8ac..a5727f61d9 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLiteralExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstLiteralExpression.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstLiteralExpression.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMinus.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMinus.java index b409dc6938..0573515f82 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMinus.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMinus.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstMinus.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; @@ -23,7 +23,6 @@ import org.apache.struts2.el.lang.ELArithmetic; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMod.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMod.java index 3f5c731685..f322c3a1a3 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMod.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMod.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstMod.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; @@ -23,7 +23,6 @@ import org.apache.struts2.el.lang.ELArithmetic; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMult.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMult.java index 165d17e126..389b034736 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMult.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstMult.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstMult.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; @@ -23,7 +23,6 @@ import org.apache.struts2.el.lang.ELArithmetic; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNegative.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNegative.java index 84f30387aa..f93b82391f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNegative.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNegative.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstNegative.java */ - package org.apache.struts2.el.parser; import java.math.BigDecimal; @@ -25,7 +25,6 @@ import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNot.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNot.java index df48527374..3bda765ffa 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNot.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNot.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstNot.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNotEqual.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNotEqual.java index fbf4398b98..8f1a2cdda3 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNotEqual.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNotEqual.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstNotEqual.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNull.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNull.java index 86358d9512..a06bb62282 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNull.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstNull.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstNull.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstOr.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstOr.java index 9d556f116d..6b62f29e72 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstOr.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstOr.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstOr.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstPlus.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstPlus.java index b197d381d8..ed783c3c11 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstPlus.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstPlus.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstPlus.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; @@ -23,7 +23,6 @@ import org.apache.struts2.el.lang.ELArithmetic; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstString.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstString.java index 0840f91d80..d40c32215b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstString.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstString.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstString.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstTrue.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstTrue.java index 7ac584eda8..3ecce9fa9e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstTrue.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstTrue.java @@ -1,28 +1,27 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstTrue.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstValue.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstValue.java index 6d13d4f214..572ced6787 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstValue.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/AstValue.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. AstValue.java */ - package org.apache.struts2.el.parser; import java.lang.reflect.InvocationTargetException; @@ -31,7 +31,6 @@ import org.apache.struts2.el.util.MessageFactory; import org.apache.struts2.el.util.ReflectionUtil; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/BooleanNode.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/BooleanNode.java index e82a74185d..5868984957 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/BooleanNode.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/BooleanNode.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.el.parser; @@ -20,7 +22,6 @@ import org.apache.struts2.el.lang.EvaluationContext; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Node.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Node.java index 24b17114c6..d433964f9a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Node.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Node.java @@ -1,22 +1,21 @@ -/* Generated By:JJTree: Do not edit this line. Node.java */ - /* - * 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. + * 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 org.apache.struts2.el.parser; import org.apache.struts2.el.lang.EvaluationContext; @@ -24,7 +23,6 @@ import javax.el.ELException; import javax.el.MethodInfo; - /* All AST nodes must implement this interface. It provides basic machinery for constructing the parent and child relationships between nodes. */ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/NodeVisitor.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/NodeVisitor.java index dd5fcdffa0..699c587180 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/NodeVisitor.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/NodeVisitor.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ParseException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ParseException.java index a57e7da9c2..5c05b5bc38 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ParseException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ParseException.java @@ -1,5 +1,21 @@ -/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 4.1 */ -/* JavaCCOptions:KEEP_LINE_COL=null */ +/* + * 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 org.apache.struts2.el.parser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleCharStream.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleCharStream.java index bb7f01e324..e8bcae6458 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleCharStream.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleCharStream.java @@ -1,5 +1,21 @@ -/* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 4.1 */ -/* JavaCCOptions:STATIC=false */ +/* + * 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 org.apache.struts2.el.parser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleNode.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleNode.java index 22c5a5e962..934b9ee48e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleNode.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/SimpleNode.java @@ -1,21 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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. */ -/* Generated By:JJTree: Do not edit this line. SimpleNode.java */ - package org.apache.struts2.el.parser; import javax.el.ELException; @@ -26,7 +26,6 @@ import org.apache.struts2.el.lang.EvaluationContext; import org.apache.struts2.el.util.MessageFactory; - /** * @author Jacob Hookom [jacob@hookom.net] * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: markt $ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Token.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Token.java index 9fcd6c3220..7388288df2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Token.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/Token.java @@ -1,5 +1,21 @@ -/* Generated By:JavaCC: Do not edit this line. Token.java Version 4.1 */ -/* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null */ +/* + * 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 org.apache.struts2.el.parser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/TokenMgrError.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/TokenMgrError.java index f57edd6db0..e6b640549d 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/TokenMgrError.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/TokenMgrError.java @@ -1,5 +1,21 @@ -/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 4.1 */ -/* JavaCCOptions: */ +/* + * 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 org.apache.struts2.el.parser; /** Token Manager Error. */ diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ConcurrentCache.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ConcurrentCache.java index 1554d49560..ec3722bdb7 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ConcurrentCache.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ConcurrentCache.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.el.util; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/MessageFactory.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/MessageFactory.java index 91324edeb6..998abc893e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/MessageFactory.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/MessageFactory.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.el.util; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ReflectionUtil.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ReflectionUtil.java index f819c61bfc..da58f719d2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ReflectionUtil.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/util/ReflectionUtil.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.el.util; @@ -29,7 +31,6 @@ import org.apache.struts2.el.lang.ELSupport; - /** * Utilities for Managing Serialization and Reflection * diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Constants.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Constants.java index ed58765762..80db8231d2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Constants.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Constants.java @@ -1,23 +1,23 @@ /* - * 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. + * 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 org.apache.struts2.jasper; - /** * Some constants and other global data that are used by the compiler and the runtime. * diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/CustomCompiler.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/CustomCompiler.java index 8414953940..ca106a5ede 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/CustomCompiler.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/CustomCompiler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/EmbeddedServletOptions.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/EmbeddedServletOptions.java index f8c2a5f43e..7ac4f247cd 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/EmbeddedServletOptions.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/EmbeddedServletOptions.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper; import java.io.File; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JasperException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JasperException.java index 691b6fd42d..a3d922069b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JasperException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JasperException.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspC.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspC.java index d9716b1607..25cce87b51 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspC.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspC.java @@ -1,20 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.jasper; import java.io.BufferedReader; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspCompilationContext.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspCompilationContext.java index 976d3e307b..a8fbb602dc 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspCompilationContext.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/JspCompilationContext.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper; import com.opensymphony.xwork2.util.finder.ClassLoaderInterface; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Options.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Options.java index 68d5d4f14f..892e29f022 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Options.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/Options.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper; import java.io.File; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/BeanRepository.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/BeanRepository.java index 6179e9b49e..85cf07bb0b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/BeanRepository.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/BeanRepository.java @@ -1,22 +1,23 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; - import java.util.HashMap; import org.apache.struts2.jasper.JasperException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Collector.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Collector.java index 62d1e48ff2..a038f0f154 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Collector.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Collector.java @@ -1,20 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.struts2.jasper.JasperException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Compiler.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Compiler.java index 6e91dc25c0..e5aac3e52d 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Compiler.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Compiler.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/DefaultErrorHandler.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/DefaultErrorHandler.java index c0b432d882..6807334f02 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/DefaultErrorHandler.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/DefaultErrorHandler.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.struts2.jasper.JasperException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Dumper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Dumper.java index 673634ef17..1209eff7c5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Dumper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Dumper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.xml.sax.Attributes; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELFunctionMapper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELFunctionMapper.java index f3fac0271a..a22462471e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELFunctionMapper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELFunctionMapper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELNode.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELNode.java index 694f411393..9d9e6d31e7 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELNode.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELNode.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELParser.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELParser.java index ff9e10e22e..55ca75135f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELParser.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ELParser.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorDispatcher.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorDispatcher.java index 645790470b..85c821af0a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorDispatcher.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorDispatcher.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorHandler.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorHandler.java index a7a73f00fc..846d152c57 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorHandler.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ErrorHandler.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.struts2.jasper.JasperException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Generator.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Generator.java index a4f2c6776f..075f4de174 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Generator.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Generator.java @@ -1,20 +1,21 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.jasper.compiler; import java.beans.BeanInfo; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ImplicitTagLibraryInfo.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ImplicitTagLibraryInfo.java index d198b6e1b6..21385ee652 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ImplicitTagLibraryInfo.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ImplicitTagLibraryInfo.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JasperTagInfo.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JasperTagInfo.java index c0b9b291ba..17c1bd8b21 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JasperTagInfo.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JasperTagInfo.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import javax.servlet.jsp.tagext.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JavacErrorDetail.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JavacErrorDetail.java index 69fb8318a5..93f8cee28b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JavacErrorDetail.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JavacErrorDetail.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.BufferedReader; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspConfig.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspConfig.java index 5ec0118d94..c826773926 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspConfig.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspConfig.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspDocumentParser.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspDocumentParser.java index c3c6e7daa9..76bc1e22ff 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspDocumentParser.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspDocumentParser.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspReader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspReader.java index e81092ba34..1abd9f9207 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspReader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspReader.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.CharArrayWriter; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspRuntimeContext.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspRuntimeContext.java index 851f9727cf..b2316b5890 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspRuntimeContext.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspRuntimeContext.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.juli.logging.Log; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspUtil.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspUtil.java index aa5b4c3a20..348b8c0f5a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspUtil.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/JspUtil.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.commons.lang3.BooleanUtils; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Localizer.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Localizer.java index f311d045dd..7e74bc1c74 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Localizer.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Localizer.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.text.MessageFormat; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Mark.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Mark.java index 01117791dd..f62290d1c5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Mark.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Mark.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Node.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Node.java index 8120130beb..895ecd688b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Node.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Node.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.Iterator; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageDataImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageDataImpl.java index cb533adb30..c9c3cf21ea 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageDataImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageDataImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageInfo.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageInfo.java index 349e230f26..2f2d59956a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageInfo.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/PageInfo.java @@ -1,18 +1,20 @@ /* - * 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 + * 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 + * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Parser.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Parser.java index d858cdb4ce..24a8c16155 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Parser.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Parser.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ParserController.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ParserController.java index 7a517cd0e8..f00f07e9dc 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ParserController.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ParserController.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.FileNotFoundException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ScriptingVariabler.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ScriptingVariabler.java index 2244b0cd93..a5a4fc4920 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ScriptingVariabler.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ScriptingVariabler.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ServletWriter.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ServletWriter.java index 7507018207..57a984104f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ServletWriter.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/ServletWriter.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapGenerator.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapGenerator.java index 4bbccf6eea..a0a5c80a0a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapGenerator.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapGenerator.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.List; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapStratum.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapStratum.java index a1982c6ca0..130f584938 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapStratum.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapStratum.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.List; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapUtil.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapUtil.java index f49139e3db..17c752454f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapUtil.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/SmapUtil.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.File; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagConstants.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagConstants.java index 83f4632875..ddba3a7f0c 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagConstants.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagConstants.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; public interface TagConstants { diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagFileProcessor.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagFileProcessor.java index b51e187694..5f3d13a07f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagFileProcessor.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagFileProcessor.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.FileNotFoundException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagLibraryInfoImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagLibraryInfoImpl.java index f8b1b6f6ab..341e91e961 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagLibraryInfoImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagLibraryInfoImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.FileInputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagPluginManager.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagPluginManager.java index de794e69e7..0b7c2debdf 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagPluginManager.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TagPluginManager.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.util.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TextOptimizer.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TextOptimizer.java index b4ffd3d369..8cde2de2e8 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TextOptimizer.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TextOptimizer.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TldLocationsCache.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TldLocationsCache.java index 239fcdf1f6..0bac6fa3c3 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TldLocationsCache.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/TldLocationsCache.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Validator.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Validator.java index 387ebfb06e..553011fde7 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Validator.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/Validator.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler; import org.apache.struts2.el.lang.ELSupport; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPlugin.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPlugin.java index 1c274cc8e6..71c1b259b9 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPlugin.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPlugin.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler.tagplugin; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPluginContext.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPluginContext.java index 8b0a122766..1e0815b05b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPluginContext.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/compiler/tagplugin/TagPluginContext.java @@ -1,23 +1,23 @@ /* - * 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. + * 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 org.apache.struts2.jasper.compiler.tagplugin; - /** * This interface allows the plugin author to make inqueries about the * properties of the current tag, and to use Jasper resources to generate diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextImpl.java index bff6f5d702..631a4149a8 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextWrapper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextWrapper.java index 36fcb5d1c3..e14bfc8620 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextWrapper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELContextWrapper.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELResolverImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELResolverImpl.java index 607ae481c6..7e5b3700ef 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELResolverImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ELResolverImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; import java.util.Iterator; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionEvaluatorImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionEvaluatorImpl.java index c2e47aa82a..d05155343e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionEvaluatorImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionEvaluatorImpl.java @@ -1,22 +1,23 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; -import javax.el.ELContext; import javax.el.ExpressionFactory; import javax.el.ValueExpression; import javax.servlet.jsp.el.ELException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionImpl.java index 3087f0bbb6..4a9825bb67 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/ExpressionImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/FunctionMapperImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/FunctionMapperImpl.java index f128eed846..b26c5ed589 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/FunctionMapperImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/FunctionMapperImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspELException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspELException.java index 7d9bb194f6..158b5f45fb 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspELException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspELException.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodExpression.java index 561e69bc2b..1a911366e0 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodExpression.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodNotFoundException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodNotFoundException.java index c0f4f9b717..0232972ee7 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodNotFoundException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspMethodNotFoundException.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotFoundException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotFoundException.java index 8864a57b7a..278f42cec3 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotFoundException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotFoundException.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotWritableException.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotWritableException.java index 7bbf958bc0..698fe9d802 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotWritableException.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspPropertyNotWritableException.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspValueExpression.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspValueExpression.java index 0dd4a1f1c3..acd17d8019 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspValueExpression.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/JspValueExpression.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/VariableResolverImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/VariableResolverImpl.java index 61c40bdef6..5ae257e59c 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/VariableResolverImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/el/VariableResolverImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.el; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/AnnotationHelper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/AnnotationHelper.java index 339d44338f..709d3c4000 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/AnnotationHelper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/AnnotationHelper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.lang.reflect.InvocationTargetException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/BodyContentImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/BodyContentImpl.java index 6561d97088..1f06f8c7f5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/BodyContentImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/BodyContentImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.CharArrayReader; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/HttpJspBase.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/HttpJspBase.java index 36d048c286..d0d6e37ef5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/HttpJspBase.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/HttpJspBase.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspApplicationContextImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspApplicationContextImpl.java index 14c0e4b6a7..b18983a1a4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspApplicationContextImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspApplicationContextImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspContextWrapper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspContextWrapper.java index 4d87494496..3048fa4477 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspContextWrapper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspContextWrapper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFactoryImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFactoryImpl.java index 08bff2d4f3..89c364ff70 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFactoryImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFactoryImpl.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFragmentHelper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFragmentHelper.java index 73e5d689b3..7559e9d6ff 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFragmentHelper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspFragmentHelper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import javax.servlet.jsp.JspContext; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspRuntimeLibrary.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspRuntimeLibrary.java index 5108a329ed..985d50b0d2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspRuntimeLibrary.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspRuntimeLibrary.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import org.apache.struts2.jasper.Constants; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspSourceDependent.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspSourceDependent.java index ed9abfc5c5..ec6272f5f0 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspSourceDependent.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspSourceDependent.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspWriterImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspWriterImpl.java index 143ed2f30a..5ad7cc5d0f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspWriterImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/JspWriterImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PageContextImpl.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PageContextImpl.java index 0d4d4f0928..c174889423 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PageContextImpl.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PageContextImpl.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PerThreadTagHandlerPool.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PerThreadTagHandlerPool.java index a89fce15ee..eee2bedeb7 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PerThreadTagHandlerPool.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/PerThreadTagHandlerPool.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.util.Enumeration; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ProtectedFunctionMapper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ProtectedFunctionMapper.java index 14539c1dc8..f8a1a675f2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ProtectedFunctionMapper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ProtectedFunctionMapper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.util.HashMap; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ServletResponseWrapperInclude.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ServletResponseWrapperInclude.java index f5d330791e..c2fb30fa5a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ServletResponseWrapperInclude.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/ServletResponseWrapperInclude.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/TagHandlerPool.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/TagHandlerPool.java index 87b81dca00..2cc506f5e6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/TagHandlerPool.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/runtime/TagHandlerPool.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.runtime; import javax.servlet.ServletConfig; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityClassLoad.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityClassLoad.java index a571d20740..4ff1cb04f2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityClassLoad.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityClassLoad.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.security; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityUtil.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityUtil.java index 25b06c4897..7ae5d9dec6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityUtil.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/security/SecurityUtil.java @@ -1,18 +1,20 @@ /* - * 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. + * 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 org.apache.struts2.jasper.security; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JasperLoader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JasperLoader.java index c23da8c82f..f21cf0a85c 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JasperLoader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JasperLoader.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.servlet; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspCServletContext.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspCServletContext.java index 219c759d1e..cfbcd81f96 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspCServletContext.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspCServletContext.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.servlet; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServlet.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServlet.java index e9cea764c9..40ebac90c0 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServlet.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServlet.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.servlet; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServletWrapper.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServletWrapper.java index 1e70d5f05f..9e118cbc7a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServletWrapper.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/JspServletWrapper.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.servlet; import java.io.FileNotFoundException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/Util.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/Util.java index ec4503f4cd..8ba6b66e9e 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/Util.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/Util.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl; import org.apache.struts2.jasper.Constants; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Catch.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Catch.java index f8508d4649..95859935a0 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Catch.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Catch.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Choose.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Choose.java index e7d573ebee..9fe873acfb 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Choose.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Choose.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForEach.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForEach.java index 647949696b..cdb1ee2e70 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForEach.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForEach.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForTokens.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForTokens.java index db182c7ce2..b5314869a8 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForTokens.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/ForTokens.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/If.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/If.java index 3d0edefb91..ccbf6a1d93 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/If.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/If.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Import.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Import.java index f094dfbc62..f8298c2297 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Import.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Import.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Otherwise.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Otherwise.java index e5d1a3ae0c..34716ea3d6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Otherwise.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Otherwise.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Out.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Out.java index cc39a2e19c..729229c646 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Out.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Out.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Param.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Param.java index bfd2f67b55..2f885caf4b 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Param.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Param.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Redirect.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Redirect.java index d198348d46..26f569cd6a 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Redirect.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Redirect.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Remove.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Remove.java index 3107ac6eca..eb29b08af6 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Remove.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Remove.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Set.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Set.java index 811a86cea6..73d845968f 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Set.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Set.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Url.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Url.java index 3eb2153854..2636953593 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Url.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/Url.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.TagPlugin; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/When.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/When.java index 9957fce9ea..b78c4140ed 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/When.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/core/When.java @@ -1,21 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.tagplugins.jstl.core; import org.apache.struts2.jasper.compiler.tagplugin.*; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/util/Enumerator.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/util/Enumerator.java index 25c9c43a0f..ff3611de06 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/util/Enumerator.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/util/Enumerator.java @@ -1,24 +1,23 @@ /* - * 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. + * 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 org.apache.struts2.jasper.util; - import java.util.Collection; import java.util.Enumeration; import java.util.Iterator; @@ -27,7 +26,6 @@ import java.util.Map; import java.util.NoSuchElementException; - /** * Adapter class that wraps an Enumeration around a Java2 * collection classes object Iterator so that existing APIs diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ASCIIReader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ASCIIReader.java index e50dd956db..3293d36876 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ASCIIReader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ASCIIReader.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.xmlparser; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/EncodingMap.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/EncodingMap.java index bcf5641477..b049b2b165 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/EncodingMap.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/EncodingMap.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; import java.util.Hashtable; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ParserUtils.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ParserUtils.java index 633c3345ad..2584008397 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ParserUtils.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/ParserUtils.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.xmlparser; import java.io.IOException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/SymbolTable.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/SymbolTable.java index baa6021c0a..90ba035ea2 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/SymbolTable.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/SymbolTable.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/TreeNode.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/TreeNode.java index 965a18e5ae..99b4c66224 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/TreeNode.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/TreeNode.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.xmlparser; import java.util.ArrayList; @@ -22,7 +23,6 @@ import java.util.HashMap; import java.util.Iterator; - /** *

* Simplified implementation of a Node from a Document Object Model (DOM) diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UCSReader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UCSReader.java index 8df90d079d..3e6a467ff5 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UCSReader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UCSReader.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.xmlparser; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UTF8Reader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UTF8Reader.java index 94c257085a..6b52563b30 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UTF8Reader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/UTF8Reader.java @@ -1,20 +1,21 @@ /* - * 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. + * 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 org.apache.struts2.jasper.xmlparser; import java.io.InputStream; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLChar.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLChar.java index 12464d5608..04ecea340d 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLChar.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLChar.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; import java.util.Arrays; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLEncodingDetector.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLEncodingDetector.java index 01ecba3b60..e4761cbe20 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLEncodingDetector.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLEncodingDetector.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; import org.apache.struts2.jasper.JasperException; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLString.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLString.java index 46195c953d..c3d3907223 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLString.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLString.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLStringBuffer.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLStringBuffer.java index 1103a97f2c..07eebb23e8 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLStringBuffer.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/xmlparser/XMLStringBuffer.java @@ -1,28 +1,21 @@ /* - * 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. - * ==================================================================== + * 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 * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.apache.org. For more - * information on the Apache Software Foundation, please see - * . + * 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 org.apache.struts2.jasper.xmlparser; /** diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/Messages.properties b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/el/Messages.properties similarity index 100% rename from plugins/embeddedjsp/src/main/java/org/apache/struts2/el/Messages.properties rename to plugins/embeddedjsp/src/main/resources/org/apache/struts2/el/Messages.properties diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/Messages_es.properties b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/el/Messages_es.properties similarity index 100% rename from plugins/embeddedjsp/src/main/java/org/apache/struts2/el/Messages_es.properties rename to plugins/embeddedjsp/src/main/resources/org/apache/struts2/el/Messages_es.properties diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml similarity index 100% rename from plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml rename to plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml similarity index 100% rename from plugins/embeddedjsp/src/main/java/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml rename to plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxp.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxp.java index a1a3cff22f..ef381f315e 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxp.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxp.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxpResult.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxpResult.java index 62ce72c602..fd0d3160d2 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxpResult.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/AbstractGxpResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Gxp.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Gxp.java index 705d1e15db..6170281d09 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Gxp.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Gxp.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpInstance.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpInstance.java index fef51bcc86..9f0b809b72 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpInstance.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpInstance.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpResult.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpResult.java index 7019956c97..1e7eba6829 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpResult.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/GxpResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Param.java b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Param.java index b98b01389c..1a779996e0 100644 --- a/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Param.java +++ b/plugins/gxp/src/main/java/org/apache/struts2/views/gxp/Param.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java index d0c3e7e0e7..028d72962c 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jasperreports; import net.sf.jasperreports.engine.JRException; diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java index afb7803a11..3d7fcdc422 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jasperreports; diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java index 312604d212..242469024d 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jasperreports; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java index d875d2e4fc..016e9414d9 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackDataSource.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jasperreports; import com.opensymphony.xwork2.util.ValueStack; diff --git a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackShadowMap.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackShadowMap.java index fa9c35f0bc..c6e3766495 100644 --- a/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackShadowMap.java +++ b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/ValueStackShadowMap.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.jasperreports; import com.opensymphony.xwork2.util.ValueStack; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Attributes.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Attributes.java index 7f3dde29ba..603cd93419 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Attributes.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Attributes.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTagHandlerFactory.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTagHandlerFactory.java index bc73d8f78a..4e356c3a6f 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTagHandlerFactory.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTagHandlerFactory.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTheme.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTheme.java index 2cba9bc966..68c195d3e3 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTheme.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/DefaultTheme.java @@ -1,6 +1,4 @@ /* - * $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 @@ -20,7 +18,6 @@ */ package org.apache.struts2.views.java; -import com.opensymphony.xwork2.config.impl.LocatableFactory; import org.apache.struts2.StrutsException; import org.apache.struts2.components.template.TemplateRenderingContext; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/JavaTemplateEngine.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/JavaTemplateEngine.java index 4c3f29eaff..67bb9b322a 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/JavaTemplateEngine.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/JavaTemplateEngine.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagGenerator.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagGenerator.java index cbd7173149..191919ff21 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagGenerator.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagGenerator.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandler.java index 1267363835..c18d60f3ca 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandlerFactory.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandlerFactory.java index a0d03a6219..7b6f8dc42b 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandlerFactory.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagHandlerFactory.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagSerializer.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagSerializer.java index da899ae1ba..bd1652be18 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagSerializer.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/TagSerializer.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Theme.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Theme.java index f25df200c8..43c6e4da38 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Theme.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/Theme.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java index e308e1298c..730071c2c0 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractMessageListHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractMessageListHandler.java index f42d5ca173..9227815119 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractMessageListHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractMessageListHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractTagHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractTagHandler.java index 5faad8f17a..74a0443a67 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractTagHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AbstractTagHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionErrorHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionErrorHandler.java index 50efeee470..8aa1547130 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionErrorHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionErrorHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionMessageHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionMessageHandler.java index 06fbe0ed0e..f626402f7d 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionMessageHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ActionMessageHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; public class ActionMessageHandler extends AbstractMessageListHandler { diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java index 570772c276..12df246351 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxHandler.java index 3166d2c444..2e6eb37dca 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; import org.apache.struts2.views.java.Attributes; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java index 9240938cd9..a4cdb5b904 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; import com.opensymphony.xwork2.util.ValueStack; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CommonAttributesHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CommonAttributesHandler.java index 834abb9a43..8a7b737df4 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CommonAttributesHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CommonAttributesHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DateTextFieldHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DateTextFieldHandler.java index 80aed2584d..7c93a6b1f1 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DateTextFieldHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DateTextFieldHandler.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.views.java.simple; import java.io.IOException; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DynamicAttributesHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DynamicAttributesHandler.java index 86762a709b..7568c1c330 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DynamicAttributesHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/DynamicAttributesHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; import org.apache.commons.lang3.ObjectUtils; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java index 9006c74061..be12ebda66 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FieldErrorHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FieldErrorHandler.java index c8666f75be..aae61fa353 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FieldErrorHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FieldErrorHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FileHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FileHandler.java index fe7a7d7322..1c0b7275ad 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FileHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FileHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java index 6c1a407ce4..4e8fe9eeb6 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java index 17c25a1afc..7eb7fa3be4 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; import org.apache.struts2.ServletActionContext; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HiddenHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HiddenHandler.java index 395f7ccba0..235f556aed 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HiddenHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/HiddenHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java index b23d3a325c..2b27360b97 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/PasswordHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/PasswordHandler.java index b6c2ebbdb1..63c9679767 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/PasswordHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/PasswordHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/RadioHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/RadioHandler.java index 5ad1157234..369c23a940 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/RadioHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/RadioHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.java.simple; import com.opensymphony.xwork2.util.ValueStack; diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ResetHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ResetHandler.java index 6d940adf9a..c0eb9aa7a3 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ResetHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ResetHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ScriptingEventsHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ScriptingEventsHandler.java index a439676ca2..231d7032b4 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ScriptingEventsHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/ScriptingEventsHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SelectHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SelectHandler.java index 5625cdb547..f53a3d2a3d 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SelectHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SelectHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java index 0a00b2a7ae..c3ebe8ba86 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java index 0f66153b98..8207d7ba50 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextAreaHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextAreaHandler.java index d6380b9399..6274096c56 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextAreaHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextAreaHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextFieldHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextFieldHandler.java index 29921f134c..190ab96a02 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextFieldHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TextFieldHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TokenHandler.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TokenHandler.java index 40ce86d2cf..ebd3b70d7f 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TokenHandler.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/TokenHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java b/plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java index c3bba6e5f4..eabd988fac 100644 --- a/plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java +++ b/plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import org.apache.struts2.ServletActionContext; diff --git a/plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java b/plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java index e285d21aa3..b05496d672 100644 --- a/plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java +++ b/plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONActionRedirectResult.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONActionRedirectResult.java index c3a92687f4..de3c2e912c 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONActionRedirectResult.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONActionRedirectResult.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import java.io.IOException; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java index 3328101eb0..ce847c2307 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java index 64067c7f21..e3dbf4b7b8 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java @@ -1,17 +1,20 @@ /* - * Copyright 2017 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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 org.apache.struts2.json; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONException.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONException.java index 220eb5bf4f..70c0d1e010 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONException.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONException.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java index e03b96e85e..2c793de42e 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONPopulator.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONPopulator.java index be3847fe88..67d80f1823 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONPopulator.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONPopulator.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONReader.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONReader.java index 75abb19c28..4fb1c406ec 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONReader.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONReader.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java index f52f7d765a..4eba2630d4 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java index bcc3d81c4a..8c443e5e51 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java index ab91f24f49..68113658f2 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json; import com.opensymphony.xwork2.Action; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java index 48b5e3c5a7..87d7c6795d 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java @@ -1,17 +1,20 @@ /* - * Copyright 2017 The Apache Software Foundation. + * 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 * - * 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 * - * 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. + * 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 org.apache.struts2.json; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/SerializationParams.java b/plugins/json/src/main/java/org/apache/struts2/json/SerializationParams.java index 5a6cd6947e..210a688836 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/SerializationParams.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/SerializationParams.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSON.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSON.java index 584ea72cf9..9b40f6f578 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSON.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSON.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONFieldBridge.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONFieldBridge.java index 8ebbe58876..799edd76b2 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONFieldBridge.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONFieldBridge.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json.annotations; import org.apache.struts2.json.bridge.FieldBridge; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONParameter.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONParameter.java index c038870c8e..363699098f 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONParameter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONParameter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json.annotations; import java.lang.annotation.ElementType; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMD.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMD.java index a3bd2797c0..e6094c2bcd 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMD.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMD.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethod.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethod.java index a910135fa6..56710ed87e 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethod.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethod.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethodParameter.java b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethodParameter.java index 2d28d50070..1e1fb051a7 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethodParameter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethodParameter.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/bridge/FieldBridge.java b/plugins/json/src/main/java/org/apache/struts2/json/bridge/FieldBridge.java index 76ed0f2029..1dd005d375 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/bridge/FieldBridge.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/bridge/FieldBridge.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json.bridge; /** diff --git a/plugins/json/src/main/java/org/apache/struts2/json/bridge/ParameterizedBridge.java b/plugins/json/src/main/java/org/apache/struts2/json/bridge/ParameterizedBridge.java index 28bdf76c9a..b60fcfaabd 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/bridge/ParameterizedBridge.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/bridge/ParameterizedBridge.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json.bridge; import java.util.Map; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/bridge/StringBridge.java b/plugins/json/src/main/java/org/apache/struts2/json/bridge/StringBridge.java index 29ea15b356..4eeae1327a 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/bridge/StringBridge.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/bridge/StringBridge.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json.bridge; /** diff --git a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCError.java b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCError.java index 528fc7037b..5e47f2057c 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCError.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCError.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCErrorCode.java b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCErrorCode.java index bef720d86e..02d8df8d73 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCErrorCode.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCErrorCode.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCResponse.java b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCResponse.java index 3783fa5df3..610eb72e2f 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCResponse.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCResponse.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMD.java b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMD.java index 2ced949d2c..604fcb0c19 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMD.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMD.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java index decf22b32a..9746aa5d43 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json.smd; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethod.java b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethod.java index abd42b327b..dd538098b3 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethod.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethod.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethodParameter.java b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethodParameter.java index 95797f21d0..0a0ec6cd8f 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethodParameter.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethodParameter.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/AnEnum.java b/plugins/json/src/test/java/org/apache/struts2/json/AnEnum.java index 94226d9794..53df2f73fe 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/AnEnum.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/AnEnum.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/AnEnumBean.java b/plugins/json/src/test/java/org/apache/struts2/json/AnEnumBean.java index 0f6313e623..1fd8ab9437 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/AnEnumBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/AnEnumBean.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/AnotherBean.java b/plugins/json/src/test/java/org/apache/struts2/json/AnotherBean.java index 81ba27d100..0e85567db2 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/AnotherBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/AnotherBean.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import java.util.ArrayList; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/Bean.java b/plugins/json/src/test/java/org/apache/struts2/json/Bean.java index 8fb725a1c4..0509ad1838 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/Bean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/Bean.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java b/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java index 6e55fb8f13..1f34921aea 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/DefaultJSONWriterTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import org.apache.struts2.StrutsTestCase; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONActionRedirectResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONActionRedirectResultTest.java index c98e41a171..383b119e10 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONActionRedirectResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONActionRedirectResultTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import org.apache.struts2.StrutsStatics; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONCleanerTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONCleanerTest.java index 07d87ed458..5a4df6fdd5 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONCleanerTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONCleanerTest.java @@ -1,19 +1,20 @@ /* - * $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 * - * Copyright 2003-2004 The Apache Software Foundation. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. + * 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 org.apache.struts2.json; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java index 7d07f516ae..a9ee11331a 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java index 5f1941273d..01e3a11c55 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONPopulatorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONPopulatorTest.java index 0fdf04073d..695912ea1f 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONPopulatorTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONPopulatorTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java index ac253f5a26..9c466c3f4d 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import org.junit.Test; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java index ea6086593c..c5f6493337 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java @@ -1,6 +1,4 @@ /* - + * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java index b086f01a2a..d03d69e999 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java index 24ac417dab..6447d37594 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json; import com.opensymphony.xwork2.Action; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/ListBean.java b/plugins/json/src/test/java/org/apache/struts2/json/ListBean.java index 561c182422..1459386674 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/ListBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/ListBean.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import java.util.ArrayList; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/OtherBean.java b/plugins/json/src/test/java/org/apache/struts2/json/OtherBean.java index fa6f629330..6ffb26259b 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/OtherBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/OtherBean.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest1.java b/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest1.java index 245ccf2f29..cbc567babb 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest1.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest1.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest2.java b/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest2.java index f842fc9170..67940a5932 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest2.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest2.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/SMDMethodInterfaceTest.java b/plugins/json/src/test/java/org/apache/struts2/json/SMDMethodInterfaceTest.java index 4c098999a3..27df09d3b8 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/SMDMethodInterfaceTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/SMDMethodInterfaceTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/SimpleValue.java b/plugins/json/src/test/java/org/apache/struts2/json/SimpleValue.java index ed133ee0f2..3b243b2911 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/SimpleValue.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/SimpleValue.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/SingleDateBean.java b/plugins/json/src/test/java/org/apache/struts2/json/SingleDateBean.java index 503a0881a3..ca390311f2 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/SingleDateBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/SingleDateBean.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import java.util.Date; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletRequest.java b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletRequest.java index ef9de4553e..b2d962b290 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletRequest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletRequest.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json; import com.mockobjects.servlet.MockHttpServletRequest; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java index 57b9029d32..8b32a310fe 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.json; import com.mockobjects.servlet.MockHttpServletResponse; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpSession.java b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpSession.java index a18cd4888b..7d2998f239 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpSession.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpSession.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json; import com.mockobjects.servlet.MockHttpSession; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockServletContext.java b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockServletContext.java index 05d70e563a..5927eb7f28 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockServletContext.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockServletContext.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.json; import javax.servlet.*; diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java b/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java index da0ff9c212..3021e3659f 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction2.java b/plugins/json/src/test/java/org/apache/struts2/json/TestAction2.java index 6ccf85a0d9..984145d472 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction2.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction2.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction3.java b/plugins/json/src/test/java/org/apache/struts2/json/TestAction3.java index 516eba22c1..47451de95e 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction3.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction3.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction4.java b/plugins/json/src/test/java/org/apache/struts2/json/TestAction4.java index fa7dcf93b8..d21c75f48a 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction4.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction4.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestAction5.java b/plugins/json/src/test/java/org/apache/struts2/json/TestAction5.java index 9c3321a2d7..22856e51a0 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestAction5.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestAction5.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/TestUtils.java b/plugins/json/src/test/java/org/apache/struts2/json/TestUtils.java index 5ff0770bc4..f48e07beac 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/TestUtils.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/TestUtils.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/json/src/test/java/org/apache/struts2/json/WrapperClassBean.java b/plugins/json/src/test/java/org/apache/struts2/json/WrapperClassBean.java index 65956fc387..379c6c9d1b 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/WrapperClassBean.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/WrapperClassBean.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/main/java/org/apache/struts2/ConventionPluginResourceLoader.java b/plugins/junit/src/main/java/org/apache/struts2/ConventionPluginResourceLoader.java index fb94d27d83..060ea0f0ad 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/ConventionPluginResourceLoader.java +++ b/plugins/junit/src/main/java/org/apache/struts2/ConventionPluginResourceLoader.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2; import org.apache.commons.lang3.StringUtils; diff --git a/plugins/junit/src/main/java/org/apache/struts2/StrutsJUnit4TestCase.java b/plugins/junit/src/main/java/org/apache/struts2/StrutsJUnit4TestCase.java index 1e9221cac6..b39349d603 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/StrutsJUnit4TestCase.java +++ b/plugins/junit/src/main/java/org/apache/struts2/StrutsJUnit4TestCase.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/junit/src/main/java/org/apache/struts2/StrutsRestTestCase.java b/plugins/junit/src/main/java/org/apache/struts2/StrutsRestTestCase.java index e5f689f0f5..eba18abb2d 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/StrutsRestTestCase.java +++ b/plugins/junit/src/main/java/org/apache/struts2/StrutsRestTestCase.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringJUnit4TestCase.java b/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringJUnit4TestCase.java index b8c105dec2..30c2281c9e 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringJUnit4TestCase.java +++ b/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringJUnit4TestCase.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import org.springframework.beans.BeansException; diff --git a/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringTestCase.java b/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringTestCase.java index f70864a78d..59635f35b1 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringTestCase.java +++ b/plugins/junit/src/main/java/org/apache/struts2/StrutsSpringTestCase.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/main/java/org/apache/struts2/StrutsTestCase.java b/plugins/junit/src/main/java/org/apache/struts2/StrutsTestCase.java index 7a36ab94ed..f28c286f93 100644 --- a/plugins/junit/src/main/java/org/apache/struts2/StrutsTestCase.java +++ b/plugins/junit/src/main/java/org/apache/struts2/StrutsTestCase.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/junit/src/test/java/actions/ViewAction.java b/plugins/junit/src/test/java/actions/ViewAction.java index a90da9edf6..30635a184e 100644 --- a/plugins/junit/src/test/java/actions/ViewAction.java +++ b/plugins/junit/src/test/java/actions/ViewAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/JUnitTestAction.java b/plugins/junit/src/test/java/org/apache/struts2/JUnitTestAction.java index 5d481c5616..428adfe521 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/JUnitTestAction.java +++ b/plugins/junit/src/test/java/org/apache/struts2/JUnitTestAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/MySessionBean.java b/plugins/junit/src/test/java/org/apache/struts2/MySessionBean.java index 3b37cb9500..1c90a800ad 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/MySessionBean.java +++ b/plugins/junit/src/test/java/org/apache/struts2/MySessionBean.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/StrutsJUnit4TestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/StrutsJUnit4TestCaseTest.java index 8111b30eb7..d3e0d15d3b 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/StrutsJUnit4TestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/StrutsJUnit4TestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import org.junit.Assert; diff --git a/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringJUnit4TestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringJUnit4TestCaseTest.java index 6bbee62ebc..d55db9b75a 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringJUnit4TestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringJUnit4TestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringTestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringTestCaseTest.java index 6bf76a631e..f6f18831b5 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringTestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/StrutsSpringTestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/StrutsTestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/StrutsTestCaseTest.java index 11373793cf..13bea5c4dd 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/StrutsTestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/StrutsTestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/convention/StrutsJUnit4ConventionTestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/convention/StrutsJUnit4ConventionTestCaseTest.java index a81d797685..5e4f560940 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/convention/StrutsJUnit4ConventionTestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/convention/StrutsJUnit4ConventionTestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/session/SessionGetAction.java b/plugins/junit/src/test/java/org/apache/struts2/session/SessionGetAction.java index 05b43bf92d..9456d11af6 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/session/SessionGetAction.java +++ b/plugins/junit/src/test/java/org/apache/struts2/session/SessionGetAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/session/SessionSetAction.java b/plugins/junit/src/test/java/org/apache/struts2/session/SessionSetAction.java index 2534e9e215..d7c879db95 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/session/SessionSetAction.java +++ b/plugins/junit/src/test/java/org/apache/struts2/session/SessionSetAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/junit/src/test/java/org/apache/struts2/session/StrutsJUnit4SessionTestCaseTest.java b/plugins/junit/src/test/java/org/apache/struts2/session/StrutsJUnit4SessionTestCaseTest.java index 7a20cf52e7..7bde085292 100644 --- a/plugins/junit/src/test/java/org/apache/struts2/session/StrutsJUnit4SessionTestCaseTest.java +++ b/plugins/junit/src/test/java/org/apache/struts2/session/StrutsJUnit4SessionTestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.session; import org.apache.struts2.JUnitTestAction; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleAccessor.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleAccessor.java index 83f111ec97..3081c8eec9 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleAccessor.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleAccessor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import org.apache.struts2.osgi.host.OsgiHost; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleClassLoaderInterface.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleClassLoaderInterface.java index 0723624e2b..b9008d4354 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleClassLoaderInterface.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleClassLoaderInterface.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.util.finder.ClassLoaderInterface; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleFreemarkerManager.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleFreemarkerManager.java index ceddb91992..3ce105e188 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleFreemarkerManager.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundleFreemarkerManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import org.apache.logging.log4j.Logger; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundlePackageLoader.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundlePackageLoader.java index 7e3add76a8..ab4fbcd364 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundlePackageLoader.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/BundlePackageLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.FileManagerFactory; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DefaultBundleAccessor.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DefaultBundleAccessor.java index b3967a0e4e..7846cf5324 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DefaultBundleAccessor.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DefaultBundleAccessor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java index 0b069b0569..0a493ed6d7 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/DelegatingObjectFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.ObjectFactory; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiConfigurationProvider.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiConfigurationProvider.java index 682fc53113..96285ca041 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiConfigurationProvider.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiConfigurationProvider.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiHostFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiHostFactory.java index 96797440c7..e548bd1ed5 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiHostFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiHostFactory.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiUtil.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiUtil.java index 955d090828..ff3953a998 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiUtil.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/OsgiUtil.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import org.apache.logging.log4j.Logger; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/PackageLoader.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/PackageLoader.java index 69d2cfd930..192c78ddab 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/PackageLoader.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/PackageLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.FileManagerFactory; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java index 254f73ec65..e4d9dac4de 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/SpringOsgiObjectFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi; import com.opensymphony.xwork2.ObjectFactory; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/StrutsOsgiListener.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/StrutsOsgiListener.java index f5948994df..b1122f977b 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/StrutsOsgiListener.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/StrutsOsgiListener.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.osgi; import org.apache.logging.log4j.Logger; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java index 04ed2a9319..b095da5ab4 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/FelixOsgiHost.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/FelixOsgiHost.java index a3241e7f02..f31a94fde3 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/FelixOsgiHost.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/FelixOsgiHost.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi.host; import com.opensymphony.xwork2.config.ConfigurationException; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/GlassfishOSGiHost.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/GlassfishOSGiHost.java index dfd5e943d2..575e1db018 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/GlassfishOSGiHost.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/GlassfishOSGiHost.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/OsgiHost.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/OsgiHost.java index 7c333c65e5..543a1652ad 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/OsgiHost.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/OsgiHost.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,15 +16,12 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi.host; -import org.osgi.framework.BundleActivator; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import javax.servlet.ServletContext; -import java.util.List; import java.util.Map; /** diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/BundleContextAware.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/BundleContextAware.java index aec026a795..d9eaf60e44 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/BundleContextAware.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/BundleContextAware.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/OsgiInterceptor.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/OsgiInterceptor.java index 0c972dd4c6..09b9769277 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/OsgiInterceptor.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/OsgiInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/ServiceAware.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/ServiceAware.java index 9c9fc7fb4d..bc6e916fe0 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/ServiceAware.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/interceptor/ServiceAware.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/FreeMarkerBundleResourceLoader.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/FreeMarkerBundleResourceLoader.java index 3638cd04d5..a74eefe736 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/FreeMarkerBundleResourceLoader.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/FreeMarkerBundleResourceLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi.loaders; import java.net.URL; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/StaticContentBundleResourceLoader.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/StaticContentBundleResourceLoader.java index ef2827444c..dc75d3ffd1 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/StaticContentBundleResourceLoader.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/StaticContentBundleResourceLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi.loaders; import com.opensymphony.xwork2.inject.Inject; diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/VelocityBundleResourceLoader.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/VelocityBundleResourceLoader.java index ae25ea19b6..3806f8c091 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/VelocityBundleResourceLoader.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/loaders/VelocityBundleResourceLoader.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.osgi.loaders; import java.io.InputStream; diff --git a/plugins/osgi/src/test/java/org/apache/struts2/osgi/host/FelixOsgiHostTest.java b/plugins/osgi/src/test/java/org/apache/struts2/osgi/host/FelixOsgiHostTest.java index 4cd584981b..d8cd2c7231 100644 --- a/plugins/osgi/src/test/java/org/apache/struts2/osgi/host/FelixOsgiHostTest.java +++ b/plugins/osgi/src/test/java/org/apache/struts2/osgi/host/FelixOsgiHostTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/OsgiInterceptorTest.java b/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/OsgiInterceptorTest.java index d87a0f47bf..9c4228079f 100644 --- a/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/OsgiInterceptorTest.java +++ b/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/OsgiInterceptorTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.osgi.interceptor; import org.easymock.EasyMock; diff --git a/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/SomeAction.java b/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/SomeAction.java index 4355b526ff..16231513b4 100644 --- a/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/SomeAction.java +++ b/plugins/osgi/src/test/java/org/apache/struts2/osgi/interceptor/SomeAction.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/annotation/Profiles.java b/plugins/oval/src/main/java/org/apache/struts2/oval/annotation/Profiles.java index 85984d8ca5..49e74a9285 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/annotation/Profiles.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/annotation/Profiles.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java index 1c75d61696..4af986ca9a 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor; import com.opensymphony.xwork2.FileManager; diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java index 473c9a7a17..bf660c25bc 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java index 9472285613..a3a6d699cf 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java @@ -1,11 +1,27 @@ +/* + * 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 org.apache.struts2.oval.interceptor; -import net.sf.oval.configuration.xml.XMLConfigurer; import net.sf.oval.configuration.Configurer; import java.util.List; - public interface OValValidationManager { /** *

This method 'collects' all the validator configurations for a given diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/DummyDefaultOValValidationManager.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/DummyDefaultOValValidationManager.java index 54d9f1554d..171fa2995a 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/DummyDefaultOValValidationManager.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/DummyDefaultOValValidationManager.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/FieldsWithProfiles.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/FieldsWithProfiles.java index 017e08fbf8..5c5c342cd2 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/FieldsWithProfiles.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/FieldsWithProfiles.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java index b57bf92102..591b1b206d 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor; import net.sf.oval.constraint.AssertValid; diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java index 81596f21d9..a64cd2bba0 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor; import net.sf.oval.constraint.AssertValid; diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/OValValidationInterceptorTest.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/OValValidationInterceptorTest.java index 4a5bc5cf59..da9d34c6d1 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/OValValidationInterceptorTest.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/OValValidationInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleField.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleField.java index 678a9c5de3..045dc1f684 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleField.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleField.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18n.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18n.java index 799732c0cc..cc986ff1ea 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18n.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18n.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18nDefaultKey.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18nDefaultKey.java index b9682524dd..d758ec4b6c 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18nDefaultKey.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18nDefaultKey.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldJPAAnnotations.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldJPAAnnotations.java index 342c11f3b8..8df5c55f1c 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldJPAAnnotations.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldJPAAnnotations.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldOGNLExpression.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldOGNLExpression.java index 831631affd..858c497c42 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldOGNLExpression.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldOGNLExpression.java @@ -1,6 +1,4 @@ /* - * $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 @@ -20,9 +18,6 @@ */ package org.apache.struts2.oval.interceptor; -import net.sf.oval.constraint.NotNull; -import net.sf.oval.constraint.NotEmpty; -import net.sf.oval.constraint.Length; import net.sf.oval.constraint.Assert; import com.opensymphony.xwork2.ActionSupport; diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java index ddab448f50..09bf3fa00a 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor; import com.opensymphony.xwork2.ActionSupport; diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild.java index 7db37d2e44..971afb7fed 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleMethod.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleMethod.java index 8fbccd2399..a3dc92a4bf 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleMethod.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleMethod.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ValidationInMethods.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ValidationInMethods.java index e8eccf20ad..6e8cd859d8 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ValidationInMethods.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ValidationInMethods.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/VoidResult.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/VoidResult.java index b7979d6b26..5249fafd59 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/VoidResult.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/VoidResult.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java index 8a0f98afd5..0d105427c2 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor.domain; import net.sf.oval.constraint.MinLength; diff --git a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java index 4811d5f025..ef6c0e0f44 100644 --- a/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java +++ b/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.oval.interceptor.domain; import javax.persistence.Column; diff --git a/plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java b/plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java index 9dba92e4da..aaf1f8b12c 100644 --- a/plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java +++ b/plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.dispatcher.multipart; import org.apache.logging.log4j.Logger; @@ -32,7 +29,6 @@ import java.util.Enumeration; import java.util.List; - /** * Multipart form data request adapter for Jason Pell's multipart utils package. * diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusFilter.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusFilter.java index 8058daca9c..18a729fae4 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusFilter.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.plexus; import java.io.IOException; diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusLifecycleListener.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusLifecycleListener.java index f4ba972a88..9ba689b551 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusLifecycleListener.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusLifecycleListener.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.plexus; import java.util.Collections; diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java index 24742998d4..7743800446 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusObjectFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.plexus; import com.opensymphony.xwork2.Action; diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusThreadLocal.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusThreadLocal.java index 5ee9010237..1db5553be7 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusThreadLocal.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusThreadLocal.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.plexus; import org.codehaus.plexus.PlexusContainer; diff --git a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusUtils.java b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusUtils.java index 27575bd405..d43ccbb54c 100644 --- a/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusUtils.java +++ b/plugins/plexus/src/main/java/org/apache/struts2/plexus/PlexusUtils.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.plexus; import java.io.ByteArrayInputStream; diff --git a/plugins/portlet-tiles/src/main/java/org/apache/struts2/views/tiles/PortletTilesResult.java b/plugins/portlet-tiles/src/main/java/org/apache/struts2/views/tiles/PortletTilesResult.java index f12274b39b..82249ccc90 100644 --- a/plugins/portlet-tiles/src/main/java/org/apache/struts2/views/tiles/PortletTilesResult.java +++ b/plugins/portlet-tiles/src/main/java/org/apache/struts2/views/tiles/PortletTilesResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.tiles; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/StrutsPortletTestCase.java b/plugins/portlet/src/main/java/org/apache/struts2/StrutsPortletTestCase.java index ad89df1838..0c9801d3ac 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/StrutsPortletTestCase.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/StrutsPortletTestCase.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java b/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java index 912a670441..c31a3ff0a4 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java @@ -1,6 +1,4 @@ /* - * $Id: PortletUrlRenderer.java 612406 2008-01-16 10:05:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletApplicationMap.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletApplicationMap.java index 4c5b62c462..a5ea0b9ac8 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletApplicationMap.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletApplicationMap.java @@ -1,6 +1,4 @@ /* - * $Id: PortletApplicationMap.java 557544 2007-07-19 10:03:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletConstants.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletConstants.java index d12491bb76..a3e08def8a 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletConstants.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletConstants.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet; import org.apache.struts2.ServletActionContext; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletPhase.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletPhase.java index 75eaf6253d..a130cd3583 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletPhase.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletPhase.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet; /** diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java index 1906d0bfac..df9dc108fd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java @@ -1,6 +1,4 @@ /* - * $Id: PortletRequestMap.java 582626 2007-10-07 13:26:12Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java index 3ed5ec14d7..9076640ffd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java @@ -1,6 +1,4 @@ /* - * $Id: PortletSessionMap.java 582626 2007-10-07 13:26:12Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java index a51a3ca9dc..89826190bb 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java @@ -1,6 +1,4 @@ /* - * $Id: PortletActionContext.java 564279 2007-08-09 17:00:49Z nilsga $ - * * 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 @@ -46,7 +44,6 @@ import static org.apache.struts2.portlet.PortletConstants.REQUEST; import static org.apache.struts2.portlet.PortletConstants.RESPONSE; - /** * PortletActionContext. ActionContext thread local for the portlet environment. * diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java index a0dcb27b5b..355630cc1c 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java @@ -1,6 +1,4 @@ /* - * $Id: DirectRenderFromEventAction.java 564120 2007-08-09 07:14:51Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DispatcherServlet.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DispatcherServlet.java index 695eddff1f..a09137a43f 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DispatcherServlet.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DispatcherServlet.java @@ -1,6 +1,4 @@ /* - * $Id: DispatcherServlet.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java index aab7d9f870..2794721f1e 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java @@ -1,6 +1,4 @@ /* - * $Id: Jsr168Dispatcher.java 759140 2009-03-27 13:51:52Z nilsga $ - * * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.portlet.dispatcher; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr286Dispatcher.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr286Dispatcher.java index 2e82f0bb4e..78946e2241 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr286Dispatcher.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr286Dispatcher.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.dispatcher; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java index 87fd279484..63ac9c9139 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java @@ -1,6 +1,4 @@ /* - * $Id: PortletAwareInterceptor.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletContextAware.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletContextAware.java index ebc3dfb149..c917a2a4c7 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletContextAware.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletContextAware.java @@ -1,6 +1,4 @@ /* - * $Id: PortletContextAware.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesAware.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesAware.java index 1f007a05d2..e7b61d9c4d 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesAware.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesAware.java @@ -1,6 +1,4 @@ /* - * $Id: PortletPreferencesAware.java 557544 2007-07-19 10:03:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPrincipalProxy.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPrincipalProxy.java index 3fd1a6a4cd..19122206bd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPrincipalProxy.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPrincipalProxy.java @@ -1,6 +1,4 @@ /* - * $Id: PortletPrincipalProxy.java 559107 2007-07-24 17:03:11Z jholmes $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletRequestAware.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletRequestAware.java index 61e33a3b99..8fee62a1a0 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletRequestAware.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletRequestAware.java @@ -1,6 +1,4 @@ /* - * $Id: PortletRequestAware.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletResponseAware.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletResponseAware.java index b37774c661..48cbb445a7 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletResponseAware.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletResponseAware.java @@ -1,6 +1,4 @@ /* - * $Id: PortletResponseAware.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptor.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptor.java index 48832a47c6..e3d1db92cd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptor.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptor.java @@ -1,6 +1,4 @@ /* - * $Id: PortletStateInterceptor.java 601698 2007-12-06 10:59:38Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/ServletPortletPreferences.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/ServletPortletPreferences.java index 59a7da0987..53a2e848bd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/ServletPortletPreferences.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/ServletPortletPreferences.java @@ -1,6 +1,4 @@ /* - * $Id: ServletPortletPreferences.java 557544 2007-07-19 10:03:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletActionRedirectResult.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletActionRedirectResult.java index 0bc6938104..4b561caddc 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletActionRedirectResult.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletActionRedirectResult.java @@ -1,6 +1,4 @@ /* - * $Id: PortletActionRedirectResult.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java index 0e0c881699..5e97b00ddb 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java @@ -1,6 +1,4 @@ /* - * $Id: PortletResult.java 582626 2007-10-07 13:26:12Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelper.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelper.java index 26f1d520fc..6fba31a0e6 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelper.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelper.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.result; import javax.portlet.*; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR168.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR168.java index 26c765f5dd..29958340f4 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR168.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR168.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.result; import javax.portlet.*; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR286.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR286.java index 66f3818f05..d3906bf309 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR286.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResultHelperJSR286.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.result; import javax.portlet.*; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletVelocityResult.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletVelocityResult.java index d502e74a2e..9016145933 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletVelocityResult.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletVelocityResult.java @@ -1,6 +1,4 @@ /* - * $Id: PortletVelocityResult.java 582626 2007-10-07 13:26:12Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java index d9c350232b..75f944a558 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java @@ -1,6 +1,4 @@ /* - * $Id: PortletHttpSession.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletConfig.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletConfig.java index 693b285e1f..3bc21a9f64 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletConfig.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletConfig.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletConfig.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletContext.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletContext.java index f0c64ee5a0..3db03ad929 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletContext.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletContext.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletContext.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletInputStream.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletInputStream.java index 53adfc792e..78b5c95fb9 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletInputStream.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletInputStream.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletInputStream.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletOutputStream.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletOutputStream.java index 4ab0eb39b3..94f114fa47 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletOutputStream.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletOutputStream.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletOutputStream.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java index a224e14136..9e7db1707c 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletRequest.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequestDispatcher.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequestDispatcher.java index 206697d6ad..934cf2497a 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequestDispatcher.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequestDispatcher.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletRequestDispatcher.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponse.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponse.java index 56d4eb8a8c..e14b347f06 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponse.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponse.java @@ -1,6 +1,4 @@ /* - * $Id: PortletServletResponse.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponseJSR286.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponseJSR286.java index 6e9f0f5e1b..fd62be36c0 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponseJSR286.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponseJSR286.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.servlet; import java.io.IOException; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java index 73a3195d7a..286bff23cd 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java @@ -1,6 +1,4 @@ /* - * $Id: PortletUrlHelper.java 582626 2007-10-07 13:26:12Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelperJSR286.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelperJSR286.java index 82e9699b99..1973886c3e 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelperJSR286.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelperJSR286.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.portlet.util; import org.apache.struts2.portlet.context.PortletActionContext; diff --git a/plugins/portlet/src/main/java/org/apache/struts2/views/freemarker/PortletFreemarkerResult.java b/plugins/portlet/src/main/java/org/apache/struts2/views/freemarker/PortletFreemarkerResult.java index 09a3d5f9dc..91f3c0865e 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/views/freemarker/PortletFreemarkerResult.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/views/freemarker/PortletFreemarkerResult.java @@ -1,6 +1,4 @@ /* - * $Id: PortletFreemarkerResult.java 564599 2007-08-10 14:05:17Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/components/PortletAction.java b/plugins/portlet/src/test/java/org/apache/struts2/components/PortletAction.java index 56ca1c74ab..5e8f31e4e3 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/components/PortletAction.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/components/PortletAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.components; import com.opensymphony.xwork2.Action; diff --git a/plugins/portlet/src/test/java/org/apache/struts2/components/PortletUrlRendererTest.java b/plugins/portlet/src/test/java/org/apache/struts2/components/PortletUrlRendererTest.java index cb2c87d23c..39c5125657 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/components/PortletUrlRendererTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/components/PortletUrlRendererTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.components; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletApplicationMapTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletApplicationMapTest.java index e568198cea..5a816d27da 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletApplicationMapTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletApplicationMapTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletApplicationMapTest.java 557544 2007-07-19 10:03:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java index 19bff7a5fe..19d4c6771e 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletRequestMapTest.java 580134 2007-09-27 19:44:01Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java index 5c210d6195..d666cc6db0 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletSessionMapTest.java 580134 2007-09-27 19:44:01Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/context/PortletActionContextTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/context/PortletActionContextTest.java index d9b4a3e189..c015c0d888 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/context/PortletActionContextTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/context/PortletActionContextTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletActionContextTest.java 557544 2007-07-19 10:03:06Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java index 5905055af6..ef0c5c023c 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java @@ -1,6 +1,4 @@ /* - * $Id: Jsr168DispatcherTest.java 602665 2007-12-09 12:11:25Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr286DispatcherTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr286DispatcherTest.java index 06a54912f9..6d8ff4b90d 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr286DispatcherTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr286DispatcherTest.java @@ -1,6 +1,4 @@ /* - * $Id: Jsr168DispatcherTest.java 602665 2007-12-09 12:11:25Z mrdon $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptorTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptorTest.java index 9fc146edeb..907ceaf9d2 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptorTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletAwareInterceptorTest.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptorTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptorTest.java index dca5d8b1e7..fe9daf5808 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptorTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletStateInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletStateInterceptorTest.java 590812 2007-10-31 20:32:54Z apetrelli $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/result/PortletResultTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/result/PortletResultTest.java index b36cf74bcc..66152340ea 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/result/PortletResultTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/result/PortletResultTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletResultTest.java 564926 2007-08-11 14:31:18Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/portlet/util/PortletUrlHelperTest.java b/plugins/portlet/src/test/java/org/apache/struts2/portlet/util/PortletUrlHelperTest.java index bcad96ba87..78bed300b2 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/portlet/util/PortletUrlHelperTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/portlet/util/PortletUrlHelperTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletUrlHelperTest.java 564967 2007-08-11 20:20:33Z nilsga $ - * * 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 diff --git a/plugins/portlet/src/test/java/org/apache/struts2/views/jsp/PortletUrlTagTest.java b/plugins/portlet/src/test/java/org/apache/struts2/views/jsp/PortletUrlTagTest.java index 8bdb3fbcba..1e7c7d8cf7 100644 --- a/plugins/portlet/src/test/java/org/apache/struts2/views/jsp/PortletUrlTagTest.java +++ b/plugins/portlet/src/test/java/org/apache/struts2/views/jsp/PortletUrlTagTest.java @@ -1,6 +1,4 @@ /* - * $Id: PortletUrlTagTest.java 609901 2008-01-08 08:18:23Z nilsga $ - * * 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 diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java index a7af101dff..4a93320b45 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeHandlerManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java index 8a194edef1..55717145a8 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/ContentTypeInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java index 02a314acb3..8379a027b3 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultHttpHeaders.java b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultHttpHeaders.java index 506814e95e..5b4ae79a07 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultHttpHeaders.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultHttpHeaders.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import org.apache.struts2.RequestUtils; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/HttpHeaders.java b/plugins/rest/src/main/java/org/apache/struts2/rest/HttpHeaders.java index b943a3b874..0bb1cce9e3 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/HttpHeaders.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/HttpHeaders.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import javax.servlet.http.HttpServletRequest; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java index c71fabaebb..e018591c68 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.*; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java index a56c8e164d..1503ae2249 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.config.Configuration; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java index 645be9e763..3794faa8d1 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionSupport.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionSupport.java index 812a00ad19..6b9f671397 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionSupport.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionSupport.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import java.lang.reflect.Method; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java index 8d2f34621c..37122259b4 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.Action; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java index ae9b3b8c86..c9b7fcefda 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AbstractContentTypeHandler.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import org.apache.logging.log4j.LogManager; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java index 70927e649d..c7c23ba586 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClassNames.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import java.util.Set; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java index 9c2b8b479b..149a32c905 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/AllowedClasses.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import java.util.Set; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java index a01557e57c..0482aa8f9e 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/ContentTypeHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java index 835fb89aa2..ac57e89580 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/FormUrlEncodedHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java index 94709e1ac8..0b4242258d 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/HtmlHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java index dd9dee3bfc..a1bcf8e031 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JacksonLibHandler.java @@ -1,6 +1,4 @@ /* - * $Id: JsonLibHandler.java 1097172 2011-04-27 16:36:54Z jogep $ - * * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.fasterxml.jackson.databind.ObjectMapper; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java index 4bd96c72f1..fb86cc959b 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import java.io.IOException; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java index cceaeddc25..437e374f6f 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/MultipartFormDataHandler.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java index 2090742dc5..22e597561e 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamHandler.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java index cedc982302..b58bf91db1 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/XStreamPermissionProvider.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.thoughtworks.xstream.security.TypePermission; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java index 6bad14a092..26294555c7 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/ContentTypeHandlerManagerTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.mockobjects.dynamic.C; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java index d230ce6f76..3d1f8f2857 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultContentTypeHandlerManagerTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.rest; import com.opensymphony.xwork2.ActionInvocation; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java index d80053621a..9cc1ac652d 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import junit.framework.TestCase; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionInvocationTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionInvocationTest.java index 1ebdc94efd..8e83dc155f 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionInvocationTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionInvocationTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.rest; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java index 8bfe15991a..12e04b896f 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest; import com.opensymphony.xwork2.config.Configuration; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java index f061938289..5b3a09d2b9 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/RestWorkflowInterceptorTest.java @@ -1,6 +1,4 @@ /* - * $Id: RestWorkflowInterceptor.java 666756 2008-06-11 18:11:00Z hermanns $ - * * 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 diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/Contact.java b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/Contact.java index 4fd10a2e1f..c7607935b9 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/Contact.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/Contact.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import java.util.HashMap; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java index a45208bc4d..979b094d12 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JacksonLibHandlerTest.java @@ -1,6 +1,4 @@ /* - * $Id: JsonLibHandlerTest.java 1097172 2011-04-27 16:36:54Z jogep $ - * * 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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import com.opensymphony.xwork2.mock.MockActionInvocation; diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java index dd7470cb2e..122d59cce0 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/handler/JsonLibHandlerTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.rest.handler; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java b/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java index bfc19ef01a..6b1870fbd8 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/Main.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import java.io.File; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/SiteGraph.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/SiteGraph.java index f806ee2592..deb8edc3fa 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/SiteGraph.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/SiteGraph.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph; import org.apache.logging.log4j.Logger; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/StrutsConfigRetriever.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/StrutsConfigRetriever.java index 8e701091fa..cb830a84ad 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/StrutsConfigRetriever.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/StrutsConfigRetriever.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph; import com.opensymphony.xwork2.config.ConfigurationManager; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FileBasedView.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FileBasedView.java index 37efc13bb3..a5a7b51435 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FileBasedView.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FileBasedView.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; import org.apache.logging.log4j.Logger; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FreeMarkerView.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FreeMarkerView.java index 93179fbfb7..9f23479534 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FreeMarkerView.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/FreeMarkerView.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; import java.io.File; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/JspView.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/JspView.java index 37f55f6d9b..767d21924f 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/JspView.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/JspView.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; import java.io.File; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/Target.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/Target.java index 60416271ff..8f730bfa2f 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/Target.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/Target.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/VelocityView.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/VelocityView.java index 06f1f24d5a..505fb5770b 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/VelocityView.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/VelocityView.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; import java.io.File; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/View.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/View.java index 408c0c41eb..6db39728ab 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/View.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/entities/View.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.entities; import java.util.Set; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ActionNode.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ActionNode.java index 8aa0db139d..436bb33472 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ActionNode.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ActionNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; /** diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Graph.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Graph.java index 0ab50efc19..c66b103f3c 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Graph.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Graph.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/IndentWriter.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/IndentWriter.java index 424c762144..ddf0f131f7 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/IndentWriter.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/IndentWriter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Link.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Link.java index 863f1fb8d5..7bfde7e106 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Link.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Link.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Render.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Render.java index 197725fc56..65179c69de 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Render.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/Render.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SiteGraphNode.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SiteGraphNode.java index 5b62ead87b..c8444172f2 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SiteGraphNode.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SiteGraphNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SubGraph.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SubGraph.java index 6cd0e47822..26e991780d 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SubGraph.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/SubGraph.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; import java.io.IOException; diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ViewNode.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ViewNode.java index 95e447ab2a..3cc2e7f415 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ViewNode.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/model/ViewNode.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.model; /** diff --git a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/renderers/DOTRenderer.java b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/renderers/DOTRenderer.java index e9bfc830c8..637e499195 100644 --- a/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/renderers/DOTRenderer.java +++ b/plugins/sitegraph/src/main/java/org/apache/struts2/sitegraph/renderers/DOTRenderer.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph.renderers; import com.opensymphony.xwork2.ActionChainResult; diff --git a/plugins/sitegraph/src/test/java/org/apache/struts2/sitegraph/SiteGraphTest.java b/plugins/sitegraph/src/test/java/org/apache/struts2/sitegraph/SiteGraphTest.java index 71c3699ed1..a874d87cc3 100644 --- a/plugins/sitegraph/src/test/java/org/apache/struts2/sitegraph/SiteGraphTest.java +++ b/plugins/sitegraph/src/test/java/org/apache/struts2/sitegraph/SiteGraphTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitegraph; import com.opensymphony.xwork2.util.ClassLoaderUtil; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerDecoratorServlet.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerDecoratorServlet.java index e6fa51b67b..e3760cf45d 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerDecoratorServlet.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerDecoratorServlet.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerMapper2DecoratorSelector.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerMapper2DecoratorSelector.java index fa211bcf03..a52089fd5f 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerMapper2DecoratorSelector.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerMapper2DecoratorSelector.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,18 +16,13 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitemesh; -import com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper; -import com.opensymphony.module.sitemesh.Decorator; -import com.opensymphony.module.sitemesh.Page; import com.opensymphony.module.sitemesh.DecoratorMapper; import com.opensymphony.sitemesh.DecoratorSelector; import com.opensymphony.sitemesh.Content; import com.opensymphony.sitemesh.SiteMeshContext; import com.opensymphony.sitemesh.compatability.Content2HTMLPage; -import com.opensymphony.sitemesh.compatability.OldDecorator2NewDecorator; import com.opensymphony.sitemesh.webapp.SiteMeshWebAppContext; import com.opensymphony.sitemesh.webapp.decorator.NoDecorator; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerPageFilter.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerPageFilter.java index 6e97cf8e2c..e405d727db 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerPageFilter.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/FreemarkerPageFilter.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitemesh; import com.opensymphony.module.sitemesh.Config; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/NoneDecoratorMapper.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/NoneDecoratorMapper.java index adcb4200e7..e111487b48 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/NoneDecoratorMapper.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/NoneDecoratorMapper.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitemesh; import com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java index 9b86adb39d..f7b35de2d6 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitemesh; import com.opensymphony.module.sitemesh.RequestConstants; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsFreemarkerDecorator.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsFreemarkerDecorator.java index d767f187a8..174ae2a812 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsFreemarkerDecorator.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsFreemarkerDecorator.java @@ -1,7 +1,4 @@ -/** - * Adapts a SiteMesh 2 Freemarker {@link com.opensymphony.module.sitemesh.Decorator} to a - * SiteMesh 3 {@link com.opensymphony.sitemesh.Decorator}. - * +/* * 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 @@ -18,7 +15,6 @@ * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. - * @since SiteMesh 2 */ package org.apache.struts2.sitemesh; @@ -42,7 +38,10 @@ import java.io.IOException; /** + * Adapts a SiteMesh 2 Freemarker {@link com.opensymphony.module.sitemesh.Decorator} to a + * SiteMesh 3 {@link com.opensymphony.sitemesh.Decorator}. * Extends OldDecorator2NewStrutsDecorator to add Struts functionality for Freemarker + * @since SiteMesh 2 */ public class OldDecorator2NewStrutsFreemarkerDecorator extends OldDecorator2NewStrutsDecorator { private static final Logger LOG = LogManager.getLogger(OldDecorator2NewStrutsFreemarkerDecorator.class); diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsVelocityDecorator.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsVelocityDecorator.java index cb1ea1871a..90c1cda14a 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsVelocityDecorator.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsVelocityDecorator.java @@ -1,8 +1,4 @@ -/** - * Adapts a SiteMesh 2 Velocity {@link com.opensymphony.module.sitemesh.Decorator} - * to a SiteMesh 3 {@link com.opensymphony.sitemesh.Decorator}. - * - * +/* * 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 @@ -19,9 +15,7 @@ * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. - * @since SiteMesh 2 */ - package org.apache.struts2.sitemesh; import com.opensymphony.module.sitemesh.HTMLPage; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityDecoratorServlet.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityDecoratorServlet.java index 4b1b088a2e..7d3b7c90b9 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityDecoratorServlet.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityDecoratorServlet.java @@ -1,10 +1,4 @@ -/** - *

This is a SiteMesh Velocity view servlet.

- * - *

It overrides the SiteMesh servlet to rely on the - * Velocity Manager in Struts instead of creating it's - * own manager

- * +/* * 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 diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityMapper2DecoratorSelector.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityMapper2DecoratorSelector.java index 8159e4f43c..8bea9136a5 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityMapper2DecoratorSelector.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityMapper2DecoratorSelector.java @@ -1,6 +1,4 @@ /* - * $Id: NoneDecoratorMapper.java 651946 2008-04-27 13:41:38Z apetrelli $ - * * 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 @@ -18,18 +16,14 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.sitemesh; -import com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper; import com.opensymphony.module.sitemesh.Decorator; -import com.opensymphony.module.sitemesh.Page; import com.opensymphony.module.sitemesh.DecoratorMapper; import com.opensymphony.sitemesh.DecoratorSelector; import com.opensymphony.sitemesh.Content; import com.opensymphony.sitemesh.SiteMeshContext; import com.opensymphony.sitemesh.compatability.Content2HTMLPage; -import com.opensymphony.sitemesh.compatability.OldDecorator2NewDecorator; import com.opensymphony.sitemesh.webapp.SiteMeshWebAppContext; import com.opensymphony.sitemesh.webapp.decorator.NoDecorator; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityPageFilter.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityPageFilter.java index 8e00d1e919..a57c8ed47a 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityPageFilter.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/VelocityPageFilter.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingBeanFactory.java b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingBeanFactory.java index c577645006..77c2007e29 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingBeanFactory.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingBeanFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -30,7 +28,6 @@ import java.lang.reflect.Constructor; - /** * Same as DefaultListableBeanFactory, but it doesn't use the constructor and class cached in RootBeanDefinition */ diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingInstantiationStrategy.java b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingInstantiationStrategy.java index 7e060572dc..6a0fbc7d45 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingInstantiationStrategy.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingInstantiationStrategy.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingXMLWebApplicationContext.java b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingXMLWebApplicationContext.java index 847bbd2693..03fe9def3e 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingXMLWebApplicationContext.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/ClassReloadingXMLWebApplicationContext.java @@ -1,6 +1,4 @@ /* - * $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 diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java index b1b3ea1f48..8d6c229a71 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.spring; import com.opensymphony.xwork2.inject.Container; @@ -35,8 +32,6 @@ import javax.servlet.ServletContext; - - /** *

* Struts object factory that integrates with Spring. diff --git a/plugins/spring/src/test/java/org/apache/struts2/spring/StrutsSpringObjectFactoryTest.java b/plugins/spring/src/test/java/org/apache/struts2/spring/StrutsSpringObjectFactoryTest.java index 9141b02d66..5a3def2c98 100644 --- a/plugins/spring/src/test/java/org/apache/struts2/spring/StrutsSpringObjectFactoryTest.java +++ b/plugins/spring/src/test/java/org/apache/struts2/spring/StrutsSpringObjectFactoryTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.spring; import com.opensymphony.xwork2.inject.Container; diff --git a/plugins/testng/src/main/java/org/apache/struts2/StrutsTestCase.java b/plugins/testng/src/main/java/org/apache/struts2/StrutsTestCase.java index 5ff3de044a..193f142204 100644 --- a/plugins/testng/src/main/java/org/apache/struts2/StrutsTestCase.java +++ b/plugins/testng/src/main/java/org/apache/struts2/StrutsTestCase.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import java.util.Map; diff --git a/plugins/testng/src/test/java/org/apache/struts2/TestNGStrutsTestCaseTest.java b/plugins/testng/src/test/java/org/apache/struts2/TestNGStrutsTestCaseTest.java index 9c21ff814f..dd4ab6a7a9 100644 --- a/plugins/testng/src/test/java/org/apache/struts2/TestNGStrutsTestCaseTest.java +++ b/plugins/testng/src/test/java/org/apache/struts2/TestNGStrutsTestCaseTest.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2; import junit.framework.TestCase; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java index 1ef7357c70..04673f294b 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/I18NAttributeEvaluator.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java index 71538570ff..1f636f9ca5 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsApplicationResource.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import org.apache.tiles.request.locale.PostfixedApplicationResource; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsAttributeEvaluator.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsAttributeEvaluator.java index 77c6e028a1..b0cdb95baa 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsAttributeEvaluator.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsAttributeEvaluator.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsFreeMarkerAttributeRenderer.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsFreeMarkerAttributeRenderer.java index 5102eada42..cb6e0d403f 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsFreeMarkerAttributeRenderer.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsFreeMarkerAttributeRenderer.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java index d231786520..e279adcb40 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsPreparerFactory.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java index 99a259ddc0..41b93a38fc 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesContainerFactory.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.util.TextParseUtil; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesInitializer.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesInitializer.java index 1a69f8a5dd..5170003a40 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesInitializer.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesInitializer.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import org.apache.logging.log4j.LogManager; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesListener.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesListener.java index 62adf63aad..38e5065522 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesListener.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesListener.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import org.apache.logging.log4j.LogManager; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java index 90b9fa002e..3e6524fa4b 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsTilesLocaleResolver.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.ActionContext; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java index a7383b804c..63c0fdc7af 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java @@ -16,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.tiles; import com.opensymphony.xwork2.config.ConfigurationException; diff --git a/plugins/tiles/src/main/java/org/apache/struts2/views/tiles/TilesResult.java b/plugins/tiles/src/main/java/org/apache/struts2/views/tiles/TilesResult.java index ecbdceee3c..4c801f4aa6 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/views/tiles/TilesResult.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/views/tiles/TilesResult.java @@ -1,6 +1,4 @@ /* - * $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 @@ -18,7 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - package org.apache.struts2.views.tiles; import javax.servlet.ServletContext; From a03373022d343e98ef9cf71007d6ef8881ce3a37 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 18:40:42 +0200 Subject: [PATCH 0204/2288] Adds missing header with license --- .../WEB-INF/content/orders-deleteConfirm.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/content/orders-edit.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/content/orders-editNew.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/content/orders-index.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/content/orders-show.jsp | 20 +++++++++++++++++ .../struts2/showcase/person/package-info.java | 18 +++++++++++++++ .../validation/AjaxFormSubmitAction.java | 20 +++++++++++++++-- .../AjaxFormSubmitSuccessAction.java | 18 +++++++++++++++ .../myTheme/myAnotherTemplate.ftl | 20 +++++++++++++++++ .../actionchaining/actionChainingResult.jsp | 20 +++++++++++++++++ .../bean-validation/bean-validation.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/enterAddressInfo.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/enterOperations.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/enterPersonInfo.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/conversion/index.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/showAddressInfo.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/showOperations.jsp | 20 +++++++++++++++++ .../WEB-INF/conversion/showPersonInfo.jsp | 20 +++++++++++++++++ .../showcase/src/main/webapp/WEB-INF/date.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/decorators/main.jsp | 20 +++++++++++++++++ .../WEB-INF/empmanager/editEmployee.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/empmanager/editSkill.jsp | 20 +++++++++++++++++ .../WEB-INF/empmanager/listEmployees.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/empmanager/listSkills.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/filedownload/index.jsp | 20 +++++++++++++++++ .../fileupload/multipleUploadUsingArray.jsp | 20 +++++++++++++++++ .../fileupload/multipleUploadUsingList.jsp | 22 ++++++++++++++++++- .../WEB-INF/fileupload/upload-success.jsp | 22 ++++++++++++++++++- .../main/webapp/WEB-INF/fileupload/upload.jsp | 20 +++++++++++++++++ .../customFreemarkerManagerUsage.ftl | 20 +++++++++++++++++ .../main/webapp/WEB-INF/freemarker/index.jsp | 20 +++++++++++++++++ .../WEB-INF/freemarker/standardTags.ftl | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/hangman/blank.ftl | 20 +++++++++++++++++ .../webapp/WEB-INF/hangman/hangmanNonAjax.ftl | 20 +++++++++++++++++ .../hangman/updateCharacterAvailable.ftl | 20 +++++++++++++++++ .../WEB-INF/hangman/updateGuessLeft.ftl | 20 +++++++++++++++++ .../webapp/WEB-INF/hangman/updateScaffold.ftl | 20 +++++++++++++++++ .../WEB-INF/hangman/updateVocabCharacters.ftl | 20 +++++++++++++++++ .../showcase/src/main/webapp/WEB-INF/help.jsp | 20 +++++++++++++++++ .../WEB-INF/modelDriven/modelDriven.jsp | 20 +++++++++++++++++ .../WEB-INF/modelDriven/modelDrivenResult.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/person/edit-person.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/person/list-people.ftl | 20 +++++++++++++++++ .../main/webapp/WEB-INF/person/new-person.ftl | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/showcase.jsp | 22 ++++++++++++++++++- .../webapp/WEB-INF/sitemesh-decorator.tld | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/sitemesh-page.tld | 20 +++++++++++++++++ .../tags/non-ui/actionPrefix/actionPrefix.ftl | 20 +++++++++++++++++ .../actionPrefix/actionPrefixExample.ftl | 20 +++++++++++++++++ .../tags/non-ui/actionPrefix/methodPrefix.ftl | 20 +++++++++++++++++ .../tags/non-ui/actionPrefix/normalSubmit.ftl | 20 +++++++++++++++++ .../actionPrefix/redirectActionPrefix.ftl | 20 +++++++++++++++++ .../tags/non-ui/actionTag/includedPage.jsp | 20 +++++++++++++++++ .../tags/non-ui/actionTag/includedPage2.jsp | 21 +++++++++++++++++- .../tags/non-ui/actionTag/includedPage3.jsp | 21 +++++++++++++++++- .../non-ui/actionTag/showActionTagDemo.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/tags/non-ui/date.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/tags/non-ui/debug.jsp | 20 +++++++++++++++++ .../WEB-INF/tags/non-ui/ifTag/testIf.ftl | 20 +++++++++++++++++ .../WEB-INF/tags/non-ui/ifTag/testIf.jsp | 20 +++++++++++++++++ .../appendIteratorTagDemoResult.jsp | 20 +++++++++++++++++ .../iteratorGeneratorTagDemoResult.jsp | 20 +++++++++++++++++ .../mergeIteratorTagDemoResult.jsp | 20 +++++++++++++++++ .../iteratorTag/showAppendIteratorTagDemo.jsp | 20 +++++++++++++++++ .../showIteratorGeneratorTagDemo.jsp | 20 +++++++++++++++++ .../iteratorTag/showMergeIteratorTagDemo.jsp | 20 +++++++++++++++++ .../iteratorTag/subsetIteratorTagDemo.jsp | 20 +++++++++++++++++ .../subsetIteratorTagDemoResult.jsp | 20 +++++++++++++++++ .../tags/ui/actionTagExampleCalled.jsp | 20 +++++++++++++++++ .../tags/ui/actionTagExampleCalling.jsp | 20 +++++++++++++++++ .../WEB-INF/tags/ui/componentTagExample.jsp | 20 +++++++++++++++++ .../WEB-INF/tags/ui/dynamicTreeSelect.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/tags/ui/example.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/tags/ui/example.vm | 18 +++++++++++++++ .../WEB-INF/tags/ui/exampleSubmited.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/tags/ui/exampleSubmited.vm | 18 +++++++++++++++ .../tags/ui/lotsOfOptiontransferselect.jsp | 20 +++++++++++++++++ .../ui/lotsOfOptiontransferselectSubmit.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/tags/ui/moreSelects.jsp | 20 +++++++++++++++++ .../WEB-INF/tags/ui/moreSelectsSubmit.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/tiles/body.ftl | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/tiles/body.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/tiles/header.jsp | 20 +++++++++++++++++ .../WEB-INF/tiles/layout-annotations.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/tiles/layout.ftl | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/tiles/layout.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/token/doublePost.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/token/example1.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/token/example2.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/token/example3.jsp | 20 +++++++++++++++++ .../main/webapp/WEB-INF/token/example4.ftl | 20 +++++++++++++++++ .../webapp/WEB-INF/token/transferDone.jsp | 20 +++++++++++++++++ .../WEB-INF/validation/ajaxFormSubmit.jsp | 20 +++++++++++++++++ .../validation/ajaxFormSubmitSuccess.jsp | 20 +++++++++++++++++ .../clientSideValidationExample.jsp | 20 +++++++++++++++++ .../validation/fieldValidatorsExample.jsp | 22 ++++++++++++++++++- .../validation/nonFieldValidatorsExample.jsp | 22 ++++++++++++++++++- .../webapp/WEB-INF/validation/quiz-basic.jsp | 20 +++++++++++++++++ .../WEB-INF/validation/quiz-client-css.jsp | 20 +++++++++++++++++ .../webapp/WEB-INF/validation/quiz-client.jsp | 20 +++++++++++++++++ .../WEB-INF/validation/quiz-success.jsp | 20 +++++++++++++++++ .../storeErrorsAcrossRequestCancel.jsp | 20 +++++++++++++++++ .../storeErrorsAcrossRequestExample.jsp | 20 +++++++++++++++++ .../validation/storeErrorsAcrossRequestOk.jsp | 20 +++++++++++++++++ .../successClientSideValidationExample.jsp | 20 +++++++++++++++++ .../successFieldValidatorsExample.jsp | 20 +++++++++++++++++ .../successNonFieldValidatorsExample.jsp | 20 +++++++++++++++++ .../successVisitorValidatorsExample.jsp | 22 ++++++++++++++++++- .../validation/visitorValidatorsExample.jsp | 22 ++++++++++++++++++- .../src/main/webapp/WEB-INF/viewSource.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/wait/complete.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/wait/example1.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/wait/example2.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/wait/example3.jsp | 20 +++++++++++++++++ .../src/main/webapp/WEB-INF/wait/wait.jsp | 20 +++++++++++++++++ apps/showcase/src/main/webapp/WEB-INF/web.xml | 2 -- .../src/main/webapp/WEB-INF/xslt/index.jsp | 20 +++++++++++++++++ .../customTheme/ftlCustomTemplate.ftl | 2 +- .../customTheme/jspCustomTemplate.jsp | 20 +++++++++++++++++ apps/showcase/src/main/webapp/index.html | 20 +++++++++++++++++ .../src/main/webapp/person/index.html | 20 +++++++++++++++++ .../showcase/src/main/webapp/skill/index.html | 20 +++++++++++++++++ .../main/webapp/template/xhtml/mytemplate.jsp | 21 +++++++++++++++++- .../showcase/src/main/webapp/token/index.html | 20 +++++++++++++++++ apps/showcase/src/main/webapp/wait/index.html | 20 +++++++++++++++++ .../src/main/webapp/xslt/environment.xsl | 20 +++++++++++++++++ .../staticcontent/StaticContentTest.java | 18 +++++++++++++++ .../filedownload/FileDownloadActionTest.java | 18 +++++++++++++++ .../WEB-INF/component/no-annotation-foo.ftl | 20 +++++++++++++++++ .../WEB-INF/component/no-annotation.ftl | 20 +++++++++++++++++ .../struts2/compiler/MemoryClassLoader.java | 2 +- .../resources/META-INF/tags/JsonPlugin.tld | 20 +++++++++++++++++ .../StrutsTilesAnnotationProcessorTest.java | 18 +++++++++++++++ .../TilesTestActionMultipleAnnotations.java | 18 +++++++++++++++ .../TilesTestActionSingleAnnotation.java | 18 +++++++++++++++ ...lesTestActionSingleAnnotationAllEmpty.java | 18 +++++++++++++++ pom.xml | 7 +++++- 137 files changed, 2653 insertions(+), 17 deletions(-) diff --git a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-deleteConfirm.jsp b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-deleteConfirm.jsp index 98f3c39c14..8de2f8569a 100644 --- a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-deleteConfirm.jsp +++ b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-deleteConfirm.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-edit.jsp b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-edit.jsp index d41071972f..e576804aea 100644 --- a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-edit.jsp +++ b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-edit.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-editNew.jsp b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-editNew.jsp index 080d79a3ec..2d9af8faaf 100644 --- a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-editNew.jsp +++ b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-editNew.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-index.jsp b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-index.jsp index 466699a333..e96b57a334 100644 --- a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-index.jsp +++ b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-index.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-show.jsp b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-show.jsp index f4b6f047f9..cfe39411ad 100644 --- a/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-show.jsp +++ b/apps/rest-showcase/src/main/webapp/WEB-INF/content/orders-show.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/person/package-info.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/person/package-info.java index c21b7a84d5..ae66590618 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/person/package-info.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/person/package-info.java @@ -1,3 +1,21 @@ +/* + * 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. + */ @ParentPackage("person") @Namespace("/person") package org.apache.struts2.showcase.person; diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitAction.java index 50ff53f988..7ef478ab46 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.showcase.validation; import java.sql.Date; @@ -14,8 +32,6 @@ /** * - */ -/** * Example Action that shows how forms can be validated and submitted via AJAX * only. Form-submit-and-page-reload functionality of browsers is not used for * this action. diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitSuccessAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitSuccessAction.java index 6eca3fc68d..76866adc9f 100644 --- a/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitSuccessAction.java +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/validation/AjaxFormSubmitSuccessAction.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.showcase.validation; public class AjaxFormSubmitSuccessAction { diff --git a/apps/showcase/src/main/resources/myTemplateDir/myTheme/myAnotherTemplate.ftl b/apps/showcase/src/main/resources/myTemplateDir/myTheme/myAnotherTemplate.ftl index 544f44e60f..6ed9e3d93e 100644 --- a/apps/showcase/src/main/resources/myTemplateDir/myTheme/myAnotherTemplate.ftl +++ b/apps/showcase/src/main/resources/myTemplateDir/myTheme/myAnotherTemplate.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +-->

Freemarker Custom Template - diff --git a/apps/showcase/src/main/webapp/WEB-INF/actionchaining/actionChainingResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/actionchaining/actionChainingResult.jsp index b5696d6d9c..cf19dc1d87 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/actionchaining/actionChainingResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/actionchaining/actionChainingResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/bean-validation/bean-validation.jsp b/apps/showcase/src/main/webapp/WEB-INF/bean-validation/bean-validation.jsp index 2210b8496d..11d9c724c6 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/bean-validation/bean-validation.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/bean-validation/bean-validation.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterAddressInfo.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterAddressInfo.jsp index 04eed7aec6..676c169496 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterAddressInfo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterAddressInfo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterOperations.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterOperations.jsp index 803cd98905..d3e30033e9 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterOperations.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterOperations.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterPersonInfo.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterPersonInfo.jsp index 0459d1ae3d..acb5b03773 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/enterPersonInfo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/enterPersonInfo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/index.jsp index 04db6926ee..adf6569e35 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/index.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/index.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/showAddressInfo.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/showAddressInfo.jsp index a8c8a7fdc1..3d636cb363 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/showAddressInfo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/showAddressInfo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/showOperations.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/showOperations.jsp index ed8e226882..8e643539a2 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/showOperations.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/showOperations.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/conversion/showPersonInfo.jsp b/apps/showcase/src/main/webapp/WEB-INF/conversion/showPersonInfo.jsp index d4e6f7f508..d3fc85ccbf 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/conversion/showPersonInfo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/conversion/showPersonInfo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/date.jsp b/apps/showcase/src/main/webapp/WEB-INF/date.jsp index 400cd6d246..cde8627fe6 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/date.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/date.jsp @@ -1,2 +1,22 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp index 4c25c583be..727b28c5ba 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp @@ -1,3 +1,23 @@ + <%@ page import="org.apache.struts2.result.StrutsResultSupport" %> <%@ page diff --git a/apps/showcase/src/main/webapp/WEB-INF/empmanager/editEmployee.jsp b/apps/showcase/src/main/webapp/WEB-INF/empmanager/editEmployee.jsp index 7518395edb..49f41b1775 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/empmanager/editEmployee.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/empmanager/editEmployee.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/empmanager/editSkill.jsp b/apps/showcase/src/main/webapp/WEB-INF/empmanager/editSkill.jsp index 71f9f83934..d4ce386776 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/empmanager/editSkill.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/empmanager/editSkill.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/empmanager/listEmployees.jsp b/apps/showcase/src/main/webapp/WEB-INF/empmanager/listEmployees.jsp index 79006e46b1..f06f7a3657 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/empmanager/listEmployees.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/empmanager/listEmployees.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/empmanager/listSkills.jsp b/apps/showcase/src/main/webapp/WEB-INF/empmanager/listSkills.jsp index 9fd2ff36aa..a1c5ac3609 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/empmanager/listSkills.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/empmanager/listSkills.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/filedownload/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/filedownload/index.jsp index fa330892ce..98f7e37e4d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/filedownload/index.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/filedownload/index.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingArray.jsp b/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingArray.jsp index 0756fa2047..7da56ba35c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingArray.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingArray.jsp @@ -1,3 +1,23 @@ + <%@ page language="java" contentType="text/html; charset=UTF-8" diff --git a/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingList.jsp b/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingList.jsp index 8d8aacf8f9..a7e227364d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingList.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/fileupload/multipleUploadUsingList.jsp @@ -1,4 +1,24 @@ -<%@ page + +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> diff --git a/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload-success.jsp b/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload-success.jsp index 18520178f7..d50b61be0e 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload-success.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload-success.jsp @@ -1,4 +1,24 @@ -<%@ page + +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> diff --git a/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload.jsp b/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload.jsp index ce7ce0cce1..a806af5590 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/fileupload/upload.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/freemarker/customFreemarkerManagerUsage.ftl b/apps/showcase/src/main/webapp/WEB-INF/freemarker/customFreemarkerManagerUsage.ftl index e44513d50f..05f8d530c4 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/freemarker/customFreemarkerManagerUsage.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/freemarker/customFreemarkerManagerUsage.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Freemarker - CustomFreemarkerManager Usage diff --git a/apps/showcase/src/main/webapp/WEB-INF/freemarker/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/freemarker/index.jsp index 360c6cb77e..948684ed9f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/freemarker/index.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/freemarker/index.jsp @@ -1,3 +1,23 @@ + <% response.sendRedirect("/freemarker/customFreemarkerManagerDemo.action"); %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/freemarker/standardTags.ftl b/apps/showcase/src/main/webapp/WEB-INF/freemarker/standardTags.ftl index 907bec05c7..e4a14593d1 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/freemarker/standardTags.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/freemarker/standardTags.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Freemarker - Standard Struts Freemarker Tags diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/blank.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/blank.ftl index e69de29bb2..2ffa2ec5d1 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/blank.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/blank.ftl @@ -0,0 +1,20 @@ +<#-- +/* + * 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. + */ +--> \ No newline at end of file diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/hangmanNonAjax.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/hangmanNonAjax.ftl index b3d112d764..2571d271ab 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/hangmanNonAjax.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/hangmanNonAjax.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Hangman diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateCharacterAvailable.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateCharacterAvailable.ftl index b5b000d27b..326b6b006a 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateCharacterAvailable.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateCharacterAvailable.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <#if hangman.gameEnded()> <@s.set var="winImageName" value="%{'you-win.png'}" /> <@s.set var="looseImageName" value="%{'you-lose.png'}" /> diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateGuessLeft.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateGuessLeft.ftl index 22b6904004..07a969eae4 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateGuessLeft.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateGuessLeft.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <#if (hangman.guessLeft() >= 0)> <@s.set var="guessLeftImageName" value="%{'Chalkboard_'+hangman.guessLeft()+'.png'}" /> <@s.url var="url" value="%{'/hangman/images/'+#guessLeftImageName}" /> diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateScaffold.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateScaffold.ftl index 24fdcffba0..ccbc551c9e 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateScaffold.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateScaffold.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <@s.set var="scaffoldImageName" value="%{'scaffold_'+hangman.guessLeft()+'.png'}" /> <@s.url var="url" value="%{'/hangman/images/'+#scaffoldImageName}" /> " border="0"/> diff --git a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateVocabCharacters.ftl b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateVocabCharacters.ftl index 2abb554d0f..0df728d290 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/hangman/updateVocabCharacters.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/hangman/updateVocabCharacters.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <#if hangman.gameEnded()> <@s.iterator var="currentCharacter" value="%{hangman.vocab.inCharacters()}" stat="stat"> <@s.url var="url" value="%{'/hangman/images/Chalkboard_'+#currentCharacter.toString()+'.png'}" /> diff --git a/apps/showcase/src/main/webapp/WEB-INF/help.jsp b/apps/showcase/src/main/webapp/WEB-INF/help.jsp index 4e43366370..96146bfd1f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/help.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/help.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDriven.jsp b/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDriven.jsp index 39018c5bf8..075073ccf6 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDriven.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDriven.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDrivenResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDrivenResult.jsp index 6d8e288b75..97bc75ef3a 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDrivenResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/modelDriven/modelDrivenResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/person/edit-person.jsp b/apps/showcase/src/main/webapp/WEB-INF/person/edit-person.jsp index 468848375b..a301c69c15 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/person/edit-person.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/person/edit-person.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/person/list-people.ftl b/apps/showcase/src/main/webapp/WEB-INF/person/list-people.ftl index 082134b9a3..abb2ae449f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/person/list-people.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/person/list-people.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Person Manager Example - All People diff --git a/apps/showcase/src/main/webapp/WEB-INF/person/new-person.ftl b/apps/showcase/src/main/webapp/WEB-INF/person/new-person.ftl index 25d2dbc69e..07a66d4a6f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/person/new-person.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/person/new-person.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Person Manager Example - New Person diff --git a/apps/showcase/src/main/webapp/WEB-INF/showcase.jsp b/apps/showcase/src/main/webapp/WEB-INF/showcase.jsp index adb38464d2..dbbbe75b6a 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/showcase.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/showcase.jsp @@ -1,4 +1,24 @@ -<%-- + +<%-- showcase.jsp @version $Date$ $Id$ diff --git a/apps/showcase/src/main/webapp/WEB-INF/sitemesh-decorator.tld b/apps/showcase/src/main/webapp/WEB-INF/sitemesh-decorator.tld index 18f525c6ea..399ac22f02 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/sitemesh-decorator.tld +++ b/apps/showcase/src/main/webapp/WEB-INF/sitemesh-decorator.tld @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/webapp/WEB-INF/sitemesh-page.tld b/apps/showcase/src/main/webapp/WEB-INF/sitemesh-page.tld index 797ec5d618..1dcb0352df 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/sitemesh-page.tld +++ b/apps/showcase/src/main/webapp/WEB-INF/sitemesh-page.tld @@ -1,4 +1,24 @@ + diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefix.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefix.ftl index 0faa3a9e83..e546632a9d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefix.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefix.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non UI Tags - Action Prefix (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefixExample.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefixExample.ftl index cc09ac8256..98b0a92324 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefixExample.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/actionPrefixExample.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non UI Tags - Action Prefix (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/methodPrefix.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/methodPrefix.ftl index 744f7fa3fb..b4d723aa0c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/methodPrefix.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/methodPrefix.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non UI Tags - Action Prefix (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/normalSubmit.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/normalSubmit.ftl index dd15b0827f..a1431f71ee 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/normalSubmit.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/normalSubmit.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non UI Tags - Action Prefix (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/redirectActionPrefix.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/redirectActionPrefix.ftl index 4dd06d7d12..ed06fb5958 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/redirectActionPrefix.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionPrefix/redirectActionPrefix.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non UI Tags - Action Prefix (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage.jsp index abfa2535b0..486d6e0074 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage.jsp @@ -1 +1,21 @@ +

This is INCLUDED by the action tag

diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage2.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage2.jsp index 6cdc04055a..50c6e0881b 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage2.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage2.jsp @@ -1,2 +1,21 @@ - +

This is INCLUDED by the action tag (Page2)

diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage3.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage3.jsp index 4ebbcc744f..fa7071393e 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage3.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/includedPage3.jsp @@ -1,2 +1,21 @@ - +

This is INCLUDED by the action tag (Page3)

diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/showActionTagDemo.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/showActionTagDemo.jsp index 1ddda5a5cf..d81ce94018 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/showActionTagDemo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/actionTag/showActionTagDemo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/date.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/date.jsp index 315f12a29d..570a46ef20 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/date.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/date.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/debug.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/debug.jsp index 0294533304..1629bf3ab5 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/debug.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/debug.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.ftl b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.ftl index 340df6f457..88cc62a55f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Non Ui Tag - Test If Tag (Freemarker) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.jsp index 6fa99cb0a1..f9fe499971 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/ifTag/testIf.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/appendIteratorTagDemoResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/appendIteratorTagDemoResult.jsp index 0076d9f15e..c2c7ff3dd4 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/appendIteratorTagDemoResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/appendIteratorTagDemoResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/iteratorGeneratorTagDemoResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/iteratorGeneratorTagDemoResult.jsp index 49f74f5ce2..f4a31d897a 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/iteratorGeneratorTagDemoResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/iteratorGeneratorTagDemoResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/mergeIteratorTagDemoResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/mergeIteratorTagDemoResult.jsp index c79a232332..1798da4457 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/mergeIteratorTagDemoResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/mergeIteratorTagDemoResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showAppendIteratorTagDemo.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showAppendIteratorTagDemo.jsp index 5120e01907..f625216e6d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showAppendIteratorTagDemo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showAppendIteratorTagDemo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showIteratorGeneratorTagDemo.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showIteratorGeneratorTagDemo.jsp index 720b38ddb1..079c2fa476 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showIteratorGeneratorTagDemo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showIteratorGeneratorTagDemo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showMergeIteratorTagDemo.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showMergeIteratorTagDemo.jsp index 692dd9f65c..52ab3330ea 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showMergeIteratorTagDemo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/showMergeIteratorTagDemo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemo.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemo.jsp index 7cffab1f14..37836430d2 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemo.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemo.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemoResult.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemoResult.jsp index 47bbbefc72..e704e577d8 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemoResult.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/non-ui/iteratorTag/subsetIteratorTagDemoResult.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalled.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalled.jsp index c97dc675a5..214ad6b92a 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalled.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalled.jsp @@ -1,2 +1,22 @@ + <%@taglib prefix="s" uri="/struts-tags" %> This text is from the called class \ No newline at end of file diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalling.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalling.jsp index 762a0d490b..07a4ae48c6 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalling.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/actionTagExampleCalling.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/componentTagExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/componentTagExample.jsp index 232f9e5a5b..a905715b64 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/componentTagExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/componentTagExample.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/dynamicTreeSelect.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/dynamicTreeSelect.jsp index 2c1cd2e07b..c779da6423 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/dynamicTreeSelect.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/dynamicTreeSelect.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> Id:
diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.jsp index 847b794a9d..f69d823d4c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.vm b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.vm index cd6978ea0f..1e52a6df11 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.vm +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/example.vm @@ -1,3 +1,21 @@ +#* +* 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. +*# Struts2 Showcase - UI Tags Example (Velocity) diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.jsp index cba7fc2bab..75560ba785 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.vm b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.vm index 9f69944f45..f0f03699af 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.vm +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/exampleSubmited.vm @@ -1,3 +1,21 @@ +#* +* 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. +*# Struts2 Showcase - UI Tags Example (Velocity) - Example Submited diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselect.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselect.jsp index 5ce4cd454e..93a15cb49f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselect.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselect.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselectSubmit.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselectSubmit.jsp index 0756978a88..b1399671b3 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselectSubmit.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/lotsOfOptiontransferselectSubmit.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelects.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelects.jsp index e1aa12574f..5a7314ab49 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelects.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelects.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelectsSubmit.jsp b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelectsSubmit.jsp index c17a2d7642..3d04b61e3b 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelectsSubmit.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tags/ui/moreSelectsSubmit.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/body.ftl b/apps/showcase/src/main/webapp/WEB-INF/tiles/body.ftl index 73b2559ee9..3ca1f9704d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/body.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/body.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +-->
diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/body.jsp b/apps/showcase/src/main/webapp/WEB-INF/tiles/body.jsp index 855a89688b..f8a6c15ac3 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/body.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/body.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %>
diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/header.jsp b/apps/showcase/src/main/webapp/WEB-INF/tiles/header.jsp index d98f0010a9..283d062767 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/header.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/header.jsp @@ -1,3 +1,23 @@ + diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout-annotations.jsp b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout-annotations.jsp index 5609cb1a16..bd6542c192 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout-annotations.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout-annotations.jsp @@ -1,3 +1,23 @@ + <%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %> <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.ftl b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.ftl index 9ce5915b56..387e3c930d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> <#assign tiles=JspTaglibs["http://tiles.apache.org/tags-tiles"]> <@tiles.importAttribute name="title" scope="request"/> diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.jsp b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.jsp index 964d014a84..0079036420 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles/layout.jsp @@ -1,3 +1,23 @@ + <%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %> <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp index 66439b4d4a..62d442010d 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/example1.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/example1.jsp index b4e3093df6..f52fbc0fd9 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/example1.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/example1.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/example2.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/example2.jsp index 93b1f5c07b..48b9d0a7d2 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/example2.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/example2.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/example3.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/example3.jsp index 9bfd1b66bc..d333852bb0 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/example3.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/example3.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/example4.ftl b/apps/showcase/src/main/webapp/WEB-INF/token/example4.ftl index 56ea4649ba..46a1ec0649 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/example4.ftl +++ b/apps/showcase/src/main/webapp/WEB-INF/token/example4.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Struts2 Showcase - Token Examples - Example 4 diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp index b1606e003a..17ba62dfd8 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmit.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmit.jsp index da07ff1085..fbfd233d00 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmit.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmit.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmitSuccess.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmitSuccess.jsp index f8a07312b2..f7d1cdcecd 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmitSuccess.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/ajaxFormSubmitSuccess.jsp @@ -1,3 +1,23 @@ + <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/clientSideValidationExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/clientSideValidationExample.jsp index 0ac640b72e..6f2d9c0079 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/clientSideValidationExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/clientSideValidationExample.jsp @@ -1,3 +1,23 @@ + <%-- fieldValidatorExample.jsp diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/fieldValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/fieldValidatorsExample.jsp index 4e92f0d359..198c97d770 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/fieldValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/fieldValidatorsExample.jsp @@ -1,4 +1,24 @@ -<%-- + +<%-- fieldValidatorExample.jsp @author tm_jee diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/nonFieldValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/nonFieldValidatorsExample.jsp index fbee116065..df55c568a0 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/nonFieldValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/nonFieldValidatorsExample.jsp @@ -1,4 +1,24 @@ -<%-- + +<%-- nonFieldValidatorsExample.jsp @author tm_jee diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-basic.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-basic.jsp index d64a478ede..6c6beaa41c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-basic.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-basic.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client-css.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client-css.jsp index 2224f6e56f..2f45a6f1e7 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client-css.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client-css.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client.jsp index b08cc742e0..78a2d91159 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-client.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-success.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-success.jsp index 3bbb162b9f..376edd7374 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-success.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/quiz-success.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestCancel.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestCancel.jsp index cbd70a50cf..c98b835e1c 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestCancel.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestCancel.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp index e33d954183..1e68126247 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestOk.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestOk.jsp index 6cc4918e61..d35725dbfb 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestOk.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/storeErrorsAcrossRequestOk.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/successClientSideValidationExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/successClientSideValidationExample.jsp index dc683e9dc8..7eda5ab4d1 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/successClientSideValidationExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/successClientSideValidationExample.jsp @@ -1,3 +1,23 @@ + <%-- successFieldValidatorsExample.jsp diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/successFieldValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/successFieldValidatorsExample.jsp index 28358b2a5d..62135b1a24 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/successFieldValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/successFieldValidatorsExample.jsp @@ -1,3 +1,23 @@ + <%-- successFieldValidatorsExample.jsp diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/successNonFieldValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/successNonFieldValidatorsExample.jsp index e397c757f6..3ce13450b2 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/successNonFieldValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/successNonFieldValidatorsExample.jsp @@ -1,3 +1,23 @@ + <%-- successNonFieldValidatorsExample.jsp diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/successVisitorValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/successVisitorValidatorsExample.jsp index 06c1bb762e..dd7affe2da 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/successVisitorValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/successVisitorValidatorsExample.jsp @@ -1,4 +1,24 @@ -<%-- + +<%-- successVisitorValidatorsExample.jsp @author tm_jee diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/visitorValidatorsExample.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/visitorValidatorsExample.jsp index 0e2f5ae4ba..eda81b8a6f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/visitorValidatorsExample.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/visitorValidatorsExample.jsp @@ -1,4 +1,24 @@ -<%-- + +<%-- visitorValidatorsExample.jsp @author tm_jee diff --git a/apps/showcase/src/main/webapp/WEB-INF/viewSource.jsp b/apps/showcase/src/main/webapp/WEB-INF/viewSource.jsp index cca0b0526b..5623c54a54 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/viewSource.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/viewSource.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp index 2b672d2719..74c97c74c5 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/example1.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/example1.jsp index b8d1702c27..2a0adaa410 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/example1.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/example1.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/example2.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/example2.jsp index e951ddc2b6..270ff0aad6 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/example2.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/example2.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/example3.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/example3.jsp index 35210574b8..4549b62873 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/example3.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/example3.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp index 309649df4c..e4b4679686 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp @@ -1,3 +1,23 @@ + <%@ taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/WEB-INF/web.xml b/apps/showcase/src/main/webapp/WEB-INF/web.xml index d597101c38..204ed6f7d9 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/web.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/web.xml @@ -1,6 +1,5 @@ <%@taglib prefix="s" uri="/struts-tags" %> diff --git a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl index 668d45b77a..de812362c8 100644 --- a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl +++ b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl @@ -1,4 +1,4 @@ - diff --git a/apps/showcase/src/main/webapp/person/index.html b/apps/showcase/src/main/webapp/person/index.html index bc92398268..67eafbd674 100644 --- a/apps/showcase/src/main/webapp/person/index.html +++ b/apps/showcase/src/main/webapp/person/index.html @@ -1,3 +1,23 @@ + diff --git a/apps/showcase/src/main/webapp/skill/index.html b/apps/showcase/src/main/webapp/skill/index.html index fd100664c9..e873e20ae8 100644 --- a/apps/showcase/src/main/webapp/skill/index.html +++ b/apps/showcase/src/main/webapp/skill/index.html @@ -1,3 +1,23 @@ + diff --git a/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp b/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp index 7ebb967817..fbd6b9a8c3 100644 --- a/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp +++ b/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp @@ -1,4 +1,23 @@ - + <%@taglib prefix="s" uri="/struts-tags" %>
diff --git a/apps/showcase/src/main/webapp/token/index.html b/apps/showcase/src/main/webapp/token/index.html index b224dd7caa..9ff2bc6c88 100644 --- a/apps/showcase/src/main/webapp/token/index.html +++ b/apps/showcase/src/main/webapp/token/index.html @@ -1,3 +1,23 @@ + Struts2 Showcase - Token Examples (double post) diff --git a/apps/showcase/src/main/webapp/wait/index.html b/apps/showcase/src/main/webapp/wait/index.html index 08cb153f78..6d18878a9f 100644 --- a/apps/showcase/src/main/webapp/wait/index.html +++ b/apps/showcase/src/main/webapp/wait/index.html @@ -1,3 +1,23 @@ + Struts2 Showcase - Execute and Wait Examples diff --git a/apps/showcase/src/main/webapp/xslt/environment.xsl b/apps/showcase/src/main/webapp/xslt/environment.xsl index 87ae897e23..49ee1936fc 100644 --- a/apps/showcase/src/main/webapp/xslt/environment.xsl +++ b/apps/showcase/src/main/webapp/xslt/environment.xsl @@ -1,3 +1,23 @@ + diff --git a/apps/showcase/src/test/java/it/org/apache/struts2/showcase/staticcontent/StaticContentTest.java b/apps/showcase/src/test/java/it/org/apache/struts2/showcase/staticcontent/StaticContentTest.java index a6393b87b0..ca88fa9c23 100644 --- a/apps/showcase/src/test/java/it/org/apache/struts2/showcase/staticcontent/StaticContentTest.java +++ b/apps/showcase/src/test/java/it/org/apache/struts2/showcase/staticcontent/StaticContentTest.java @@ -1,3 +1,21 @@ +/* + * 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 it.org.apache.struts2.showcase.staticcontent; import it.org.apache.struts2.showcase.ITBaseTest; diff --git a/apps/showcase/src/test/java/org/apache/struts2/showcase/filedownload/FileDownloadActionTest.java b/apps/showcase/src/test/java/org/apache/struts2/showcase/filedownload/FileDownloadActionTest.java index cf8fbe3bcb..03ff90a23d 100644 --- a/apps/showcase/src/test/java/org/apache/struts2/showcase/filedownload/FileDownloadActionTest.java +++ b/apps/showcase/src/test/java/org/apache/struts2/showcase/filedownload/FileDownloadActionTest.java @@ -1,3 +1,21 @@ +/* + * 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 org.apache.struts2.showcase.filedownload; import org.junit.Before; diff --git a/plugins/convention/src/test/resources/WEB-INF/component/no-annotation-foo.ftl b/plugins/convention/src/test/resources/WEB-INF/component/no-annotation-foo.ftl index e69de29bb2..1626c3cd92 100644 --- a/plugins/convention/src/test/resources/WEB-INF/component/no-annotation-foo.ftl +++ b/plugins/convention/src/test/resources/WEB-INF/component/no-annotation-foo.ftl @@ -0,0 +1,20 @@ +<#-- +/* + * 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. + */ +--> diff --git a/plugins/convention/src/test/resources/WEB-INF/component/no-annotation.ftl b/plugins/convention/src/test/resources/WEB-INF/component/no-annotation.ftl index e69de29bb2..1626c3cd92 100644 --- a/plugins/convention/src/test/resources/WEB-INF/component/no-annotation.ftl +++ b/plugins/convention/src/test/resources/WEB-INF/component/no-annotation.ftl @@ -0,0 +1,20 @@ +<#-- +/* + * 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. + */ +--> diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java index 740749420f..06c52300d4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/compiler/MemoryClassLoader.java @@ -49,4 +49,4 @@ protected Class findClass(String name) throws public void addMemoryJavaFileObject(String jsp, MemoryJavaFileObject memoryJavaFileObject) { cachedObjects.put(jsp, memoryJavaFileObject); } -} \ No newline at end of file +} diff --git a/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld b/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld index 8c2c10dc45..5f6dba6da8 100644 --- a/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld +++ b/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld @@ -1,4 +1,24 @@ + src/test/resources/org/apache/struts2/interceptor/validation/* src/site/resources/tags/** src/main/resources/*LICENSE.txt - src/test/resources/com/opensymphony/xwork2/somefile.txt + src/test/resources/**/*.txt + src/main/webapp/**/*.css + src/main/webapp/**/*.map + src/main/webapp/**/*.js + src/main/webapp/**/*.svg + src/main/webapp/**/*.txt From 885ad89d4945e0201400327523098e4624ff8619 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 18:55:42 +0200 Subject: [PATCH 0205/2288] Adds missing header with license and fixes tests --- .../apache/struts2/el/parser/ELParser.java | 18 +++++++++++++++++ .../struts2/el/parser/ELParserConstants.java | 18 +++++++++++++++++ .../el/parser/ELParserTokenManager.java | 18 +++++++++++++++++ .../el/parser/ELParserTreeConstants.java | 18 +++++++++++++++++ .../struts2/el/parser/JJTELParserState.java | 18 +++++++++++++++++ .../apache/struts2/EmbeddedJSPResultTest.java | 6 +++--- .../resources/org/apache/struts2/beans.jsp | 20 +++++++++++++++++++ .../resources/org/apache/struts2/broken0.jsp | 20 +++++++++++++++++++ .../resources/org/apache/struts2/dont-use.jsp | 20 +++++++++++++++++++ .../test/resources/org/apache/struts2/el.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/includes0.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/includes1.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/includes2.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/includes3.jsp | 20 +++++++++++++++++++ .../resources/org/apache/struts2/jstl.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/printParam.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/scriptlet.jsp | 20 +++++++++++++++++++ .../resources/org/apache/struts2/simple0.jsp | 20 +++++++++++++++++++ .../org/apache/struts2/sub/simple0.jsp | 20 +++++++++++++++++++ .../resources/org/apache/struts2/tag0.jsp | 20 +++++++++++++++++++ 20 files changed, 373 insertions(+), 3 deletions(-) diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParser.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParser.java index d8dd5dd2de..56e31c49b4 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParser.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParser.java @@ -1,3 +1,21 @@ +/* + * 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. + */ /* Generated By:JJTree&JavaCC: Do not edit this line. ELParser.java */ package org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserConstants.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserConstants.java index 5beda71a36..0cfd7fcc20 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserConstants.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserConstants.java @@ -1,3 +1,21 @@ +/* + * 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. + */ /* Generated By:JJTree&JavaCC: Do not edit this line. ELParserConstants.java */ package org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTokenManager.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTokenManager.java index e3ea7c54b2..dac4ac03af 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTokenManager.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTokenManager.java @@ -1,3 +1,21 @@ +/* + * 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. + */ /* Generated By:JJTree&JavaCC: Do not edit this line. ELParserTokenManager.java */ package org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTreeConstants.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTreeConstants.java index 139c543346..7a1654cc73 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTreeConstants.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/ELParserTreeConstants.java @@ -1,3 +1,21 @@ +/* + * 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. + */ /* Generated By:JavaCC: Do not edit this line. ELParserTreeConstants.java Version 4.1 */ package org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/JJTELParserState.java b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/JJTELParserState.java index a26fa7bef9..7ac8db2a33 100644 --- a/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/JJTELParserState.java +++ b/plugins/embeddedjsp/src/main/java/org/apache/struts2/el/parser/JJTELParserState.java @@ -1,3 +1,21 @@ +/* + * 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. + */ /* Generated By:JavaCC: Do not edit this line. JJTELParserState.java Version 4.1 */ package org.apache.struts2.el.parser; diff --git a/plugins/embeddedjsp/src/test/java/org/apache/struts2/EmbeddedJSPResultTest.java b/plugins/embeddedjsp/src/test/java/org/apache/struts2/EmbeddedJSPResultTest.java index 10cb89252f..ec65539e1c 100644 --- a/plugins/embeddedjsp/src/test/java/org/apache/struts2/EmbeddedJSPResultTest.java +++ b/plugins/embeddedjsp/src/test/java/org/apache/struts2/EmbeddedJSPResultTest.java @@ -106,7 +106,7 @@ public void testSimple() throws Exception { result.setLocation("org/apache/struts2/simple0.jsp"); result.execute(null); - assertEquals("hello", response.getContentAsString()); + assertEquals("hello", response.getContentAsString().trim()); } //ok i give up..i don't know why this doesn't work from maven @@ -122,14 +122,14 @@ public void testEL() throws Exception { result.setLocation("org/apache/struts2/el.jsp"); result.execute(null); - assertEquals("somethingelseText", response.getContentAsString()); + assertEquals("somethingelseText", response.getContentAsString().trim()); } public void testAbsolutePath() throws Exception { result.setLocation("/org/apache/struts2/simple0.jsp"); result.execute(null); - assertEquals("hello", response.getContentAsString()); + assertEquals("hello", response.getContentAsString().trim()); } public void testTag0() throws Exception { diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/beans.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/beans.jsp index 6d5222d1df..d9f8d57ced 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/beans.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/beans.jsp @@ -1,2 +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. +*/ +--%> diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/broken0.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/broken0.jsp index b4bf816be4..5404610a64 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/broken0.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/broken0.jsp @@ -1,2 +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. +*/ +--%> \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/dont-use.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/dont-use.jsp index d6404b8f6f..607f21bef9 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/dont-use.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/dont-use.jsp @@ -1 +1,21 @@ +<%-- +/* +* 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. +*/ +--%> dont \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/el.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/el.jsp index 9ea11949e6..7669f6aa2f 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/el.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/el.jsp @@ -1 +1,21 @@ +<%-- +/* +* 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. +*/ +--%> ${something}Text \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes0.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes0.jsp index d660643d21..55ecc53277 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes0.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes0.jsp @@ -1,2 +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. +*/ +--%> Test \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes1.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes1.jsp index b08963fb78..84cb237d20 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes1.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes1.jsp @@ -1,2 +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. +*/ +--%> Test \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes2.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes2.jsp index 442f5b3347..ea7598f6a9 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes2.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes2.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes3.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes3.jsp index 1ff0f54fab..e94367248b 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes3.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/includes3.jsp @@ -1,2 +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. +*/ +--%> <%@ include file="org/apache/struts2/simple0.jsp" %> Test diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/jstl.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/jstl.jsp index 82c7e61522..be09e9653b 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/jstl.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/jstl.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/printParam.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/printParam.jsp index 118875218a..aaed87f0b9 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/printParam.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/printParam.jsp @@ -1 +1,21 @@ +<%-- +/* +* 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. +*/ +--%> <%= request.getParameter("username") %> diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/scriptlet.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/scriptlet.jsp index 92807521a9..dd71df9d46 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/scriptlet.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/scriptlet.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@ page import="org.apache.commons.lang3.StringUtils" %> <% out.write(StringUtils.removeEnd("Say no to scriptlets/", "/")); diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/simple0.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/simple0.jsp index b6fc4c620b..109b5a41fd 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/simple0.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/simple0.jsp @@ -1 +1,21 @@ +<%-- +/* +* 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. +*/ +--%> hello \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/sub/simple0.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/sub/simple0.jsp index 3de0f365ba..4b8f9a2e94 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/sub/simple0.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/sub/simple0.jsp @@ -1 +1,21 @@ +<%-- +/* +* 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. +*/ +--%> sub \ No newline at end of file diff --git a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/tag0.jsp b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/tag0.jsp index 55e2b05dbb..a57bcbdc71 100644 --- a/plugins/embeddedjsp/src/test/resources/org/apache/struts2/tag0.jsp +++ b/plugins/embeddedjsp/src/test/resources/org/apache/struts2/tag0.jsp @@ -1,3 +1,23 @@ +<%-- +/* +* 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. +*/ +--%> <%@ taglib prefix="r" uri="http://jakarta.apache.org/taglibs/request-1.0" %> This session is not secure. From 38a1434114059c45731730717af4788f83e5348a Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 19:24:45 +0200 Subject: [PATCH 0206/2288] Adds missing header with license and fixes tests --- .../resources/osgi/admin/commandResult.ftl | 20 +++++++++++++++++++ .../src/main/resources/osgi/admin/shell.ftl | 4 +--- .../main/resources/osgi/admin/viewBundle.ftl | 20 +++++++++++++++++++ .../main/resources/osgi/admin/viewBundles.ftl | 20 +++++++++++++++++++ .../java/actions/osgi/HelloWorldAction.java | 20 +++++++++++++++++++ .../main/resources/content/osgi/bundles.ftl | 20 +++++++++++++++++++ .../content/osgi/hello-convention.ftl | 20 +++++++++++++++++++ .../src/main/resources/content/osgi/hello.ftl | 20 +++++++++++++++++++ .../src/main/resources/content/osgi/hello.vm | 18 +++++++++++++++++ .../src/main/resources/content/osgi/home.ftl | 20 +++++++++++++++++++ plugins/embeddedjsp/pom.xml | 8 ++++---- .../views/java/simple/DateTextFieldTest.java | 20 +++++++++++++++++++ pom.xml | 9 ++++++--- 13 files changed, 209 insertions(+), 10 deletions(-) diff --git a/bundles/admin/src/main/resources/osgi/admin/commandResult.ftl b/bundles/admin/src/main/resources/osgi/admin/commandResult.ftl index 44dd1b58a1..9d37f6bfd9 100644 --- a/bundles/admin/src/main/resources/osgi/admin/commandResult.ftl +++ b/bundles/admin/src/main/resources/osgi/admin/commandResult.ftl @@ -1 +1,21 @@ +<#-- +/* + * 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. + */ +--> ${output!} diff --git a/bundles/admin/src/main/resources/osgi/admin/shell.ftl b/bundles/admin/src/main/resources/osgi/admin/shell.ftl index 8c788d6b6a..3c92ea5f61 100644 --- a/bundles/admin/src/main/resources/osgi/admin/shell.ftl +++ b/bundles/admin/src/main/resources/osgi/admin/shell.ftl @@ -1,7 +1,5 @@ - ${bundle.symbolicName!} diff --git a/bundles/admin/src/main/resources/osgi/admin/viewBundles.ftl b/bundles/admin/src/main/resources/osgi/admin/viewBundles.ftl index 96ee51b19f..23033829bd 100644 --- a/bundles/admin/src/main/resources/osgi/admin/viewBundles.ftl +++ b/bundles/admin/src/main/resources/osgi/admin/viewBundles.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> OSGi Bundles diff --git a/bundles/demo/src/main/java/actions/osgi/HelloWorldAction.java b/bundles/demo/src/main/java/actions/osgi/HelloWorldAction.java index cfaa2797a2..b2b8a16e01 100644 --- a/bundles/demo/src/main/java/actions/osgi/HelloWorldAction.java +++ b/bundles/demo/src/main/java/actions/osgi/HelloWorldAction.java @@ -1,3 +1,23 @@ +/* + * $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 actions.osgi; import com.opensymphony.xwork2.ActionSupport; diff --git a/bundles/demo/src/main/resources/content/osgi/bundles.ftl b/bundles/demo/src/main/resources/content/osgi/bundles.ftl index e9decadf04..7b2006efb5 100644 --- a/bundles/demo/src/main/resources/content/osgi/bundles.ftl +++ b/bundles/demo/src/main/resources/content/osgi/bundles.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> OSGi integration diff --git a/bundles/demo/src/main/resources/content/osgi/hello-convention.ftl b/bundles/demo/src/main/resources/content/osgi/hello-convention.ftl index e47d160cea..7dde413ce4 100644 --- a/bundles/demo/src/main/resources/content/osgi/hello-convention.ftl +++ b/bundles/demo/src/main/resources/content/osgi/hello-convention.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Action mapped by the Convention plugin diff --git a/bundles/demo/src/main/resources/content/osgi/hello.ftl b/bundles/demo/src/main/resources/content/osgi/hello.ftl index fec234335b..343319b8c7 100644 --- a/bundles/demo/src/main/resources/content/osgi/hello.ftl +++ b/bundles/demo/src/main/resources/content/osgi/hello.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> Action mapped by the XML configurationn diff --git a/bundles/demo/src/main/resources/content/osgi/hello.vm b/bundles/demo/src/main/resources/content/osgi/hello.vm index 40c1ff0298..ed95682d17 100644 --- a/bundles/demo/src/main/resources/content/osgi/hello.vm +++ b/bundles/demo/src/main/resources/content/osgi/hello.vm @@ -1,3 +1,21 @@ +#* +* 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. +*# Action mapped by the XML configurationn diff --git a/bundles/demo/src/main/resources/content/osgi/home.ftl b/bundles/demo/src/main/resources/content/osgi/home.ftl index 089c89e85a..b6645fd521 100644 --- a/bundles/demo/src/main/resources/content/osgi/home.ftl +++ b/bundles/demo/src/main/resources/content/osgi/home.ftl @@ -1,3 +1,23 @@ +<#-- +/* + * 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. + */ +--> OSGi Demo Bundle diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 599e0686cb..efa5313116 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -1,4 +1,4 @@ - + - + 4.0.0 org.apache.struts @@ -101,12 +102,11 @@ target/test-classes/jsps.jar - never - UTF-8 + UTF-8 diff --git a/plugins/javatemplates/src/test/java/org/apache/struts2/views/java/simple/DateTextFieldTest.java b/plugins/javatemplates/src/test/java/org/apache/struts2/views/java/simple/DateTextFieldTest.java index 7c03a65c9c..fb37eebce5 100644 --- a/plugins/javatemplates/src/test/java/org/apache/struts2/views/java/simple/DateTextFieldTest.java +++ b/plugins/javatemplates/src/test/java/org/apache/struts2/views/java/simple/DateTextFieldTest.java @@ -1,3 +1,23 @@ +/* + * $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 org.apache.struts2.views.java.simple; import org.apache.struts2.components.DateTextField; diff --git a/pom.xml b/pom.xml index f1c4801b7e..96f722b00a 100644 --- a/pom.xml +++ b/pom.xml @@ -235,10 +235,8 @@ src/** - src/test/resources/org/apache/struts2/views/jsp/ui/* src/main/resources/org/apache/struts2/static/domTT.js - src/test/resources/org/apache/struts2/interceptor/validation/* - src/site/resources/tags/** + src/site/resources/tags/**/*.html src/main/resources/*LICENSE.txt src/test/resources/**/*.txt src/main/webapp/**/*.css @@ -246,6 +244,10 @@ src/main/webapp/**/*.js src/main/webapp/**/*.svg src/main/webapp/**/*.txt + src/main/resources/**/sitegraph-usage.txt + src/main/resources/static/css/**/*.css + src/main/resources/static/js/**/*.js + src/main/resources/docs.cfg @@ -353,6 +355,7 @@ org.apache.rat apache-rat-plugin + 0.12 From f351e8582926f6395628617110d6515f4405134e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 21 Oct 2017 19:29:51 +0200 Subject: [PATCH 0207/2288] Uses property instead of hardcoding path --- plugins/embeddedjsp/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index efa5313116..b7d32d6b60 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -100,7 +100,7 @@ 2.19.1 - target/test-classes/jsps.jar + ${project.build.testOutputDirectory}/jsps.jar From 1323c225ab159e0d2693c7e4a5f9edd3051e877f Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:48:34 +0200 Subject: [PATCH 0208/2288] Fixes encoding --- .../struts2/showcase/action/EmployeeAction_de.properties | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction_de.properties b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction_de.properties index b0fc8dfeaf..2be81dee85 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction_de.properties +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/EmployeeAction_de.properties @@ -21,7 +21,7 @@ employee.firstName=Vorname employee.lastName=Nachname employee.description=Beschreibung -employee.id.required=ID mu� angegeben werden -employee.lastName.required=Nachname wird ben�tigt -employee.birthDate.required=Geburtsdatum wird ben�tigt -employee.backtolist=Zur�ck zur Mitarbeiterliste +employee.id.required=ID muß angegeben werden +employee.lastName.required=Nachname wird benötigt +employee.birthDate.required=Geburtsdatum wird benötigt +employee.backtolist=Zurück zur Mitarbeiterliste From 88a29b3faae296f807bec7eeb18a27b3bdadaf4a Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:49:28 +0200 Subject: [PATCH 0209/2288] Fixes encoding --- .../apache/struts2/showcase/action/SkillAction_de.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction_de.properties b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction_de.properties index 00840a080e..ba6896b4fe 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction_de.properties +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/action/SkillAction_de.properties @@ -21,4 +21,4 @@ skill.name=Name skill.description=Beschreibung skill.name.required=Name muss angegeben werden -skill.backtolist=Zur�ck zur Kenntnis Liste +skill.backtolist=Zurück zur Kenntnis Liste From d267180735ba0c9b60ff4717eb6b8d0855d3ca7d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:50:56 +0200 Subject: [PATCH 0210/2288] Puts back JavaDoc reference --- .../main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java index 55672a9e34..956f63ad36 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java @@ -26,6 +26,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +/** + * @see Anchor + */ public class AnchorTag extends AbstractClosingTag { private static final long serialVersionUID = -1034616578492431113L; From 3a6f48517d4de9a39e2117216b4b66115cd6bc10 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:52:59 +0200 Subject: [PATCH 0211/2288] Removes unneeded header --- .../org/apache/struts2/static/resource.css | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/core/src/test/resources/org/apache/struts2/static/resource.css b/core/src/test/resources/org/apache/struts2/static/resource.css index 7d6fde5bff..b4d8ec7ca0 100644 --- a/core/src/test/resources/org/apache/struts2/static/resource.css +++ b/core/src/test/resources/org/apache/struts2/static/resource.css @@ -1,19 +1 @@ -/* - * 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. - */ heya! \ No newline at end of file From 4a1d42e3d55fcf4198c288734bdc4966006afc58 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:54:18 +0200 Subject: [PATCH 0212/2288] Fixes encoding --- .../resources/LocalStrings_es.properties | 382 +++++++++--------- 1 file changed, 189 insertions(+), 193 deletions(-) diff --git a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_es.properties b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_es.properties index 5a1597d277..63d75d6536 100644 --- a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_es.properties +++ b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_es.properties @@ -1,28 +1,24 @@ +# 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 # -# 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. +# 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. # Default localized string information # Localized para Locale es_ES -jsp.error.bad.servlet.engine=�Versi�n incorrecta del motor servlet! +jsp.error.bad.servlet.engine=¡Versión incorrecta del motor servlet! jsp.error.no.scratch.dir=El motor JSP no tiene configurado un directorio de trabajo.\ -\n A�ada \"jsp.initparams=scratchdir=\" \ +\n Añada \"jsp.initparams=scratchdir=\" \ \n en el fichero servlets.properties para este contexto. jsp.error.bad.scratch.dir=El directorio de trabajo especificado: {0} no es utilizable. jsp.message.scratch.dir.is=El directorio de trabajo para el motor JSP es: {0} @@ -40,63 +36,63 @@ jsp.error.not.impl.plugin=Error Interno: plugin no implementado jsp.error.not.impl.forward=Error Interno: forward no implementado jsp.error.not.impl.include=Error Interno: include no implementado jsp.error.unavailable=JSP ha sido marcado como no disponible -jsp.error.usebean.missing.attribute=useBean: falta atributo id o est� mal digitado +jsp.error.usebean.missing.attribute=useBean: falta atributo id o está mal digitado jsp.error.usebean.missing.type=useBean ({0}): Se debe de especificar atributo class o type: jsp.error.usebean.duplicate=useBean: Nombre de bean duplicado: {0} -jsp.error.usebean.prohibited.as.session=No puedo usar como bean de sesi�n {0} ya que est� prohibido \ +jsp.error.usebean.prohibited.as.session=No puedo usar como bean de sesión {0} ya que está prohibido \ por directiva jsp definida previamente: jsp.error.usebean.not.both=useBean: No puede especificar ambos atributos class y beanName: jsp.error.usebean.bad.type.cast=useBean ({0}): Tipo ({1}) no es asignable desde clase ({2}) jsp.error.invalid.scope=Valor ilegal de atributo \'scope\': {0} (debe de ser uno de \"page\", \"request\", \"session\", o \"application\") jsp.error.classname=No pude determinar el nombre de clase desde el fichero .class jsp.warning.bad.type=Aviso: tipo incorrecto en archivo .class -jsp.error.data.file.write=Error mientras escrib�a el archivo de datos -jsp.error.page.invalid.buffer=Directiva Page: medida de buffer inv�lida -jsp.error.page.conflict.contenttype=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'contentType' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.data.file.write=Error mientras escribía el archivo de datos +jsp.error.page.invalid.buffer=Directiva Page: medida de buffer inválida +jsp.error.page.conflict.contenttype=Directiva Page: es ilegal tener múltiples ocurrencias de 'contentType' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.contenttype=Directiva Page: valor incorrecto para contentType -jsp.error.page.conflict.session=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'session' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.session=Directiva Page: es ilegal tener múltiples ocurrencias de 'session' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.session=Directiva Page: valor incorrecto para session -jsp.error.page.conflict.buffer=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'buffer'con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.buffer=Directiva Page: es ilegal tener múltiples ocurrencias de 'buffer'con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.buffer=Directiva Page: valor incorrecto para buffer -jsp.error.page.conflict.autoflush=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'autoFlush' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.autoflush=Directiva Page: es ilegal tener múltiples ocurrencias de 'autoFlush' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.autoflush==Directiva Page: valor incorrecto para autoFlush -jsp.error.page.conflict.isthreadsafe=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'isThreadSafe' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.isthreadsafe=Directiva Page: es ilegal tener múltiples ocurrencias de 'isThreadSafe' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.isthreadsafe==Directiva Page: valor incorrecto para isThreadSafe -jsp.error.page.conflict.info=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'info' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.info=Directiva Page: es ilegal tener múltiples ocurrencias de 'info' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.info==Directiva Page: valor incorrecto para info -jsp.error.page.conflict.iserrorpage=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'isErrorPage' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.iserrorpage=Directiva Page: es ilegal tener múltiples ocurrencias de 'isErrorPage' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.invalid.iserrorpage==Directiva Page: valor incorrecto para isErrorPage -jsp.error.page.conflict.errorpage=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'errorPage' con valores distintos (viejo: {0}, nuevo: {1}) -jsp.error.page.conflict.language=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'language' con valores distintos (viejo: {0}, nuevo: {1}) -jsp.error.tag.conflict.language=Directiva Tag: es ilegal tener m�ltiples ocurrencias de 'language' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.errorpage=Directiva Page: es ilegal tener múltiples ocurrencias de 'errorPage' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.language=Directiva Page: es ilegal tener múltiples ocurrencias de 'language' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.tag.conflict.language=Directiva Tag: es ilegal tener múltiples ocurrencias de 'language' con valores distintos (viejo: {0}, nuevo: {1}) jsp.error.page.language.nonjava=Directiva Page: atributo language incorrecto jsp.error.tag.language.nonjava=Directiva Tag: atributo language incorrecto jsp.error.page.defafterusar.language=Directiva Page: No puede definir language tras un scriptlet jsp.error.page.nomapping.language=Directiva Page: No hay mapeado para language: -jsp.error.page.conflict.extends=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'extends' con valores distintos (viejo: {0}, nuevo: {1}) -jsp.error.page.conflict.iselignored=Directiva Page: es ilegal tener m�ltiples ocurrencias de 'isELIgnored' con valores distintos (viejo: {0}, nuevo: {1}) -jsp.error.tag.conflict.iselignored=Directiva Tag: es ilegal tener m�ltiples ocurrencias de 'isELIgnored' con valores distintos (viejo: {0}, nuevo: {1}) -jsp.error.page.invalid.iselignored=Directiva Page: valor inv�lido para isELIgnored +jsp.error.page.conflict.extends=Directiva Page: es ilegal tener múltiples ocurrencias de 'extends' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.conflict.iselignored=Directiva Page: es ilegal tener múltiples ocurrencias de 'isELIgnored' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.tag.conflict.iselignored=Directiva Tag: es ilegal tener múltiples ocurrencias de 'isELIgnored' con valores distintos (viejo: {0}, nuevo: {1}) +jsp.error.page.invalid.iselignored=Directiva Page: valor inválido para isELIgnored jsp.error.tag.invalid.iselignored=Directiva Tag: valor incorrecto para isELIgnored -jsp.error.page.multi.pageencoding=La directiva Page no debe de tener m�ltiples ocurrencias de pageencoding -jsp.error.tag.conflict.attr=Directiva Tag: es ilegal tener m�ltiples ocurrencias del atributo \"{0}\" con valores distintos (viejo: {1}, nuevo: {2}) -jsp.error.tag.multi.pageencoding=La directiva Tag no debe de tener m�ltiples ocurrencias de pageencoding -jsp.error.page.bad_b_and_a_combo=Directiva Page: Combinaci�n ilegal de buffer=\"none\" y autoFlush=\"false\" +jsp.error.page.multi.pageencoding=La directiva Page no debe de tener múltiples ocurrencias de pageencoding +jsp.error.tag.conflict.attr=Directiva Tag: es ilegal tener múltiples ocurrencias del atributo \"{0}\" con valores distintos (viejo: {1}, nuevo: {2}) +jsp.error.tag.multi.pageencoding=La directiva Tag no debe de tener múltiples ocurrencias de pageencoding +jsp.error.page.bad_b_and_a_combo=Directiva Page: Combinación ilegal de buffer=\"none\" y autoFlush=\"false\" jsp.error.not.impl.taglib=Error Interno: Tag extensions no implementado jsp.error.include.missing.file=No tiene argumento de nombre de fichero -jsp.error.include.bad.file=Argumento de nombre de fichero no v�lido +jsp.error.include.bad.file=Argumento de nombre de fichero no válido jsp.error.include.exception=No se puede incluir {0} jsp.error.stream.closed=Stream cerrado -jsp.error.invalid.forward=Tag forward no v�lido -jsp.error.unknownException=�Error no caturado!. Deber�as de considerar el poner una p�gina de error para avisar de los errores m�s elegantemente -jsp.error.invalid.directive=Directiva no v�lida +jsp.error.invalid.forward=Tag forward no válido +jsp.error.unknownException=¡Error no caturado!. Deberías de considerar el poner una página de error para avisar de los errores más elegantemente +jsp.error.invalid.directive=Directiva no válida jsp.error.directive.istagfile=La Directiva {0} no puede usarse en archivo de tag -jsp.error.directive.isnottagfile=La Directiva {0} s�lo se puede usar en un archivo de tag +jsp.error.directive.isnottagfile=La Directiva {0} sólo se puede usar en un archivo de tag jsp.error.tagfile.tld.name=El atributo \"name\" de la directiva tag tiene un valor {0} mientras que el tag \"name\" del elemento \"tag-file\" en el TLD es {1} -jsp.error.action.istagfile=La acci�n {0} no se puede usar en un archivo tag -jsp.error.action.isnottagfile=La acci�n {0} s�lo se puede usar en archivos tag +jsp.error.action.istagfile=La acción {0} no se puede usar en un archivo tag +jsp.error.action.isnottagfile=La acción {0} sólo se puede usar en archivos tag jsp.error.unterminated=Tag {0} no terminado -jsp.error.usebean.notinsamefile=El Tag useBean debe de empezar y terminar en el mismo archivo f�sico +jsp.error.usebean.notinsamefile=El Tag useBean debe de empezar y terminar en el mismo archivo físico jsp.error.loadclass.taghandler=No se puede cargar la clase {0} jsp.error.unable.compile=No se puede compilar la clase para JSP jsp.error.unable.load=No se puede cargar la clase para JSP @@ -107,40 +103,40 @@ jsp.error.invalid.expression="{0}" contiene expresiones incorrectas: {1} jsp.error.invalid.attribute={0}: Atributo incorrecto, {1} jsp.error.usebean.class.notfound=Clase: {0} no hallada jsp.error.file.cannot.read=No se puede leer el archivo: {0} -jsp.error.file.already.registered=El archivo {0} ya se ha visto, �podr�a ser un include recursivo? +jsp.error.file.already.registered=El archivo {0} ya se ha visto, ¿podría ser un include recursivo? jsp.error.file.not.registered=Archivo {0} not visto en include jsp.error.quotes.unterminated=Comillas no terminadas -jsp.error.attr.quoted=El valor del atributo deber�a ir entre comillas +jsp.error.attr.quoted=El valor del atributo debería ir entre comillas jsp.error.attr.novalue=Atributo {0} no tiene valor jsp.error.tag.attr.unterminated=Lista de atributos del tag no terminada jsp.error.param.noname=No hay nombre en el tag PARAM jsp.error.param.novalue=No hay valor en el tag PARAM -jsp.error.beans.nullbean=Se ha intentado una operaci�n de bean en un objeto nulo +jsp.error.beans.nullbean=Se ha intentado una operación de bean en un objeto nulo jsp.error.beans.nobeaninfo=No se puede encontrar BeanInfo para el bean ''{0}'' seguramente la clase no existe -jsp.error.beans.introspection=Una excepci�n ha tenido lugar mientras se le�a el m�todo de lectura de la propiedad ''{0}'' en un bean del tipo ''{1}'':\n{2} -jsp.error.beans.nomethod=No puedo encontrar un m�todo para leer la propiedad ''{0}'' en un bean del tipo ''{1}'' -jsp.error.beans.nomethod.setproperty=No puedo encontrar un m�todo para escribir la propiedad ''{0}'' en un bean del tipo ''{2}'' -jsp.error.beans.noproperty=No puedo encontrar informaci�n de la propiedad ''{0}'' en un bean del tipo ''{1}'' +jsp.error.beans.introspection=Una excepción ha tenido lugar mientras se leía el método de lectura de la propiedad ''{0}'' en un bean del tipo ''{1}'':\n{2} +jsp.error.beans.nomethod=No puedo encontrar un método para leer la propiedad ''{0}'' en un bean del tipo ''{1}'' +jsp.error.beans.nomethod.setproperty=No puedo encontrar un método para escribir la propiedad ''{0}'' en un bean del tipo ''{2}'' +jsp.error.beans.noproperty=No puedo encontrar información de la propiedad ''{0}'' en un bean del tipo ''{1}'' jsp.error.beans.setproperty.noindexset=No puedo poner la propiedad indexada -jsp.error.include.tag=Tag jsp:include no v�lido +jsp.error.include.tag=Tag jsp:include no válido jsp.error.include.noflush=jsp:include necesita tener \"flush=true\" -jsp.error.include.badflush=jsp:include page=\"...\" flush=\"true\" es la �nica combinaci�n v�lida en JSP 1.0 -jsp.error.attempt_to_clear_flushed_buffer=Error: Se ha intentado limpiar un buffer que ya hab�a sido escrito +jsp.error.include.badflush=jsp:include page=\"...\" flush=\"true\" es la única combinación válida en JSP 1.0 +jsp.error.attempt_to_clear_flushed_buffer=Error: Se ha intentado limpiar un buffer que ya había sido escrito jsp.error.overflow=Error:Buffer de JSP desbordado -jsp.error.paramexpected=El tag \"param\" era esperado con los atributos \"name\" y \"value\" despu�s del tag \"params\". -jsp.error.param.invalidUse=La acci�n jsp:param no debe de ser usada fuera de los elementos jsp:include, jsp:forward o jsp:params +jsp.error.paramexpected=El tag \"param\" era esperado con los atributos \"name\" y \"value\" después del tag \"params\". +jsp.error.param.invalidUse=La acción jsp:param no debe de ser usada fuera de los elementos jsp:include, jsp:forward o jsp:params jsp.error.params.invalidUse=jsp:params debe de ser un hijo directo de jsp:plugin jsp.error.fallback.invalidUse=jsp:fallback debe de ser un hijo directo de jsp:plugin -jsp.error.namedAttribute.invalidUse=jsp:attribute debe de ser el subelemento de una acci�n est�ndar o de cliente -jsp.error.jspbody.invalidUse=jsp:body debe de ser el subelemento de una acci�n est�ndar o de cliente +jsp.error.namedAttribute.invalidUse=jsp:attribute debe de ser el subelemento de una acción estándar o de cliente +jsp.error.jspbody.invalidUse=jsp:body debe de ser el subelemento de una acción estándar o de cliente jsp.error.closeindividualparam=El tag param necesita ser cerrado con \"/>\" jsp.error.closeparams=El tag param necesita ser cerrado con /params jsp.error.params.emptyBody=jsp:params debe de contener al menos un jsp:param anidado jsp.error.params.illegalChild=jsp:params no debe de contener elementos anidados que no sean jsp:param jsp.error.plugin.notype=Tipo no declarado en jsp:plugin jsp.error.plugin.badtype=Valor ilegal para atributo 'type' en jsp:plugin: debe de ser 'bean' o 'applet' -jsp.error.plugin.nocode=C�digo no declarado en jsp:plugin -jsp.error.ise_on_clear=Es ilegal usar clear() cuando el tama�o del buffer es cero +jsp.error.plugin.nocode=Código no declarado en jsp:plugin +jsp.error.ise_on_clear=Es ilegal usar clear() cuando el tamaño del buffer es cero jsp.error.setproperty.beanNotFound=setProperty: Bean {0} no encontrado jsp.error.getproperty.beanNotFound=getProperty: Bean {0} no encontrado jsp.error.setproperty.ClassNotFound=setProperty: clase {0} no encontrada @@ -149,21 +145,21 @@ jsp.error.setproperty.ClassNotFound=setProperty: clase {0} no encontrada jsp.error.setproperty.invalidSyantax=setProperty: No puede haber un valor no nulo cuando se ha especificado property=* jsp.error.setproperty.beanInfoNotFound=setproperty: beanInfo para bean {0} no encontrado jsp.error.setproperty.paramOrValue=setProperty: O param o value pueden estar presentes -jsp.error.setproperty.arrayVal=setProperty: No puede escribir en la propiedad de array {0} a trav�s de una valor de cadena literal -jsp.warning.keepgen=Aviso: valor incorrecto para el initParam keepgen. Se usar� el valor por defecto de \"false\" -jsp.warning.xpoweredBy=Aviso: valor incorrecto para el initParam xpoweredBy. Se usar� el valor por defecto de \"false\" -jsp.warning.enablePooling=Aviso: valor incorrecto para el initParam enablePooling. Se usar� el valor por defecto de \"true\" -jsp.warning.invalidTagPoolSize=Aviso: valor incorrecto para el par�metro init llamado tagPoolSize. Se usar� la medida por defecto de {0} -jsp.warning.mappedFile=Aviso: valor incorrecto para el initParam mappedFile. Se usar� el valor por defecto de \"false\" -jsp.warning.sendErrToClient=Aviso: valor incorrecto para el initParam sendErrToClient. Se usar� el valor por defecto de \"false\" -jsp.warning.classDebugInfo=Aviso: valor incorrecto para el initParam classdebuginfo. Se usar� el valor por defecto de \"false\" -jsp.warning.checkInterval=Aviso: valor incorrecto para el initParam checkInterval. Se usar� el valor por defecto de \"300\" segundos -jsp.warning.development=Aviso: valor incorrecto para el initParam development. Se usar� el valor por defecto de \"true\" -jsp.warning.fork=Aviso: valor incorrecto para el initParam fork. Se usar� el valor por defecto de \"true\" -jsp.warning.reloading=Aviso: valor incorrecto para el initParam reloading. Se usar� el valor por defecto de \"true\" -jsp.warning.dumpSmap=Aviso: valor incorrecto para el initParam dumpSmap. Se usar� el valor por defecto de \"false\" -jsp.warning.genchararray=Aviso: valor incorrecto para el initParam genStrAsCharArray. Se usar� el valor por defecto de \"false\" -jsp.warning.suppressSmap=Aviso: valor incorrecto para el initParam suppressSmap. Se usar� el valor por defecto de \"false\" +jsp.error.setproperty.arrayVal=setProperty: No puede escribir en la propiedad de array {0} a través de una valor de cadena literal +jsp.warning.keepgen=Aviso: valor incorrecto para el initParam keepgen. Se usará el valor por defecto de \"false\" +jsp.warning.xpoweredBy=Aviso: valor incorrecto para el initParam xpoweredBy. Se usará el valor por defecto de \"false\" +jsp.warning.enablePooling=Aviso: valor incorrecto para el initParam enablePooling. Se usará el valor por defecto de \"true\" +jsp.warning.invalidTagPoolSize=Aviso: valor incorrecto para el parámetro init llamado tagPoolSize. Se usará la medida por defecto de {0} +jsp.warning.mappedFile=Aviso: valor incorrecto para el initParam mappedFile. Se usará el valor por defecto de \"false\" +jsp.warning.sendErrToClient=Aviso: valor incorrecto para el initParam sendErrToClient. Se usará el valor por defecto de \"false\" +jsp.warning.classDebugInfo=Aviso: valor incorrecto para el initParam classdebuginfo. Se usará el valor por defecto de \"false\" +jsp.warning.checkInterval=Aviso: valor incorrecto para el initParam checkInterval. Se usará el valor por defecto de \"300\" segundos +jsp.warning.development=Aviso: valor incorrecto para el initParam development. Se usará el valor por defecto de \"true\" +jsp.warning.fork=Aviso: valor incorrecto para el initParam fork. Se usará el valor por defecto de \"true\" +jsp.warning.reloading=Aviso: valor incorrecto para el initParam reloading. Se usará el valor por defecto de \"true\" +jsp.warning.dumpSmap=Aviso: valor incorrecto para el initParam dumpSmap. Se usará el valor por defecto de \"false\" +jsp.warning.genchararray=Aviso: valor incorrecto para el initParam genStrAsCharArray. Se usará el valor por defecto de \"false\" +jsp.warning.suppressSmap=Aviso: valor incorrecto para el initParam suppressSmap. Se usará el valor por defecto de \"false\" jsp.error.badtaglib=No se puede abrir la biblioteca de tags {0}: {1} jsp.error.badGetReader=No se puede crear un reader cuando el stream no tiene buffer jsp.warning.unknown.element.in.taglib=Elemento desconocido ({0}) en taglib @@ -174,12 +170,12 @@ jsp.warning.unknown.element.in.variable=Elemento desconocido ({0}) en variable jsp.warning.unknown.element.in.validator=Elemento desconocido ({0}) en validator jsp.warning.unknown.element.in.initParam=Elemento desconocido ({0}) en init-param de validator jsp.warning.unknown.element.in.function=Elemento desconocido ({0}) en function -jsp.error.more.than.one.taglib=M�s de una biblioteca de tags en el TLD: {0} +jsp.error.more.than.one.taglib=Más de una biblioteca de tags en el TLD: {0} jsp.error.teiclass.instantiation=No se puede cargar la clase TagExtraInfo llamada: {0} -jsp.error.non_null_tei_and_var_subelems=Tag {0} tiene uno o m�s subelementos variable y una clase TagExtraInfo que devuelve una o m�s VariableInfo -jsp.error.parse.error.in.TLD=Error de an�lisis en el descriptor de biblioteca de tags: {0} +jsp.error.non_null_tei_and_var_subelems=Tag {0} tiene uno o más subelementos variable y una clase TagExtraInfo que devuelve una o más VariableInfo +jsp.error.parse.error.in.TLD=Error de análisis en el descriptor de biblioteca de tags: {0} jsp.error.unable.to.open.TLD=No se puede abrir el descriptor de biblioteca de tags: {0} -jsp.buffer.size.zero=Tama�o de buffer <= 0 +jsp.buffer.size.zero=Tamaño de buffer <= 0 jsp.error.file.not.found=Archivo JSP \"{0}\" no encontrado jsp.message.copyinguri=Copiando {0} en {1} jsp.message.htmlcomment=\nQuitando comentario: \t{0} @@ -189,12 +185,12 @@ jsp.message.package_name_is=El Nombre del Package es: {0} jsp.message.class_name_is=El Nombre de la clase es: {0} jsp.message.java_file_name_is=El Nombre del Archivo Java es: {0} jsp.message.class_file_name_is=El Nombre del Archivo de clase es: {0} -jsp.message.accepted=Acept� {0} en {1} -jsp.message.adding_jar=A�adiendo jar {0} a mi classpath +jsp.message.accepted=Aceptó {0} en {1} +jsp.message.adding_jar=Añadiendo jar {0} a mi classpath jsp.message.compiling_with=Compilado con: {0} jsp.message.template_text=texto plantilla jsp.error.missing_attribute=De acuerdo con el TLD el atributo {0} es obligatorio para el tag {1} -jsp.error.bad_attribute=El atributo {0} no es v�lido seg�n el TLD especificado +jsp.error.bad_attribute=El atributo {0} no es válido según el TLD especificado jsp.error.tld.unable_to_read=Imposible de leer TLD \"{1}\" desde archivo JAR \"{0}\": {2} jsp.error.tld.unable_to_get_jar=Imposible obtener recurso JAR \"{0}\" conteniendo TLD: {1} jsp.error.tld.missing_jar=Falta recurso JAR \"{0}\" conteniendo TLD @@ -202,39 +198,39 @@ jsp.error.webxml_not_found=No puedo localizar web.xml jsp.cmd_line.usage=Uso: jsptoservlet [-dd ] [-keepgenerated] jsp.message.cp_is=Classpath {0} es: {1} jsp.error.unable.to_load_taghandler_class=No se puede cargar clase manejadora {0} del tag a causa de {1} -jsp.error.unable.to_find_method=No se puede encontrar el m�todo de escritura para el atributo: {0} +jsp.error.unable.to_find_method=No se puede encontrar el método de escritura para el atributo: {0} jsp.error.unable.to_convert_string=No pude convertir un String a {0} para atributo {1} -jsp.error.unable.to_introspect=No se puede hacer introspecci�n en manejador de tag clase: {0} a causa de {1} +jsp.error.unable.to_introspect=No se puede hacer introspección en manejador de tag clase: {0} a causa de {1} jsp.error.bad_tag=No existe el tag {0} en la biblioteca importada con prefijo {1} jsp.error.xml.bad_tag=No se ha definido el tag \"{0}\" en la biblioteca tag asociada con uri \"{1}\" -jsp.error.bad_string_Character=No puede extraer un Character desde un array de tama�o cero -jsp.error.bad_string_char=No puede extraer un char desde un array de tama�o cero -jsp.warning.compiler.class.cantcreate=No puedo crear una instancia de la clase especificada {0} de plugin del compilador debido a {1}. Se usar� el compilador Java de Sun. -jsp.warning.compiler.class.notfound=No puedo encontrar una instancia de la clase {0} de plugin de compilador. Se usar� el compilador del Java de Sun. -jsp.warning.compiler.path.notfound=Trayectoria del compilador especificado {0} no encontrada. Se usar� el PATH del sistema. -jsp.error.jspc.uriroot_not_dir=La opci�n -uriroot debe de especificar un directorio ya existente -jsp.error.jspc.missingTarget=Falta target: Debe de especificar -webapp o -uriroot o una o m�s p�ginas JSP +jsp.error.bad_string_Character=No puede extraer un Character desde un array de tamaño cero +jsp.error.bad_string_char=No puede extraer un char desde un array de tamaño cero +jsp.warning.compiler.class.cantcreate=No puedo crear una instancia de la clase especificada {0} de plugin del compilador debido a {1}. Se usará el compilador Java de Sun. +jsp.warning.compiler.class.notfound=No puedo encontrar una instancia de la clase {0} de plugin de compilador. Se usará el compilador del Java de Sun. +jsp.warning.compiler.path.notfound=Trayectoria del compilador especificado {0} no encontrada. Se usará el PATH del sistema. +jsp.error.jspc.uriroot_not_dir=La opción -uriroot debe de especificar un directorio ya existente +jsp.error.jspc.missingTarget=Falta target: Debe de especificar -webapp o -uriroot o una o más páginas JSP jsp.error.jspc.no_uriroot=No se ha especificado uriroot y no puede ser localizado en los archivos JSP especificados jspc.implicit.uriRoot=uriRoot implicitamente puesto a "{0}" jspc.usage=Uso: jspc [--] \n\ donde son:\n\ \ -webapp Un directorio conteniendo una web-app. Todas las\n\ -\ p�ginas jsp ser�n compiladas recursivamente\n\ -o cualquier n�mero de\n\ -\ Un Archivo para ser interpretado como una p�gina jsp\n\ +\ páginas jsp serán compiladas recursivamente\n\ +o cualquier número de\n\ +\ Un Archivo para ser interpretado como una página jsp\n\ y donde incluyen:\n\ \ -help Muestra este mensaje de ayuda\n\ \ -v Modo detallado\n\ \ -d Directorio de salida\n\ -\ -l Muestra el nombre de la p�gina JSP al ocurrir un fallo\n\ -\ -s Muestra el nombre de la p�gina JSP al tener �xito\n\ +\ -l Muestra el nombre de la página JSP al ocurrir un fallo\n\ +\ -s Muestra el nombre de la página JSP al tener éxito\n\ \ -p Nombre del package objetivo\n\ \ (por defecto org.apache.jsp)\n\ \ -c Nombre de la clase objetivo\n\ -\ (s�lo se aplica a la primera p�gina JSP)\n\ -\ -mapped Genera llamadas separadas a write() para cada l�nea de\n\ +\ (sólo se aplica a la primera página JSP)\n\ +\ -mapped Genera llamadas separadas a write() para cada línea de\n\ \ HTML en el JSP\n\ -\ -die[#] Genera un c�digo de retorno de error (#) en errores\n\ +\ -die[#] Genera un código de retorno de error (#) en errores\n\ \ fatales. (por defecto 1).\n\ \ -uribase El directorio uri de donde deben de partir las\n\ \ compilaciones. (por defecto "/")\n\ @@ -244,7 +240,7 @@ y donde incluyen:\n\ \ -webxml Crea un web.xml completo en el archivo.\n\ \ -ieplugin Java Plugin classid para Internet Explorer\n\ \ -classpath Pasa por alto la propiedad de sistema java.class.path\n\ -\ -xpoweredBy A�ade cabecera de respuesta X-Powered-By\n\ +\ -xpoweredBy Añade cabecera de respuesta X-Powered-By\n\ \ -trimSpaces Trim spaces in template text between actions, directives\n\ \ -javaEncoding Set the encoding charset for Java classes (default UTF-8)\n\ \ -source Set the -source argument to the compiler (default 1.4)\n\ @@ -274,152 +270,152 @@ jspc.webinc.footer=\n\ \n jspc.webinc.insertEnd= jspc.webinc.insertStart= -jspc.error.jasperException=error-el archivo ''{0}'' ha generado la excepci�n de sint�xis siguiente: {1} -jspc.error.generalException=ERROR-el archivo ''{0}'' ha generado la excepci�n general siguiente: +jspc.error.jasperException=error-el archivo ''{0}'' ha generado la excepción de sintáxis siguiente: {1} +jspc.error.generalException=ERROR-el archivo ''{0}'' ha generado la excepción general siguiente: jspc.error.fileDoesNotExist=El archivo ''{0}'' utilizado como argumento no existe. jspc.error.emptyWebApp=-webapp necesita un argumento de archivo -jsp.error.library.invalid=La p�gina JSP es incorrecta de acuerdo a la biblioteca {0}: {1} +jsp.error.library.invalid=La página JSP es incorrecta de acuerdo a la biblioteca {0}: {1} jsp.error.tlvclass.instantiation=No pude cargar o instanciar clase TagLibraryValidator: {0} -jsp.error.tlv.invalid.page=Mensajes de error de validaci�n desde TagLibraryValidator para {0} in {1} -jsp.error.tei.invalid.attributes=Mensajes de error de validaci�n desde TagExtraInfo para {0} +jsp.error.tlv.invalid.page=Mensajes de error de validación desde TagLibraryValidator para {0} in {1} +jsp.error.tei.invalid.attributes=Mensajes de error de validación desde TagExtraInfo para {0} jsp.parser.sax.propertynotsupported=Propiedad SAX no soportada: {0} jsp.parser.sax.propertynotrecognized=Propiedad SAX no reconocida: {0} -jsp.parser.sax.featurenotsupported=Caracter�stica SAX no soportada: {0} -jsp.parser.sax.featurenotrecognized=Caracter�stica SAX no reconocida: {0} -jsp.error.no.more.content=Alcanzado fin de contenido mietras se requer�a m�s an�lisis: �error de anidamiento de tag? -jsp.error.parse.xml=Error de an�lisis XML en archivo {0} -jsp.error.parse.xml.line=Error de an�lisis XML en archivo {0}: (l�nea {1}, col {2}) +jsp.parser.sax.featurenotsupported=Característica SAX no soportada: {0} +jsp.parser.sax.featurenotrecognized=Característica SAX no reconocida: {0} +jsp.error.no.more.content=Alcanzado fin de contenido mietras se requería más análisis: ¿error de anidamiento de tag? +jsp.error.parse.xml=Error de análisis XML en archivo {0} +jsp.error.parse.xml.line=Error de análisis XML en archivo {0}: (línea {1}, col {2}) jsp.error.parse.xml.scripting.invalid.body=El cuerpo de elemento {0} no debe de contener elementos XML jsp.error.internal.tldinit=No pude inicializar TldLocationsCache: {0} jsp.error.internal.filenotfound=Error Interno: Archivo {0} no hallado jsp.error.internal.evaluator_not_found=Error interno: no pude cargar evaluador de expresiones jsp.error.parse.xml.invalidPublicId=PUBLIC ID incorrecta: {0} jsp.error.include.flush.invalid.value=Valor incorrecto para atributo flush: {0} -jsp.error.unsupported.encoding=Codificaci�n no soportada: {0} -tld.error.variableNotAllowed=Es un error para un tag, que tiene uno o m�s subelementos variables, el tener una clase TagExtraInfo que devuelve un objeto no nulo. +jsp.error.unsupported.encoding=Codificación no soportada: {0} +tld.error.variableNotAllowed=Es un error para un tag, que tiene uno o más subelementos variables, el tener una clase TagExtraInfo que devuelve un objeto no nulo. jsp.error.tldInWebDotXmlNotFound=No pude localizar TLD {1} para URI {0} especificado en web.xml -jsp.error.taglibDirective.absUriCannotBeResolved=La uri absoluta: {0} no puede resolverse o en web.xml o el los archivos jar desplegados con esta aplicaci�n +jsp.error.taglibDirective.absUriCannotBeResolved=La uri absoluta: {0} no puede resolverse o en web.xml o el los archivos jar desplegados con esta aplicación jsp.error.taglibDirective.missing.location=No se ha especificado ni el atributo \'uri\' ni el \'tagdir\' jsp.error.taglibDirective.both_uri_and_tagdir=Se han especificado ambos atributos \'uri\' y \'tagdir\' jsp.error.invalid.tagdir=El directorio de archivo Tag {0} no comienza con \"/WEB-INF/tags\" jsp.error.unterminated.user.tag=Tag definido por usuario no terminado: tag final {0} no hallado o anidado incorrectamente #jspx.error.templateDataNotInJspCdata=Validation Error: Element <{0}> cannot have template data. Template data must be encapsulated within a <jsp:cdata> element. [JSP1.2 PFD section 5.1.9]\nTemplate data in error: {1} -jspx.error.templateDataNotInJspCdata=Error de Validaci�n: El Elemento <{0}> no puede tener datos plantilla. Los datos plantilla deben de estar encapsulados dentro de un elemento <jsp:text>. [JSP1.2 PFD secci�n 5.1.9]\nDatos de Plantilla en error: {1} +jspx.error.templateDataNotInJspCdata=Error de Validación: El Elemento <{0}> no puede tener datos plantilla. Los datos plantilla deben de estar encapsulados dentro de un elemento <jsp:text>. [JSP1.2 PFD sección 5.1.9]\nDatos de Plantilla en error: {1} #Error while processing taglib jar file {0}: {1} -jsp.error.taglib.reserved.prefix=El prefijo taglib {0} est� reservado -jsp.error.invalid.javaEncoding=Codificaciones java incorrectas. Intent� {0} y luego {1}. Ambas fallaron. -jsp.error.needAlternateJavaEncoding=La codificaci�n java por defecto {0} es incorrecta en tu plataforma java. Se puede especificar una alternativa v�a par�metro 'javaEncoding' de JspServlet. +jsp.error.taglib.reserved.prefix=El prefijo taglib {0} está reservado +jsp.error.invalid.javaEncoding=Codificaciones java incorrectas. Intenté {0} y luego {1}. Ambas fallaron. +jsp.error.needAlternateJavaEncoding=La codificación java por defecto {0} es incorrecta en tu plataforma java. Se puede especificar una alternativa vía parámetro 'javaEncoding' de JspServlet. #Error when compiling, used for jsp line number error messages -jsp.error.single.line.number=Ha tenido lugar un error en la l�nea: {0} en el archivo jsp: {1} -jsp.error.multiple.line.number=\n\nHa tenido lugar un error entre las l�neas: {0} y {1} en el archivo jsp: {2}\n\n +jsp.error.single.line.number=Ha tenido lugar un error en la línea: {0} en el archivo jsp: {1} +jsp.error.multiple.line.number=\n\nHa tenido lugar un error entre las líneas: {0} y {1} en el archivo jsp: {2}\n\n jsp.error.corresponding.servlet=Error de servlet generado:\n -jsp.error.empty.body.not.allowed=Cuerpo vac�o no permitido para {0} +jsp.error.empty.body.not.allowed=Cuerpo vacío no permitido para {0} jsp.error.jspbody.required=Se debe de usar jsp:body para especificar cuerpo tag para {0} si se usa jsp:attribute. -jsp.error.jspbody.emptybody.only=El tag {0} s�lo puede tener jsp:attribute en su cuerpo. -jsp.error.no.scriptlets=Los elementos de Scripting (<%!, <jsp:declaration, <%=, <jsp:expression, <%, <jsp:scriptlet ) no est�n permitidos aqu�. +jsp.error.jspbody.emptybody.only=El tag {0} sólo puede tener jsp:attribute en su cuerpo. +jsp.error.no.scriptlets=Los elementos de Scripting (<%!, <jsp:declaration, <%=, <jsp:expression, <%, <jsp:scriptlet ) no están permitidos aquí. jsp.error.internal.unexpected_node_type=Error Interno: Encontrado tipo de nodo inesperado -jsp.error.tld.fn.invalid.signature=Sint�xis incorrecta para firma de funci�n en TLD. Biblioteca de Tag: {0}, Funci�n: {1} -jsp.error.tld.fn.duplicate.name=Nombre duplicado de funci�n {0} en biblioteca de tag {1} -jsp.error.tld.fn.invalid.signature.commaexpected=Sint�xis incorrecta para firma de funci�n en TLD. Se esperaba Coma ','. Biblioteca de Tag: {0}, Funci�n: {1}. -jsp.error.tld.fn.invalid.signature.parenexpected=Sint�xis incorrecta para firma de funci�n en TLD. Se esperaba Par�ntesis '('. Biblioteca de Tag: {0}, Funci�n: {1}. -jsp.error.tld.mandatory.element.missing=Falta o est� vac�o elemento TLD obligatorio: {0} -jsp.error.dynamic.attributes.not.implemented=El tag {0} declara que acepta atributos din�micos pero no implementa la interfaz requerida +jsp.error.tld.fn.invalid.signature=Sintáxis incorrecta para firma de función en TLD. Biblioteca de Tag: {0}, Función: {1} +jsp.error.tld.fn.duplicate.name=Nombre duplicado de función {0} en biblioteca de tag {1} +jsp.error.tld.fn.invalid.signature.commaexpected=Sintáxis incorrecta para firma de función en TLD. Se esperaba Coma ','. Biblioteca de Tag: {0}, Función: {1}. +jsp.error.tld.fn.invalid.signature.parenexpected=Sintáxis incorrecta para firma de función en TLD. Se esperaba Paréntesis '('. Biblioteca de Tag: {0}, Función: {1}. +jsp.error.tld.mandatory.element.missing=Falta o está vacío elemento TLD obligatorio: {0} +jsp.error.dynamic.attributes.not.implemented=El tag {0} declara que acepta atributos dinámicos pero no implementa la interfaz requerida jsp.error.nomatching.fragment=No puedo hallar una directiva de atributo (con name={0} y fragment=true) antes de la directiva de fragment. -jsp.error.attribute.noequal=se esperaba s�mbolo igual -jsp.error.attribute.noquote=se esperaba s�mbolo comillas -jsp.error.attribute.unterminated=el atributo para {0} no est� terminado correctamente +jsp.error.attribute.noequal=se esperaba símbolo igual +jsp.error.attribute.noquote=se esperaba símbolo comillas +jsp.error.attribute.unterminated=el atributo para {0} no está terminado correctamente jsp.error.missing.tagInfo=El objeto TagInfo para {0} falta del TLD -jsp.error.fragmentwithtype=No puede especificar ambos atributos 'fragment' y 'type'. Si est� presente 'fragment', 'type' se pone como 'javax.servlet.jsp.tagext.JspFragment' -jsp.error.fragmentwithrtexprvalue=No puede especificar ambos atributos 'fragment' y 'rtexprvalue'. Si est� presente 'fragment', 'rtexprvalue' se pone como 'true' +jsp.error.fragmentwithtype=No puede especificar ambos atributos 'fragment' y 'type'. Si está presente 'fragment', 'type' se pone como 'javax.servlet.jsp.tagext.JspFragment' +jsp.error.fragmentwithrtexprvalue=No puede especificar ambos atributos 'fragment' y 'rtexprvalue'. Si está presente 'fragment', 'rtexprvalue' se pone como 'true' jsp.error.fragmentWithDeclareOrScope=Ambos atributos 'fragment' y 'declare' o 'scope' se han especificado en la directiva variable -jsp.error.var_and_varReader=S�lo se puede especificar uno de \'var\' o \'varReader\' +jsp.error.var_and_varReader=Sólo se puede especificar uno de \'var\' o \'varReader\' jsp.error.missing_var_or_varReader=Falta atributo \'var\' o \'varReader\' jsp.warning.bad.urlpattern.propertygroup=Valor malo {0} en el subelemento url-pattern en web.xml jsp.error.unknown_attribute_type=Tipo de atributo desconocido ({1}) para atributo {0}. jsp.error.jspelement.missing.name=Falta atributo obligatorio XML-style \'name\' -jsp.error.xmlns.redefinition.notimplemented=Error interno: Intento de redefinir xmlns:{0}. La redefinici�n de espacios de nombre no est� implementada. -jsp.error.could.not.add.taglibraries=No pude a�adir una o m�s bibliotecas. -jsp.error.duplicate.name.jspattribute=El atributo {0} especificado en la acci�n standard o custom tambi�n aparece como el valor del atributo name en jsp:attribute +jsp.error.xmlns.redefinition.notimplemented=Error interno: Intento de redefinir xmlns:{0}. La redefinición de espacios de nombre no está implementada. +jsp.error.could.not.add.taglibraries=No pude añadir una o más bibliotecas. +jsp.error.duplicate.name.jspattribute=El atributo {0} especificado en la acción standard o custom también aparece como el valor del atributo name en jsp:attribute jsp.error.not.in.template={0} no permitido en una plantilla cuerpo de texto. -jsp.error.badStandardAction=Acci�n est�ndar incorrecta -jsp.error.xml.badStandardAction=Acci�n est�ndar incorrecta: {0} +jsp.error.badStandardAction=Acción estándar incorrecta +jsp.error.xml.badStandardAction=Acción estándar incorrecta: {0} jsp.error.tagdirective.badbodycontent=body-content incorrecto ({0}) en directiva tag jsp.error.simpletag.badbodycontent=El TLD para la clase {0} especifica un body-content es incorrecto (JSP) para un SimpleTag. jsp.error.config_pagedir_encoding_mismatch=El Page-encoding especificado en jsp-property-group ({0}) es diferente del especificado en la diectiva page ({1}) jsp.error.prolog_pagedir_encoding_mismatch=El Page-encoding especificado en XML prolog ({0}) difiere del especificado en la directiva page ({1}) jsp.error.prolog_config_encoding_mismatch=El Page-encoding especificado en XML prolog ({0}) difiere del especificado en jsp-property-group ({1}) -jsp.error.attribute.custom.non_rt_with_expr=Seg�n el TLD o la directiva attribute del archivo tag, el atributo {0} no acepta expresiones -jsp.error.attribute.standard.non_rt_with_expr=El atributo {0} de la acci�n est�ndar {1} no acepta expresiones +jsp.error.attribute.custom.non_rt_with_expr=Según el TLD o la directiva attribute del archivo tag, el atributo {0} no acepta expresiones +jsp.error.attribute.standard.non_rt_with_expr=El atributo {0} de la acción estándar {1} no acepta expresiones jsp.error.scripting.variable.missing_name=Imposible determinar nombre de variable de scripting desde atributo {0} -jasper.error.emptybodycontent.nonempty=Seg�n el TLD, el tag {0} debe de estar vac�o, pero no lo est� -jsp.error.tagfile.nameNotUnique=El valor de {0} y el valor de {1} en la l�nea {2} son el mismo. +jasper.error.emptybodycontent.nonempty=Según el TLD, el tag {0} debe de estar vacío, pero no lo está +jsp.error.tagfile.nameNotUnique=El valor de {0} y el valor de {1} en la línea {2} son el mismo. jsp.error.tagfile.nameFrom.noAttribute=No puedo hallar una directiva attribute con un atributo name con un valor \"{0}\", el valor de este atributo name-from-attribute. -jsp.error.tagfile.nameFrom.badAttribute=La directiva attribute (declarada en la l�nea {1} y cuyo atributo name es \"{0}\", el valor de este atributo name-from-attribute attribute) debe de ser del tipo java.lang.String, es \"required\" y no un \"rtexprvalue\". -jsp.error.page.noSession=No puedo acceder al �mbito de sesi�n en una p�gina que no participa en una sesi�n -jsp.error.useBean.noSession=Es ilegal para useBean usar un �mbito de sesi�n cuando la p�gina JSP declara (v�a directiva page) que no participa en sesiones -jsp.error.xml.encodingByteOrderUnsupported=El orden de byte dado para encoding \"{0}\" no est� soportado -jsp.error.xml.encodingDeclInvalid=Nombre de codificaci�n \"{0}\" incorrecto. -jsp.error.xml.encodingDeclRequired=Se necesita la declaraci�n encoding en la declaraci�n de texto -jsp.error.xml.morePseudoAttributes=se esperan m�s pseudo-atributos -jsp.error.xml.noMorePseudoAttributes=no se permiten m�s pseudo-atributos. -jsp.error.xml.versionInfoRequired=Se requiere la versi�n en la declaraci�n XML. -jsp.error.xml.xmlDeclUnterminated=La declaraci�n XML debe de terminar con \"?>\". -jsp.error.xml.reservedPITarget=La instrucci�n de procesamiento que coincide con \"[xX][mM][lL]\" no est� permitida. -jsp.error.xml.spaceRequiredInPI=Se necesita un espacio en blanco entre la instrucci�n de procesamiento y los datos. -jsp.error.xml.invalidCharInContent=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en el contenido del elemento del documento. -jsp.error.xml.spaceRequiredBeforeStandalone=Se necesita un espacio en blanco antes del pseudo-atributo encoding en la declaraci�n XML. -jsp.error.xml.sdDeclInvalid=El valor de declaraci�n de documento standalone debe de ser \"yes\" o \"no\", no \"{0}\". -jsp.error.xml.invalidCharInPI=Se hall� un car�cter XML incorrecto (Unicode: 0x{0}) en la instrucci�n de procesamiento -jsp.error.xml.versionNotSupported=No se soporta la versi�n XML \"{0}\", s�lo se soporta XML 1.0 +jsp.error.tagfile.nameFrom.badAttribute=La directiva attribute (declarada en la línea {1} y cuyo atributo name es \"{0}\", el valor de este atributo name-from-attribute attribute) debe de ser del tipo java.lang.String, es \"required\" y no un \"rtexprvalue\". +jsp.error.page.noSession=No puedo acceder al ámbito de sesión en una página que no participa en una sesión +jsp.error.useBean.noSession=Es ilegal para useBean usar un ámbito de sesión cuando la página JSP declara (vía directiva page) que no participa en sesiones +jsp.error.xml.encodingByteOrderUnsupported=El orden de byte dado para encoding \"{0}\" no está soportado +jsp.error.xml.encodingDeclInvalid=Nombre de codificación \"{0}\" incorrecto. +jsp.error.xml.encodingDeclRequired=Se necesita la declaración encoding en la declaración de texto +jsp.error.xml.morePseudoAttributes=se esperan más pseudo-atributos +jsp.error.xml.noMorePseudoAttributes=no se permiten más pseudo-atributos. +jsp.error.xml.versionInfoRequired=Se requiere la versión en la declaración XML. +jsp.error.xml.xmlDeclUnterminated=La declaración XML debe de terminar con \"?>\". +jsp.error.xml.reservedPITarget=La instrucción de procesamiento que coincide con \"[xX][mM][lL]\" no está permitida. +jsp.error.xml.spaceRequiredInPI=Se necesita un espacio en blanco entre la instrucción de procesamiento y los datos. +jsp.error.xml.invalidCharInContent=Un carácter XML incorrecto (Unicode: 0x{0}) se halló en el contenido del elemento del documento. +jsp.error.xml.spaceRequiredBeforeStandalone=Se necesita un espacio en blanco antes del pseudo-atributo encoding en la declaración XML. +jsp.error.xml.sdDeclInvalid=El valor de declaración de documento standalone debe de ser \"yes\" o \"no\", no \"{0}\". +jsp.error.xml.invalidCharInPI=Se halló un carácter XML incorrecto (Unicode: 0x{0}) en la instrucción de procesamiento +jsp.error.xml.versionNotSupported=No se soporta la versión XML \"{0}\", sólo se soporta XML 1.0 jsp.error.xml.pseudoAttrNameExpected=se esperaba un pseudo-atributo name. jsp.error.xml.expectedByte=Se esperaba byte {0} de {1}-byte de secuencia UTF-8. jsp.error.xml.invalidByte=Incorrecto byte {0} de {1}-byte de secuencia UTF-8. -jsp.error.xml.operationNotSupported=La operaci�n \"{0}\" no est� soportada por lector {1}. -jsp.error.xml.invalidHighSurrogate=Surrogaci�n Alta de bits en secuencia UTF-8 no debe de exceder 0x10, pero se hall� 0x{0}. +jsp.error.xml.operationNotSupported=La operación \"{0}\" no está soportada por lector {1}. +jsp.error.xml.invalidHighSurrogate=Surrogación Alta de bits en secuencia UTF-8 no debe de exceder 0x10, pero se halló 0x{0}. jsp.error.xml.invalidASCII=El Byte \"{0}\" no es ASCII de 7-bit. -jsp.error.xml.spaceRequiredBeforeEncodingInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaraci�n XML. -jsp.error.xml.spaceRequiredBeforeEncodingInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaraci�n text. -jsp.error.xml.spaceRequiredBeforeVersionInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaraci�n text. -jsp.error.xml.spaceRequiredBeforeVersionInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaraci�n XML. -jsp.error.xml.eqRequiredInXMLDecl=El car�cter '' = '' debe de serguir a \"{0}\" en la declaraci�n XML. -jsp.error.xml.eqRequiredInTextDecl=El car�cter '' = '' debe de serguir a \"{0}\" en la declaraci�n text. -jsp.error.xml.quoteRequiredInTextDecl=El valor que sigue a \"{0}\" en la declaraci�n text debe de ser una cadena entre comillas. -jsp.error.xml.quoteRequiredInXMLDecl=El valor que sigue a \"{0}\" en la declaraci�n XML debe de ser un cadena entre comillas. -jsp.error.xml.invalidCharInTextDecl=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en la declaraci�n text -jsp.error.xml.invalidCharInXMLDecl=Un car�cter XML incorrecto (Unicode: 0x{0}) se hall� en la declaraci�n XML -jsp.error.xml.closeQuoteMissingInTextDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaraci�n text. -jsp.error.xml.closeQuoteMissingInXMLDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaraci�n XML. -jsp.error.multiple.jsp=No puedo tener m�ltiples especificaciones de -jsp.error.jspoutput.conflict=<jsp:output>: ilegal tener ocurrencias m�ltiples de \"{0}\" con diferentes valores (viejo: {1}, nuevo: {2}) +jsp.error.xml.spaceRequiredBeforeEncodingInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaración XML. +jsp.error.xml.spaceRequiredBeforeEncodingInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo encoding en la declaración text. +jsp.error.xml.spaceRequiredBeforeVersionInTextDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaración text. +jsp.error.xml.spaceRequiredBeforeVersionInXMLDecl=Se necesita espacio en blanco antes del pseudo-atributo version en la declaración XML. +jsp.error.xml.eqRequiredInXMLDecl=El carácter '' = '' debe de serguir a \"{0}\" en la declaración XML. +jsp.error.xml.eqRequiredInTextDecl=El carácter '' = '' debe de serguir a \"{0}\" en la declaración text. +jsp.error.xml.quoteRequiredInTextDecl=El valor que sigue a \"{0}\" en la declaración text debe de ser una cadena entre comillas. +jsp.error.xml.quoteRequiredInXMLDecl=El valor que sigue a \"{0}\" en la declaración XML debe de ser un cadena entre comillas. +jsp.error.xml.invalidCharInTextDecl=Un carácter XML incorrecto (Unicode: 0x{0}) se halló en la declaración text +jsp.error.xml.invalidCharInXMLDecl=Un carácter XML incorrecto (Unicode: 0x{0}) se halló en la declaración XML +jsp.error.xml.closeQuoteMissingInTextDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaración text. +jsp.error.xml.closeQuoteMissingInXMLDecl=Faltan las comillas de cierre en el valor que sigue a \"{0}\" en la declaración XML. +jsp.error.multiple.jsp=No puedo tener múltiples especificaciones de +jsp.error.jspoutput.conflict=<jsp:output>: ilegal tener ocurrencias múltiples de \"{0}\" con diferentes valores (viejo: {1}, nuevo: {2}) jsp.error.jspoutput.doctypenamesystem=<jsp:output>: atributos 'doctype-root-element' y 'doctype-system' deben de aparecer juntos jsp.error.jspoutput.doctypepulicsystem=<jsp:output>: atributo 'doctype-system' debe de aparecer si aparece atributo 'doctype-public' jsp.error.jspoutput.nonemptybody=<jsp:output> no debe de tener un cuerpo -jsp.error.jspoutput.invalidUse=<jsp:output> no se debe de usar en sint�xis est�ndar +jsp.error.jspoutput.invalidUse=<jsp:output> no se debe de usar en sintáxis estándar jsp.error.attributes.not.allowed = {0} no debe de tener atributos jsp.error.tagfile.badSuffix=Falta sufijo \".tag\" en trayectoria de archivo de tag {0} jsp.error.tagfile.illegalPath=Trayectoria de archivo de tag: {0}, debe de comenzar con \"/WEB-INF/tags\" o \"/META-INF/tags\" -jsp.error.plugin.wrongRootElement=El nombre del elemento ra�z en {0} difiere de {1} +jsp.error.plugin.wrongRootElement=El nombre del elemento raíz en {0} difiere de {1} jsp.error.attribute.invalidPrefix=El prefijo de atributo {0} no se correponde con ninguna biblioteca importada -jsp.error.nested.jspattribute=Una acci�n est�ndar jsp:attribute no puede estar anidada dentro de otra acci�n est�ndar jsp:attribute -jsp.error.nested.jspbody=Una acci�n est�ndar jsp:body no puede estar anidada dentro de otra acci�n est�ndar jsp:body o jsp:attribute +jsp.error.nested.jspattribute=Una acción estándar jsp:attribute no puede estar anidada dentro de otra acción estándar jsp:attribute +jsp.error.nested.jspbody=Una acción estándar jsp:body no puede estar anidada dentro de otra acción estándar jsp:body o jsp:attribute jsp.error.variable.either.name=O el atributo name-given o name-from-attribute deben de ser especificados en una directiva variable jsp.error.variable.both.name=No se puede especificar ambos atributos name-given o name-from-attribute en una directiva variable jsp.error.variable.alias=Ambos atributos o ninguno de name-from-attribute y alias pueden ser especificados en una directiva variable jsp.error.attribute.null_name=Nombre de atributo nulo jsp.error.jsptext.badcontent=\'<\', cuando aparece en el cuerpo de <jsp:text>, debe de estar encapsulado dentro de un CDATA -jsp.error.jsproot.version.invalid=N�mero incorrecto de versi�n: \"{0}\", debe de ser \"1.2\" o \"2.0\" -jsp.error.noFunctionPrefix=La funci�n {0} debe de usarse con un prefijo cuando no se especifica un espacio de nombres por defecto -jsp.error.noFunction=La funci�n {0} no puede ser localizada mediante el prefijo especificado -jsp.error.noFunctionMethod=El m�todo \"{0}\" para la funci�n \"{1}\" no se pudo hallar en la clase \"{2}\" -jsp.error.function.classnotfound=La clase {0} especificada en el TLD para la funci�n {1} no se puede hallar: {2} -jsp.error.signature.classnotfound=La clase {0} especificada en la firma del m�todo en el TLD para la funci�n {1} no se puede hallar. {2} +jsp.error.jsproot.version.invalid=Número incorrecto de versión: \"{0}\", debe de ser \"1.2\" o \"2.0\" +jsp.error.noFunctionPrefix=La función {0} debe de usarse con un prefijo cuando no se especifica un espacio de nombres por defecto +jsp.error.noFunction=La función {0} no puede ser localizada mediante el prefijo especificado +jsp.error.noFunctionMethod=El método \"{0}\" para la función \"{1}\" no se pudo hallar en la clase \"{2}\" +jsp.error.function.classnotfound=La clase {0} especificada en el TLD para la función {1} no se puede hallar: {2} +jsp.error.signature.classnotfound=La clase {0} especificada en la firma del método en el TLD para la función {1} no se puede hallar. {2} jsp.error.text.has_subelement=<jsp:text> no debe de tener subelementos jsp.error.data.file.read=Error leyendo archivo \"{0}\" -jsp.error.prefix.refined=Intento de redefinir el prefijo {0} por {1}, cuando ya estaba definido como {2} en el �mbito en curso. +jsp.error.prefix.refined=Intento de redefinir el prefijo {0} por {1}, cuando ya estaba definido como {2} en el ámbito en curso. jsp.error.nested_jsproot=<jsp:root> anidado -jsp.error.unbalanced.endtag=El tgag final \"</{0}\" est� desequilibrado +jsp.error.unbalanced.endtag=El tgag final \"</{0}\" está desequilibrado jsp.error.invalid.bean= From cd85d7017b10d6b403cb883a07d8ea276eaed2a9 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 08:55:09 +0200 Subject: [PATCH 0213/2288] Fixes encoding --- .../resources/LocalStrings_fr.properties | 346 +++++++++--------- 1 file changed, 171 insertions(+), 175 deletions(-) diff --git a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties index e9f28202d0..5740f662e5 100644 --- a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties +++ b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/resources/LocalStrings_fr.properties @@ -1,56 +1,52 @@ +# 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 # -# 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. +# 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. # Default localized string information # Localized this the Default Locale as is fr_FR jsp.error.bad.servlet.engine=Version de moteur de servlet incorrecte! -jsp.error.no.scratch.dir=Le moteur de JSP engine n''est pas configur� avec un r�pertoire de travail.\ +jsp.error.no.scratch.dir=Le moteur de JSP engine n''est pas configuré avec un répertoire de travail.\ \n Merci d''ajouter \"jsp.initparams=scratchdir=\" \ \n dans le fichier "servlets.properties" de ce contexte. -jsp.error.bad.scratch.dir=Le param�tre "scratchDir" que vous avez sp�cifi�: {0} est inutilisable. -jsp.message.scratch.dir.is=Le r�pertoire de travail (scratch dir) pour le moteur de JSP est: {0} +jsp.error.bad.scratch.dir=Le paramêtre "scratchDir" que vous avez spécifié: {0} est inutilisable. +jsp.message.scratch.dir.is=Le répertoire de travail (scratch dir) pour le moteur de JSP est: {0} jsp.message.parent_class_loader_is=Le chargeur de classe parent (class loader) est: {0} -jsp.message.dont.modify.servlets=IMPORTANT: Ne pas modifier les servlets g�n�r�es -jsp.error.not.impl.comments=Erreur interne: Commentaires non impl�ment�s -jsp.error.not.impl.directives=Erreur interne: Directives non impl�ment�es -jsp.error.not.impl.declarations=Erreur interne: Declarations non impl�ment�es -jsp.error.not.impl.expressions=Erreur interne: Expressions non impl�ment�es -jsp.error.not.impl.scriptlets=Erreur interne: Scriptlets non impl�ment�s -jsp.error.not.impl.usebean=Erreur interne: useBean non impl�ment� -jsp.error.not.impl.getp=Erreur interne: getProperty non impl�ment� -jsp.error.not.impl.setp=Erreur interne: setProperty non impl�ment� -jsp.error.not.impl.plugin=Erreur interne: plugin non impl�ment� -jsp.error.not.impl.forward=Erreur interne: forward non impl�ment� -jsp.error.not.impl.include=Erreur interne: include non impl�ment� -jsp.error.unavailable=La JSP a �t� marqu�e comme non disponible -jsp.error.usebean.missing.attribute=useBean: l''identificateur d''attribut (id attribute) est manquant ou mal orthographi� -jsp.error.usebean.missing.type=useBean ({0}): La classe ou le type d''attribut doit �tre\ -sp�cifi�: -jsp.error.usebean.duplicate=useBean: Nom de bean dupliqu�: {0} +jsp.message.dont.modify.servlets=IMPORTANT: Ne pas modifier les servlets générées +jsp.error.not.impl.comments=Erreur interne: Commentaires non implémentés +jsp.error.not.impl.directives=Erreur interne: Directives non implémentées +jsp.error.not.impl.declarations=Erreur interne: Declarations non implémentées +jsp.error.not.impl.expressions=Erreur interne: Expressions non implémentées +jsp.error.not.impl.scriptlets=Erreur interne: Scriptlets non implémentés +jsp.error.not.impl.usebean=Erreur interne: useBean non implémenté +jsp.error.not.impl.getp=Erreur interne: getProperty non implémenté +jsp.error.not.impl.setp=Erreur interne: setProperty non implémenté +jsp.error.not.impl.plugin=Erreur interne: plugin non implémenté +jsp.error.not.impl.forward=Erreur interne: forward non implémenté +jsp.error.not.impl.include=Erreur interne: include non implémenté +jsp.error.unavailable=La JSP a été marquée comme non disponible +jsp.error.usebean.missing.attribute=useBean: l''identificateur d''attribut (id attribute) est manquant ou mal orthographié +jsp.error.usebean.missing.type=useBean ({0}): La classe ou le type d''attribut doit être\ +spécifié: +jsp.error.usebean.duplicate=useBean: Nom de bean dupliqué: {0} jsp.error.usebean.prohibited.as.session=Impossible d''utiliser comme bean de session {0} car c''est interdit\ -par la directive jsp d�finie pr�c�demment: -jsp.error.usebean.not.both=useBean: Impossible de sp�cifier � la fois la classe et l''attribut beanName: +par la directive jsp définie précédemment: +jsp.error.usebean.not.both=useBean: Impossible de spécifier à la fois la classe et l''attribut beanName: jsp.error.usebean.bad.type.cast=useBean ({0}): Le type ({1}) n''est pas assignable depuis la classe ({2}) -jsp.error.classname=Impossible de d�terminer le nom de classe d''apr�s le fichier .class +jsp.error.classname=Impossible de déterminer le nom de classe d''après le fichier .class jsp.warning.bad.type=Attention: mauvais type dans le fichier .class -jsp.error.data.file.write=Erreur lors de l''�criture du fichier de donn�es +jsp.error.data.file.write=Erreur lors de l''écriture du fichier de données #Directive de Page: valeur incorrecte pour pageEncoding jsp.error.page.invalid.contenttype=Directive de Page: valeur incorrecte pour contentType jsp.error.page.invalid.session=Directive de Page: valeur incorrecte pour session @@ -59,25 +55,25 @@ jsp.error.page.invalid.autoflush=Directive de Page: valeur incorrecte pour autoF jsp.error.page.invalid.isthreadsafe=Directive de Page: valeur incorrecte pour isThreadSafe jsp.error.page.invalid.info=Directive de Page: valeur incorrecte pour info jsp.error.page.invalid.iserrorpage=Directive de Page: valeur incorrecte pour isErrorPage -jsp.error.page.defafteruse.language=Directive de Page: on ne peut d�finir language apr�s un scriptlet +jsp.error.page.defafteruse.language=Directive de Page: on ne peut définir language après un scriptlet jsp.error.page.nomapping.language=Directive de Page: Pas de correspondance pour language: -jsp.error.page.bad_b_and_a_combo=Directive de Page: combinaison ill�gale de buffer=\"none\" && autoFlush=\"false\" -jsp.error.not.impl.taglib=Internal error: Tag extensions non impl�ment�s +jsp.error.page.bad_b_and_a_combo=Directive de Page: combinaison illégale de buffer=\"none\" && autoFlush=\"false\" +jsp.error.not.impl.taglib=Internal error: Tag extensions non implémentés jsp.error.include.missing.file=l''argument fichier (file) pour l''inclusion (include) est absent jsp.error.include.bad.file=Mauvais argument fichier (file) pour l''inclusion (include) jsp.error.include.exception=Impossible d''inclure (include) {0} -jsp.error.stream.closed=Flux ferm� +jsp.error.stream.closed=Flux fermé jsp.error.invalid.forward=Tag forward incorrect -jsp.error.unknownException=Erreur non trait�e! Vous devriez penser � utiliser une page d''erreur \ -pour rapporter ce type d''erreur plus �l�gamment +jsp.error.unknownException=Erreur non traitée! Vous devriez penser à utiliser une page d''erreur \ +pour rapporter ce type d''erreur plus élégamment jsp.error.invalid.directive=Directive incorrecte -jsp.error.directive.istagfile=La directive {0} ne peut �tre utilis�e dans un fichier tag -jsp.error.directive.isnottagfile=La directive {0} ne peut �tre utilis�e que dans un fichier tag -jsp.error.tagfile.tld.name=L''attribut \"name\" de la directive tag contient la valeur {0} alors que le tag \"name\" de l''�l�ment \"tag-file\" dans le TLD est {1} -jsp.error.action.istagfile=L''action {0} ne peut �tre utilis�e dans un fichier tag -jsp.error.action.isnottagfile=L''action {0} ne peut �tre utilis�e que dans un fichier tag -jsp.error.unterminated=Tag {0} non termin� -jsp.error.usebean.notinsamefile=le tag useBean doit commenc� et finir dans le m�me fichier physique +jsp.error.directive.istagfile=La directive {0} ne peut être utilisée dans un fichier tag +jsp.error.directive.isnottagfile=La directive {0} ne peut être utilisée que dans un fichier tag +jsp.error.tagfile.tld.name=L''attribut \"name\" de la directive tag contient la valeur {0} alors que le tag \"name\" de l''élément \"tag-file\" dans le TLD est {1} +jsp.error.action.istagfile=L''action {0} ne peut être utilisée dans un fichier tag +jsp.error.action.isnottagfile=L''action {0} ne peut être utilisée que dans un fichier tag +jsp.error.unterminated=Tag {0} non terminé +jsp.error.usebean.notinsamefile=le tag useBean doit commencé et finir dans le même fichier physique jsp.error.loadclass.taghandler=Impossible de charger la classe {0} jsp.error.unable.compile=Impossible de compiler la classe pour la JSP jsp.error.unable.load=Impossible de charger la classe pour la JSP @@ -86,63 +82,63 @@ jsp.error.mandatory.attribute={0}: L''attribut obligatoire {1} est manquant jsp.engine.info=Moteur Jasper JSP 2.0 jsp.error.invalid.expression="{0}" contient d''incorrecte(s) expression(s): {1} jsp.error.invalid.attribute={0}: Attribut incorrect: {1} -jsp.error.usebean.class.notfound=Classe: {0} non trouv�e +jsp.error.usebean.class.notfound=Classe: {0} non trouvée jsp.error.file.cannot.read=Impossible de lire le fichier: {0} -jsp.error.file.already.registered=Inclusion r�cursive du fichier {0} -jsp.error.file.not.registered=Le fichier {0} n''appara�t pas dans l''inclusion (include) -jsp.error.quotes.unterminated=guillemets non termin�s -jsp.error.attr.quoted=La valeur de l''attribute doit �tre entre guillemets +jsp.error.file.already.registered=Inclusion récursive du fichier {0} +jsp.error.file.not.registered=Le fichier {0} n''apparaît pas dans l''inclusion (include) +jsp.error.quotes.unterminated=guillemets non terminés +jsp.error.attr.quoted=La valeur de l''attribute doit être entre guillemets jsp.error.attr.novalue=L''attribute {0} n''a pas de valeur -jsp.error.tag.attr.unterminated=Liste de tag d''attribut non termin�e +jsp.error.tag.attr.unterminated=Liste de tag d''attribut non terminée jsp.error.param.noname=Pas de nom dans le tag PARAM jsp.error.param.novalue=Pas de valeur dans le tag PARAM -jsp.error.beans.nullbean=Tentative d''op�ration bean sur un objet nul. -jsp.error.beans.nobeaninfo=Pas d''information bean (BeanInfo) pour le bean de type ''{0}'' n''a pu �tre trouv�e, la classe n''existe probablement pas. -jsp.error.beans.introspection=Une exception s''est produite lors de l''introspection de la m�thode read de la propri�t� ''{0}'' dans le bean de type ''{1}'':\n{2} -jsp.error.beans.nomethod=Impossible de trouver une m�thode pour lire la propri�t� ''{0}'' dans le bean de type ''{1}'' -jsp.error.beans.nomethod.setproperty=Impossible de trouver une m�thode pour mettre � jour la propri�t� ''{0}'' de type ''{1}''dans le bean de type ''{2}'' -jsp.error.beans.noproperty==Impossible de trouver de l''information sur la propri�t� ''{0}'' dans le bean de type ''{1}'' -jsp.error.beans.setproperty.noindexset=Impossible de renseigner la propri�t� ind�x�e +jsp.error.beans.nullbean=Tentative d''opération bean sur un objet nul. +jsp.error.beans.nobeaninfo=Pas d''information bean (BeanInfo) pour le bean de type ''{0}'' n''a pu être trouvée, la classe n''existe probablement pas. +jsp.error.beans.introspection=Une exception s''est produite lors de l''introspection de la méthode read de la propriété ''{0}'' dans le bean de type ''{1}'':\n{2} +jsp.error.beans.nomethod=Impossible de trouver une méthode pour lire la propriété ''{0}'' dans le bean de type ''{1}'' +jsp.error.beans.nomethod.setproperty=Impossible de trouver une méthode pour mettre à jour la propriété ''{0}'' de type ''{1}''dans le bean de type ''{2}'' +jsp.error.beans.noproperty==Impossible de trouver de l''information sur la propriété ''{0}'' dans le bean de type ''{1}'' +jsp.error.beans.setproperty.noindexset=Impossible de renseigner la propriété indéxée jsp.error.include.tag=Tag jsp:include incorrect jsp.error.include.noflush=jsp:include doit avoir \"flush=true\" jsp.error.include.badflush=jsp:include page=\"...\" flush=\"true\" est la seule combinaison valide dans JSP 1.0 -jsp.error.attempt_to_clear_flushed_buffer=Erreur: Tentative d''effacement d''un tampon qui a d�j� �t� vidang� (flush) -jsp.error.overflow=Erreur: D�passement de capacit� du tampon JSP -jsp.error.paramexpected=Le tag \"param\" est attendu avec les attributs \"name\" et \"value\" apr�s le tag \"params\". -jsp.error.closeindividualparam=Le tag param doit �tre ferm� avec \"/>\" -jsp.error.closeparams=Le tag param tag doit �tre ferm� avec /params -jsp.error.plugin.notype=type non d�clar� dans jsp:plugin -jsp.error.plugin.nocode=code non d�clar� dans jsp:plugin +jsp.error.attempt_to_clear_flushed_buffer=Erreur: Tentative d''effacement d''un tampon qui a déjà été vidangé (flush) +jsp.error.overflow=Erreur: Dépassement de capacité du tampon JSP +jsp.error.paramexpected=Le tag \"param\" est attendu avec les attributs \"name\" et \"value\" après le tag \"params\". +jsp.error.closeindividualparam=Le tag param doit être fermé avec \"/>\" +jsp.error.closeparams=Le tag param tag doit être fermé avec /params +jsp.error.plugin.notype=type non déclaré dans jsp:plugin +jsp.error.plugin.nocode=code non déclaré dans jsp:plugin jsp.error.ise_on_clear=Il est interdit d''utiliser clear() quand la taille de tampon== 0 jsp.error.setproperty.beanNotFound=setProperty: le Bean {0} est introuvable jsp.error.getproperty.beanNotFound=getProperty: le Bean {0} est introuvable jsp.error.setproperty.ClassNotFound=setProperty: la Classe {0} est introuvable jsp.error.setproperty.invalidSyntax=setProperty: On ne peut avoir de valeur non nulle quand property=* jsp.error.setproperty.beanInfoNotFound=setproperty: beanInfo pour le bean {0} est introuvable -jsp.error.setproperty.paramOrValue=setProperty: param ou value doit �tre pr�sent -jsp.error.setproperty.arrayVal=setProperty: on ne peut renseigner les array property {0} au travers d''une valeur cha�ne constante (string constant value) -jsp.warning.keepgen=Attention: Valeur incorrecte pour le initParam keepgenerated. Utilisation de la valeur par d�faut \"false\" -jsp.warning.enablePooling=Attention: Valeur incorrecte pour le initParam enablePooling. Utilisation de la valeur par d�faut \"true\" -jsp.warning.mappedFile=Attention: Valeur incorrecte pour le initParam mappedFile. Utilisation de la valeur par d�faut \"false\" -jsp.warning.sendErrToClient=Attention: Valeur incorrecte pour le initParam sendErrToClient. Utilisation de la valeur par d�faut \"false\" -jsp.warning.classDebugInfo=Attention: Valeur incorrecte pour le initParam classdebuginfo. Utilisation de la valeur par d�faut \"false\" -jsp.warning.checkInterval=Attention: Valeur incorrecte pour le initParam checkInterval. Utilisation de la valeur par d�faut \"300\" secondes -jsp.warning.development=Attention: Valeur incorrecte pour le initParam development. Utilisation de la valeur par d�faut \"true\" -jsp.warning.reloading=Attention: Valeur incorrecte pour le initParam reloading. Utilisation de la valeur par d�faut \"true\" +jsp.error.setproperty.paramOrValue=setProperty: param ou value doit être présent +jsp.error.setproperty.arrayVal=setProperty: on ne peut renseigner les array property {0} au travers d''une valeur chaîne constante (string constant value) +jsp.warning.keepgen=Attention: Valeur incorrecte pour le initParam keepgenerated. Utilisation de la valeur par défaut \"false\" +jsp.warning.enablePooling=Attention: Valeur incorrecte pour le initParam enablePooling. Utilisation de la valeur par défaut \"true\" +jsp.warning.mappedFile=Attention: Valeur incorrecte pour le initParam mappedFile. Utilisation de la valeur par défaut \"false\" +jsp.warning.sendErrToClient=Attention: Valeur incorrecte pour le initParam sendErrToClient. Utilisation de la valeur par défaut \"false\" +jsp.warning.classDebugInfo=Attention: Valeur incorrecte pour le initParam classdebuginfo. Utilisation de la valeur par défaut \"false\" +jsp.warning.checkInterval=Attention: Valeur incorrecte pour le initParam checkInterval. Utilisation de la valeur par défaut \"300\" secondes +jsp.warning.development=Attention: Valeur incorrecte pour le initParam development. Utilisation de la valeur par défaut \"true\" +jsp.warning.reloading=Attention: Valeur incorrecte pour le initParam reloading. Utilisation de la valeur par défaut \"true\" jsp.warning.reloading= jsp.error.badtaglib=Impossible d''ouvrir le taglibrary {0} : {1} -jsp.error.badGetReader=Impossible de cr�er un lecteur (reader) quand le flux n''utilse pas des tampons (not buffered) -jsp.warning.unknown.element.in.TLD=Attention: El�ment inconnu {0} dans le TLD -jsp.warning.unknown.element.in.tag=Attention: El�ment inconnu {0} dans le tag +jsp.error.badGetReader=Impossible de créer un lecteur (reader) quand le flux n''utilse pas des tampons (not buffered) +jsp.warning.unknown.element.in.TLD=Attention: Elément inconnu {0} dans le TLD +jsp.warning.unknown.element.in.tag=Attention: Elément inconnu {0} dans le tag jsp.warning.unknown.element.in.tagfile=Attention: El?ment inconnu {0} dans le tag-file -jsp.warning.unknown.element.in.attribute=Attention: El�ment inconnu {0} dans l''attribute +jsp.warning.unknown.element.in.attribute=Attention: Elément inconnu {0} dans l''attribute jsp.error.more.than.one.taglib=plus d''un taglib dans le TLD: {0} jsp.error.teiclass.instantiation=Impossible de charger ou d''instancier la classe TagExtraInfo: {0} -jsp.error.non_null_tei_and_var_subelems=Le tag {0} poss�de une ou plusieurs variables subelements et une classe TagExtraInfo qui retourne une ou plusieurs VariableInfo -jsp.error.parse.error.in.TLD=Erreur d''�valuation (parse) dans le descripteur de librairie de tag (TLD): {0} +jsp.error.non_null_tei_and_var_subelems=Le tag {0} possède une ou plusieurs variables subelements et une classe TagExtraInfo qui retourne une ou plusieurs VariableInfo +jsp.error.parse.error.in.TLD=Erreur d''évaluation (parse) dans le descripteur de librairie de tag (TLD): {0} jsp.error.unable.to.open.TLD=Impossible d''ouvrir le descripteur de librairie de tag (TLD): {0} jsp.buffer.size.zero=Taille du tampon <= 0 -jsp.error.file.not.found=Le fichier \"{0}\" n''a pas �t� trouv� +jsp.error.file.not.found=Le fichier \"{0}\" n''a pas été trouvé jsp.message.copyinguri=Copie de {0} dans {1} jsp.message.htmlcomment=\nEffacement des commentaires: \t{0} jsp.message.handling_directive=\nDirective de gestion (handling): {0}\t{1} @@ -151,54 +147,54 @@ jsp.message.package_name_is=Le nom de package est: {0} jsp.message.class_name_is=Le nom de classe est: {0} jsp.message.java_file_name_is=Le nom de fichier Java est: {0} jsp.message.class_file_name_is=Le nom de fichier Class est: {0} -jsp.message.accepted=Accept� {0} � {1} -jsp.message.adding_jar=Ajout du jar {0} � mon classpath +jsp.message.accepted=Accepté {0} à {1} +jsp.message.adding_jar=Ajout du jar {0} à mon classpath jsp.message.compiling_with=Compilation avec: {0} jsp.message.template_text=texte template -jsp.error.missing_attribute=D''apr�s le TLD l''attribut {0} est obligatoire pour le tag {1} -jsp.error.bad_attribute=L''attribut {0} est incorrect pour le tag {1} d''apr�s la TLD indiqu�e +jsp.error.missing_attribute=D''après le TLD l''attribut {0} est obligatoire pour le tag {1} +jsp.error.bad_attribute=L''attribut {0} est incorrect pour le tag {1} d''après la TLD indiquée jsp.error.webxml_not_found=Impossible de localiser le fichier web.xml jsp.cmd_line.usage=Usage: jsptoservlet [-dd ] [-keepgenerated] \ <.jsp files> jsp.message.cp_is=Le Classpath {0} est: {1} jsp.error.unable.to_load_taghandler_class=Impossible de charger la classe gestionnaire de tag {0} car {1} -jsp.error.unable.to_find_method=Impossible de trouver une m�thode de mise � jour pour l''attribut: {0} -jsp.error.unable.to_convert_string=Impossible de convertir une cha�ne vers {0} pour l''attribut {1} +jsp.error.unable.to_find_method=Impossible de trouver une méthode de mise à jour pour l''attribut: {0} +jsp.error.unable.to_convert_string=Impossible de convertir une chaîne vers {0} pour l''attribut {1} jsp.error.unable.to_introspect=Impossible d''introspecter la classe gestionnaire de tag : {0} car {1} -jsp.error.bad_tag=Aucun tag {0} dans la librairie de tag import�e avec le pr�fixe {1} -jsp.error.bad_string_Character=Impossible d''extraire un caract�re depuis un tableau vide -jsp.error.bad_string_char=Impossible d''extraire un caract�re depuis un tableau vide -jsp.warning.compiler.class.cantcreate=Impossible de cr�er une instance de classe plugin pour le compilateur indiqu� {0} due to {1}. Utilisation par d�faut du Compilateur Java Sun. -jsp.warning.compiler.class.notfound=La classe plugin de compilateur {0} est introuvable. Utilisation par d�faut du Compilateur Java Sun. -jsp.warning.compiler.path.notfound=le chemin de compilateur indiqu� {0} est introuvable. Utilisation par d�faut du chemin syst�me (system PATH). -jsp.error.jspc.uriroot_not_dir=L''option -uriroot doit indiqu� un r�pertoire d�j� existant -jspc.implicit.uriRoot=uriRoot r�gl� implicitement � "{0}" +jsp.error.bad_tag=Aucun tag {0} dans la librairie de tag importée avec le préfixe {1} +jsp.error.bad_string_Character=Impossible d''extraire un caractère depuis un tableau vide +jsp.error.bad_string_char=Impossible d''extraire un caractère depuis un tableau vide +jsp.warning.compiler.class.cantcreate=Impossible de créer une instance de classe plugin pour le compilateur indiqué {0} due to {1}. Utilisation par défaut du Compilateur Java Sun. +jsp.warning.compiler.class.notfound=La classe plugin de compilateur {0} est introuvable. Utilisation par défaut du Compilateur Java Sun. +jsp.warning.compiler.path.notfound=le chemin de compilateur indiqué {0} est introuvable. Utilisation par défaut du chemin système (system PATH). +jsp.error.jspc.uriroot_not_dir=L''option -uriroot doit indiqué un répertoire déjà existant +jspc.implicit.uriRoot=uriRoot réglé implicitement à "{0}" jspc.usage=Usage: jspc [--] \n\ -o� les fichiers jsp sont n''importe quel nombre de:\n\ -\ Un fichier � �valuer (parser) comme page jsp\n\ -\ -webapp Un r�pertoire contenant une application web, toutes les pages jsp\n\ -\ seront r�cursivement �valu�es\n\ -o� les options comprennet:\n\ -\ -q Mode silencieux (identique � -v0)\n\ -\ -v[#] Mode bavard (Le nombre optionnel indique le niveau, 2 par d�faut)\n\ +où les fichiers jsp sont n''importe quel nombre de:\n\ +\ Un fichier à évaluer (parser) comme page jsp\n\ +\ -webapp Un répertoire contenant une application web, toutes les pages jsp\n\ +\ seront récursivement évaluées\n\ +où les options comprennet:\n\ +\ -q Mode silencieux (identique à -v0)\n\ +\ -v[#] Mode bavard (Le nombre optionnel indique le niveau, 2 par défaut)\n\ \ -d Dossier de sortie\n\ \ -dd Dossier de sortie literal. (Les dossiers de paquets ne seront pas construits)\n\ -\ -l Sortie du nom la page JSP en cas d''�chec\n\ -\ -s Sortie du nom la page JSP en cas de succ�s\n\ +\ -l Sortie du nom la page JSP en cas d''échec\n\ +\ -s Sortie du nom la page JSP en cas de succès\n\ \ -p Nom du paquet cible\n\ \ -c Nom d'un nom de classe cible\n\ -\ (s''applique seulement � la premi�re page JSP)\n\ -\ -mapped G�n�re des appels � write() s�par�s pour chaque ligne HTML dans la JSP\n\ -\ -die[#] G�n�re un code d''erreur de retour (#) en cas d''erreurs fatales.\n\ -\ Si le nombre est absent ou non num�rique, le d�faut est 1.\n\ -\ -uribase Le r�pertoire uri de compilations relatif\n\ -\ (Par d�faut "/")\n\ -\ -uriroot The r�pertoire racine contre lequel les fichiers seront r�solus\n\ -\ , (Par d�faut le r�pertoire depuis lequel jspc est appel�)\n\ -\ -webinc Cr�ation d''association partielle de servlet pour l''option -webapp.\n\ -\ -webxml Cr�ation d''un fichier web.xml complet pour l''option -webapp.\n\ +\ (s''applique seulement à la première page JSP)\n\ +\ -mapped Génère des appels à write() séparés pour chaque ligne HTML dans la JSP\n\ +\ -die[#] Génère un code d''erreur de retour (#) en cas d''erreurs fatales.\n\ +\ Si le nombre est absent ou non numérique, le défaut est 1.\n\ +\ -uribase Le répertoire uri de compilations relatif\n\ +\ (Par défaut "/")\n\ +\ -uriroot The répertoire racine contre lequel les fichiers seront résolus\n\ +\ , (Par défaut le répertoire depuis lequel jspc est appelé)\n\ +\ -webinc Création d''association partielle de servlet pour l''option -webapp.\n\ +\ -webxml Création d''un fichier web.xml complet pour l''option -webapp.\n\ \ -ieplugin Le classid du Plugin Java Plugin pour Internet Explorer\n\ -\ -sax2 Le nom de classe du Driver SAX 2.0 � utiliser\n\ +\ -sax2 Le nom de classe du Driver SAX 2.0 à utiliser\n\ \ -trimSpaces Trim spaces in template text between actions, directives\n\ \ -javaEncoding Set the encoding charset for Java classes (default UTF-8)\n\ \ -source Set the -source argument to the compiler (default 1.4)\n\ @@ -210,7 +206,7 @@ jspc.webxml.header=\n\ \ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"\n\ \ "http://java.sun.com/dtd/web-app_2_3.dtd">\n\ \n\ \n\ \n @@ -219,7 +215,7 @@ jspc.webxml.footer=\n\ \n jspc.webinc.header=\n\ \n @@ -229,83 +225,83 @@ All session-config, mime-mapping, welcome-file-list, error-page, taglib,\n\ resource-ref, security-constraint, login-config, security-role,\n\ env-entry, and ejb-ref elements should follow this fragment.\n\ -->\n -jspc.error.jasperException=erreur-le fichier ''{0}'' a g�n�r� l''exception d''�valuation suivante: {1} -jspc.error.generalException=ERREUR-le fichier ''{0}'' a g�n�r� l''exception g�n�rale suivante: +jspc.error.jasperException=erreur-le fichier ''{0}'' a généré l''exception d''évaluation suivante: {1} +jspc.error.generalException=ERREUR-le fichier ''{0}'' a généré l''exception générale suivante: jspc.error.fileDoesNotExist=L''argument fichier ''{0}'' n''existe pas -jspc.error.emptyWebApp=-webapp n�cessite � sa suite un argument fichier -jsp.error.library.invalid=La page JSP page est incorrecte d''apr�s la librairie {0}: {1} +jspc.error.emptyWebApp=-webapp nécessite à sa suite un argument fichier +jsp.error.library.invalid=La page JSP page est incorrecte d''après la librairie {0}: {1} jsp.error.tlvclass.instantiation=Impossible de charger ou d''instancier la classe TagLibraryValidator: {0} jsp.error.tlv.invalid.page=Message d''erreurs de validation provenant du TagLibraryValidator pour {0} en {1} jsp.error.tei.invalid.attributes=Message d''erreurs de validation provenant du TagExtraInfo pour {0} -jsp.parser.sax.propertynotsupported=Propri�t� SAX non support�e: {0} -jsp.parser.sax.propertynotrecognized=Propri�t� SAX non reconnue: {0} -jsp.parser.sax.featurenotsupported=Fonctionnalit� SAX non support�e: {0} -jsp.parser.sax.featurenotrecognized=Fonctionnalit� SAX non reconnue: {0} -jsp.error.no.more.content=Fin de contenu alors que l''�valution n''�tait pas termin�e: erreur de tags imbriqu�s? -jsp.error.parse.xml=Erreur d''�valuation XML sur le fichier {0} -jsp.error.parse.xml.line=Erreur d''�valuation XML sur le fichier {0}: (ligne {1}, col {2}) -jsp.error.parse.xml.scripting.invalid.body=Le corps de l''�l�ment {0} ne doit contenir aucun �l�ments XML +jsp.parser.sax.propertynotsupported=Propriété SAX non supportée: {0} +jsp.parser.sax.propertynotrecognized=Propriété SAX non reconnue: {0} +jsp.parser.sax.featurenotsupported=Fonctionnalité SAX non supportée: {0} +jsp.parser.sax.featurenotrecognized=Fonctionnalité SAX non reconnue: {0} +jsp.error.no.more.content=Fin de contenu alors que l''évalution n''était pas terminée: erreur de tags imbriqués? +jsp.error.parse.xml=Erreur d''évaluation XML sur le fichier {0} +jsp.error.parse.xml.line=Erreur d''évaluation XML sur le fichier {0}: (ligne {1}, col {2}) +jsp.error.parse.xml.scripting.invalid.body=Le corps de l''élément {0} ne doit contenir aucun éléments XML jsp.error.internal.tldinit=Exception lors de l'initialisation de TldLocationsCache: {0} jsp.error.internal.filenotfound=Erreur interne: Fichier {0} introuvable -jsp.error.internal.evaluator_not_found=Erreur interne: Impossible de charger l''�valuateur d''expression +jsp.error.internal.evaluator_not_found=Erreur interne: Impossible de charger l''évaluateur d''expression jsp.error.parse.xml.invalidPublicId=PUBLIC ID invalide: {0} jsp.error.include.flush.invalid.value=Valeur incorrecte pour l''attribut flush: {0} -jsp.error.unsupported.encoding=Encodage non support�: {0} +jsp.error.unsupported.encoding=Encodage non supporté: {0} jsp.warning.unknown.element.in.variable=Attention: Element inconnu {0} dans la variable -tld.error.variableNotAllowed=Ceci est une erreur pour le tag qui poss�de une ou plusieurs variables subelements pour avoir une classe TagExtraInfo qui retourne un objet non-nul. -jsp.error.tldInWebDotXmlNotFound=Ne peut trouver le TLD {1} pour l''URI {0} indiqu�e dans le fichier web.xml -jsp.error.taglibDirective.absUriCannotBeResolved=L''uri absolue: {0} ne peut �tre r�solu dans le fichier web.xml ou dans les fichiers jar d�ploy�s avec cette application -jsp.error.taglibDirective.missing.location=Ni l''uri' ni l''attribut 'tagdir' n''ont �t� indiqu�s dans la directive taglib -jsp.error.invalid.tagdir=Le r�pertoire du fichier Tag {0} ne commence pas par \"/WEB-INF/tags\" -jsp.error.unterminated.user.tag=Tag user-defined non termin�: Le tag de fermeture {0} est introuvable found ou incorrectement imbriqu� -#jspx.error.templateDataNotInJspCdata=Erreur de validation: l''�l�ment <{0}> ne peut avoir de donn�es template. Les donn�es Template doivent �tre encapsul�es � l''int�rieur d''un �l�ment <jsp:cdata>. [JSP1.2 PFD section 5.1.9]\nDonn�e Template en erreur: {1} -jspx.error.templateDataNotInJspCdata=Erreur de validation: l''�l�ment <{0}> ne peut avoir de donn�es template. Les donn�es Template doivent �tre encapsul�es � l''int�rieur d''un �l�ment <jsp:text>. [JSP1.2 PFD section 5.1.9]\nDonn�e Template en erreur: {1} +tld.error.variableNotAllowed=Ceci est une erreur pour le tag qui possède une ou plusieurs variables subelements pour avoir une classe TagExtraInfo qui retourne un objet non-nul. +jsp.error.tldInWebDotXmlNotFound=Ne peut trouver le TLD {1} pour l''URI {0} indiquée dans le fichier web.xml +jsp.error.taglibDirective.absUriCannotBeResolved=L''uri absolue: {0} ne peut être résolu dans le fichier web.xml ou dans les fichiers jar déployés avec cette application +jsp.error.taglibDirective.missing.location=Ni l''uri' ni l''attribut 'tagdir' n''ont été indiqués dans la directive taglib +jsp.error.invalid.tagdir=Le répertoire du fichier Tag {0} ne commence pas par \"/WEB-INF/tags\" +jsp.error.unterminated.user.tag=Tag user-defined non terminé: Le tag de fermeture {0} est introuvable found ou incorrectement imbriqué +#jspx.error.templateDataNotInJspCdata=Erreur de validation: l''élément <{0}> ne peut avoir de données template. Les données Template doivent être encapsulées à l''intérieur d''un élément <jsp:cdata>. [JSP1.2 PFD section 5.1.9]\nDonnée Template en erreur: {1} +jspx.error.templateDataNotInJspCdata=Erreur de validation: l''élément <{0}> ne peut avoir de données template. Les données Template doivent être encapsulées à l''intérieur d''un élément <jsp:text>. [JSP1.2 PFD section 5.1.9]\nDonnée Template en erreur: {1} #Erreur lors du traitement du fichier jar de la taglib {0}: {1} -jsp.error.taglib.reserved.prefix=Le pr�fixe taglib {0} est r�serv� -jsp.error.invalid.javaEncoding=Encodage java incorrect. Essai de {0} puis de {1}. Les deux ont �chou�. -jsp.error.needAlternateJavaEncoding=L''encodage java par d�faut {0} est incorrect sur votre environnement java. Une alternative peut �tre indiqu�e via le param�tre 'javaEncoding' de la JspServlet. -#Erreur lors de la compilation, utilis� pour la ligne jsp des messages d''erreur -jsp.error.single.line.number=Une erreur s''est produite � la ligne: {0} dans le fichier jsp: {1} +jsp.error.taglib.reserved.prefix=Le préfixe taglib {0} est réservé +jsp.error.invalid.javaEncoding=Encodage java incorrect. Essai de {0} puis de {1}. Les deux ont échoué. +jsp.error.needAlternateJavaEncoding=L''encodage java par défaut {0} est incorrect sur votre environnement java. Une alternative peut être indiquée via le paramêtre 'javaEncoding' de la JspServlet. +#Erreur lors de la compilation, utilisé pour la ligne jsp des messages d''erreur +jsp.error.single.line.number=Une erreur s''est produite à la ligne: {0} dans le fichier jsp: {1} jsp.error.multiple.line.number=\n\nUne erreur s''est produite entre les lignes: {0} et {1} dans le fichier jsp: {2}\n\n -jsp.error.corresponding.servlet=Erreur de servlet g�n�r�e:\n -jsp.error.empty.body.not.allowed=Un corps vide n'est pas autoris� pour {0} -jsp.error.jspbody.required=Doit utiliser jsp:body pour indiqu� le corps de tag body de {0} si jsp:attribute est utilis�. +jsp.error.corresponding.servlet=Erreur de servlet générée:\n +jsp.error.empty.body.not.allowed=Un corps vide n'est pas autorisé pour {0} +jsp.error.jspbody.required=Doit utiliser jsp:body pour indiqué le corps de tag body de {0} si jsp:attribute est utilisé. jsp.error.jspbody.emptybody.only=Le tag {0} ne peut avoir que jsp:attribute dans son corps. -jsp.error.no.scriptlets=Les �l�ments de Scripting ( <%!, Date: Sun, 22 Oct 2017 08:59:41 +0200 Subject: [PATCH 0214/2288] Converts content to a proper CSS --- .../dispatcher/StaticContentLoaderTest.java | 2 +- .../org/apache/struts2/static/resource.css | 22 ++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java b/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java index 7995ecadac..c991275191 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/StaticContentLoaderTest.java @@ -57,7 +57,7 @@ public void testCanHandle() { public void testValidRersources() throws IOException { contentLoader.findStaticResource("/struts/resource.css", req, res); - assertTrue(res.getContentAsString().contains("heya!")); + assertTrue(res.getContentAsString().contains("color: red;")); } public void testInvalidRersources1() throws IOException { diff --git a/core/src/test/resources/org/apache/struts2/static/resource.css b/core/src/test/resources/org/apache/struts2/static/resource.css index b4d8ec7ca0..728c8c862b 100644 --- a/core/src/test/resources/org/apache/struts2/static/resource.css +++ b/core/src/test/resources/org/apache/struts2/static/resource.css @@ -1 +1,21 @@ -heya! \ No newline at end of file +/* + * 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. + */ +p { + color: red; +} \ No newline at end of file From de6adde37e9144e914c45d2ed9187ff54673f850 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 09:51:04 +0200 Subject: [PATCH 0215/2288] Uses instead of to avoid warnings --- apps/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index e7e0fa6e8f..9d6e4ff75c 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -51,14 +51,14 @@ copy-sources process-sources - + - + run From 2e7f5c0d4009d17d2e327e9caecfaa4ab6f44e7c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 09:51:23 +0200 Subject: [PATCH 0216/2288] Changes how docs are fetched --- assembly/pom.xml | 20 ++++++++------------ assembly/src/main/resources/docs-urls.txt | 6 ++++++ 2 files changed, 14 insertions(+), 12 deletions(-) create mode 100644 assembly/src/main/resources/docs-urls.txt diff --git a/assembly/pom.xml b/assembly/pom.xml index a7518bac10..eaffae9b91 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -75,33 +75,29 @@ maven-antrun-plugin - cwiki-docs + docs prepare-package run - - + + - + - - + - + + - - - - - + diff --git a/assembly/src/main/resources/docs-urls.txt b/assembly/src/main/resources/docs-urls.txt new file mode 100644 index 0000000000..845dab8cf6 --- /dev/null +++ b/assembly/src/main/resources/docs-urls.txt @@ -0,0 +1,6 @@ +http://struts.apache.org/getting-started/ +http://struts.apache.org/security/ +http://struts.apache.org/core-developers/ +http://struts.apache.org/tag-developers/ +http://struts.apache.org/maven-archetypes/ +http://struts.apache.org/plugins/ From 2bb122e4bba677042d0e4a41df853f321675e54b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 09:52:23 +0200 Subject: [PATCH 0217/2288] Excludes fonts --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 96f722b00a..ac2a8377f2 100644 --- a/pom.xml +++ b/pom.xml @@ -248,6 +248,7 @@ src/main/resources/static/css/**/*.css src/main/resources/static/js/**/*.js src/main/resources/docs.cfg + src/main/webapp/fonts/**/* From b8c06608cc0f49c5765adaa5aea220d9edec5dc4 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 10:09:52 +0200 Subject: [PATCH 0218/2288] Uses new docs location when preparing packages --- assembly/src/main/assembly/all.xml | 2 +- assembly/src/main/assembly/docs.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/assembly/src/main/assembly/all.xml b/assembly/src/main/assembly/all.xml index ab63068c95..4566fe2a14 100644 --- a/assembly/src/main/assembly/all.xml +++ b/assembly/src/main/assembly/all.xml @@ -105,7 +105,7 @@ - target/cwiki + target/docs docs/docs diff --git a/assembly/src/main/assembly/docs.xml b/assembly/src/main/assembly/docs.xml index 9d0ad03c26..d16b363667 100644 --- a/assembly/src/main/assembly/docs.xml +++ b/assembly/src/main/assembly/docs.xml @@ -46,7 +46,7 @@ - target/cwiki + target/docs docs/docs From 08945013b250116fcde9cc594ba828e46f6cb273 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 11:04:21 +0200 Subject: [PATCH 0219/2288] Excludes additional text files --- pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pom.xml b/pom.xml index ac2a8377f2..84f2af7635 100644 --- a/pom.xml +++ b/pom.xml @@ -245,6 +245,8 @@ src/main/webapp/**/*.svg src/main/webapp/**/*.txt src/main/resources/**/sitegraph-usage.txt + src/main/resources/**/docs-urls.txt + src/etc/header.txt src/main/resources/static/css/**/*.css src/main/resources/static/js/**/*.js src/main/resources/docs.cfg From 8817c508c59acaea75c1b4588b6909c3a5662eee Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 11:38:27 +0200 Subject: [PATCH 0220/2288] Defines a new profile to check missing dependencies --- pom.xml | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 84f2af7635..0eacc4eb32 100644 --- a/pom.xml +++ b/pom.xml @@ -128,6 +128,25 @@ assembly + + dependency-check + + + + org.owasp + dependency-check-maven + + + verify + + check + + + + + + + jdk8 @@ -254,8 +273,19 @@ + + org.owasp + dependency-check-maven + 3.0.1 + + 8 + true + true + + + org.apache.maven.plugins @@ -358,7 +388,17 @@ org.apache.rat apache-rat-plugin - 0.12 + + + org.owasp + dependency-check-maven + + + + aggregate + + + From 8b95838c581b9de9c2d484fa33864c43bb2a2693 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sun, 22 Oct 2017 12:29:13 +0200 Subject: [PATCH 0221/2288] Adds proper XML header --- ...editorAction-lotsOfRichtexteditorSubmit-validation.xml | 1 + .../showcase/person/NewPersonAction-validation.xml | 3 ++- .../apache/struts2/showcase/person/Person-validation.xml | 3 ++- ...ction-submitClientSideValidationExample-validation.xml | 2 +- ...pleAction-submitFieldValidatorsExamples-validation.xml | 2 +- .../struts2/showcase/validation/QuizAction-validation.xml | 3 ++- apps/showcase/src/main/webapp/WEB-INF/decorators.xml | 2 +- apps/showcase/src/main/webapp/WEB-INF/sitemesh.xml | 1 + apps/showcase/src/main/webapp/WEB-INF/tiles.xml | 2 +- apps/showcase/src/main/webapp/WEB-INF/validation.xml | 2 +- assembly/pom.xml | 1 + assembly/src/main/assembly/all.xml | 1 + assembly/src/main/assembly/apps.xml | 1 + assembly/src/main/assembly/docs.xml | 1 + assembly/src/main/assembly/lib.xml | 1 + assembly/src/main/assembly/min-lib.xml | 1 + assembly/src/main/assembly/src.xml | 1 + core/src/main/resources/xwork-default.xml | 1 + core/src/site/site.xml | 2 +- .../xwork2/validator/DefaultValidatorFileParserTest.java | 8 ++++---- .../opensymphony/xwork2/ModelDrivenAction-validation.xml | 1 + .../xwork2/SimpleAction-some-alias-validation.xml | 1 + .../xwork2/SimpleAction-subproperty-validation.xml | 1 + .../com/opensymphony/xwork2/SimpleAction-validation.xml | 1 + .../xwork2/SimpleAction-validationAlias-validation.xml | 1 + .../xwork2/TestBean-anotherContext-validation.xml | 1 + .../opensymphony/xwork2/TestBean-badtest-validation.xml | 1 + .../xwork2/TestBean-beanMessageBundle-validation.xml | 1 + .../xwork2/TestBean-expressionValidation-validation.xml | 1 + .../com/opensymphony/xwork2/TestBean-validation.xml | 1 + .../xwork2/TestBean-visitorChildValidation-validation.xml | 1 + .../xwork2/TestBean-visitorValidation-validation.xml | 1 + .../com/opensymphony/xwork2/TestChildBean-validation.xml | 1 + .../config/providers/loadorder1/xwork-test-load-order.xml | 1 + .../config/providers/loadorder2/xwork-test-load-order.xml | 1 + .../config/providers/loadorder3/xwork-test-load-order.xml | 1 + .../opensymphony/xwork2/config/providers/xwork- test.xml | 1 + .../config/providers/xwork-include-after-package-2.xml | 1 + .../config/providers/xwork-include-after-package.xml | 1 + .../config/providers/xwork-include-before-package-2.xml | 1 + .../config/providers/xwork-include-before-package.xml | 1 + .../xwork2/config/providers/xwork-include-parent.xml | 1 + .../xwork2/config/providers/xwork-test-action-invalid.xml | 1 + .../xwork-test-actions-packagedefaultclassref.xml | 1 + .../xwork2/config/providers/xwork-test-actions.xml | 1 + .../config/providers/xwork-test-allowed-methods.xml | 1 + .../config/providers/xwork-test-bad-inheritance.xml | 1 + .../xwork2/config/providers/xwork-test-basic-packages.xml | 1 + .../config/providers/xwork-test-default-package.xml | 1 + .../providers/xwork-test-defaultclassref-package.xml | 1 + .../config/providers/xwork-test-envs-substitution.xml | 1 + .../config/providers/xwork-test-exception-mappings.xml | 1 + .../config/providers/xwork-test-include-wildcard.xml | 1 + .../providers/xwork-test-interceptor-defaultref.xml | 1 + .../providers/xwork-test-interceptor-inheritance.xml | 1 + .../config/providers/xwork-test-interceptor-params.xml | 1 + .../config/providers/xwork-test-interceptors-basic.xml | 1 + .../config/providers/xwork-test-interceptors-spring.xml | 1 + .../xwork2/config/providers/xwork-test-invalid-file.xml | 1 + .../xwork2/config/providers/xwork-test-multilevel.xml | 1 + .../config/providers/xwork-test-package-inheritance.xml | 1 + .../config/providers/xwork-test-result-inheritance.xml | 1 + .../xwork2/config/providers/xwork-test-result-names.xml | 1 + .../xwork2/config/providers/xwork-test-results.xml | 1 + .../xwork2/config/providers/xwork-test-wildcard-1.xml | 1 + .../xwork2/config/providers/xwork-test-wildcard-2.xml | 1 + .../config/providers/xwork-test-wildcard-include.xml | 1 + .../config/providers/xwork-unknownhandler-stack-empty.xml | 1 + .../config/providers/xwork-unknownhandler-stack.xml | 1 + .../opensymphony/xwork2/spring/actionContext-xwork.xml | 1 + .../com/opensymphony/xwork2/spring/xwork-autowire.xml | 1 + .../com/opensymphony/xwork2/test/DataAware-validation.xml | 1 + .../xwork2/test/DataAware-validationAlias-validation.xml | 1 + .../opensymphony/xwork2/test/DataAware2-validation.xml | 1 + .../com/opensymphony/xwork2/test/Equidae-validation.xml | 1 + .../opensymphony/xwork2/test/SimpleAction2-validation.xml | 1 + .../test/SimpleAction2-validationAlias-validation.xml | 1 + .../com/opensymphony/xwork2/test/User-validation.xml | 1 + .../opensymphony/xwork2/test/UserMarker-validation.xml | 1 + .../xwork2/util/location/xml-with-location.xml | 1 + .../validator/VisitorValidatorModelAction-validation.xml | 1 + ...orValidatorTestAction-beanMessageBundle-validation.xml | 1 + ...isitorValidatorTestAction-validateArray-validation.xml | 1 + ...VisitorValidatorTestAction-validateList-validation.xml | 1 + .../validator/VisitorValidatorTestAction-validation.xml | 1 + ...idatorTestAction-visitorChildValidation-validation.xml | 1 + ...orValidatorTestAction-visitorValidation-validation.xml | 1 + ...idatorTestAction-visitorValidationAlias-validation.xml | 1 + .../xwork2/validator/validator-parser-test.xml | 1 + .../xwork2/validator/validator-parser-test2.xml | 1 + .../xwork2/validator/validator-parser-test3.xml | 1 + .../xwork2/validator/validator-parser-test4.xml | 1 + .../xwork2/validator/validator-parser-test5.xml | 1 + .../xwork2/validator/validator-parser-test6.xml | 1 + core/src/test/resources/includeTest.xml | 1 + .../org/apache/struts2/TestAction-validation.xml | 1 + .../org/apache/struts2/dispatcher/ng/struts-no-op.xml | 1 + .../org/apache/struts2/views/jsp/WW3090-struts.xml | 1 + .../views/jsp/ui/DoubleValidationAction-validation.xml | 1 + .../views/jsp/ui/IntValidationAction-validation.xml | 1 + .../org/apache/struts2/views/jsp/ui/User-validation.xml | 1 + .../resources/struts-object-factory-result-builder.xml | 1 + core/src/test/resources/struts.xml | 1 + core/src/test/resources/xwork-class-param-test.xml | 1 + core/src/test/resources/xwork-param-test.xml | 1 + core/src/test/resources/xwork-proxyinvoke.xml | 1 + core/src/test/resources/xwork-sample.xml | 1 + core/src/test/resources/xwork-test-beans.xml | 1 + core/src/test/resources/xwork-test-default.xml | 1 + core/src/test/resources/xwork-test-validation.xml | 1 + .../src/test/resources/bean-validation-test.xml | 1 + plugins/cdi/src/site/site.xml | 2 +- plugins/cdi/src/test/resources/META-INF/beans.xml | 1 + plugins/config-browser/src/site/site.xml | 2 +- plugins/convention/pom.xml | 1 + plugins/convention/src/site/site.xml | 4 ++-- plugins/dwr/src/site/site.xml | 4 ++-- .../apache/struts2/jasper/servlet/mbeans-descriptors.xml | 2 +- .../apache/struts2/jasper/tagplugins/jstl/tagPlugins.xml | 2 +- plugins/embeddedjsp/src/site/site.xml | 4 ++-- plugins/gxp/pom.xml | 1 + plugins/gxp/src/site/site.xml | 4 ++-- plugins/jasperreports/src/site/site.xml | 4 ++-- plugins/javatemplates/src/site/site.xml | 4 ++-- plugins/jfreechart/src/site/site.xml | 4 ++-- plugins/json/src/site/site.xml | 4 ++-- plugins/junit/src/site/site.xml | 4 ++-- plugins/osgi/src/site/site.xml | 4 ++-- plugins/oval/src/site/site.xml | 4 ++-- plugins/oval/src/test/resources/oval-test.xml | 1 + plugins/pell-multipart/src/site/site.xml | 4 ++-- plugins/plexus/src/site/site.xml | 4 ++-- plugins/portlet-tiles/src/site/site.xml | 4 ++-- plugins/portlet/pom.xml | 1 + plugins/portlet/src/site/site.xml | 4 ++-- plugins/rest/src/site/site.xml | 4 ++-- plugins/sitegraph/src/site/site.xml | 4 ++-- .../resources/org/apache/struts2/sitegraph/struts.xml | 1 + plugins/sitemesh/src/site/site.xml | 4 ++-- plugins/spring/src/site/site.xml | 4 ++-- plugins/src/site/site.xml | 4 ++-- plugins/testng/src/site/site.xml | 4 ++-- plugins/tiles/src/site/site.xml | 4 ++-- pom.xml | 3 +++ src/site/site.xml | 2 +- 145 files changed, 175 insertions(+), 62 deletions(-) diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml index 3d728f30c1..07a7e5d7bd 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/LotsOfRichtexteditorAction-lotsOfRichtexteditorSubmit-validation.xml @@ -1,3 +1,4 @@ + + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml index 5532033638..8cdef7094d 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/person/Person-validation.xml @@ -1,4 +1,4 @@ - + + diff --git a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml index 16273112a3..0beb7e3a9f 100644 --- a/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml +++ b/apps/showcase/src/main/resources/org/apache/struts2/showcase/validation/FieldValidatorsExampleAction-submitClientSideValidationExample-validation.xml @@ -1,4 +1,4 @@ - + + - + org.apache.maven.skins maven-fluido-skin diff --git a/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java b/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java index 50b35e5679..89363bf891 100644 --- a/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/validator/DefaultValidatorFileParserTest.java @@ -101,7 +101,7 @@ public void testParser() { assertEquals("required", cfg.getType()); assertEquals("foo", cfg.getParams().get("fieldName")); assertEquals("You must enter a value for foo.", cfg.getDefaultMessage()); - assertEquals(24, cfg.getLocation().getLineNumber()); + assertEquals(25, cfg.getLocation().getLineNumber()); cfg = (ValidatorConfig) configs.get(3); assertEquals("required", cfg.getType()); @@ -124,7 +124,7 @@ public void testParserWithBadValidation() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName3); } catch (XWorkException ex) { - assertTrue("Wrong line number", 23 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number", 24 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); @@ -137,7 +137,7 @@ public void testParserWithBadXML() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName4); } catch (XWorkException ex) { - assertTrue("Wrong line number: " + ex.getLocation(), 33 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number: " + ex.getLocation(), 34 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); @@ -163,7 +163,7 @@ public void testValidatorDefinitionsWithBadClassName() { try { parser.parseActionValidatorConfigs((ValidatorFactory) mockValidatorFactory.proxy(), is, testFileName5); } catch (XWorkException ex) { - assertTrue("Wrong line number", 23 == ex.getLocation().getLineNumber()); + assertTrue("Wrong line number", 24 == ex.getLocation().getLineNumber()); pass = true; } assertTrue("Validation file should have thrown exception", pass); diff --git a/core/src/test/resources/com/opensymphony/xwork2/ModelDrivenAction-validation.xml b/core/src/test/resources/com/opensymphony/xwork2/ModelDrivenAction-validation.xml index 80fd9d1c66..1a777b9c1a 100644 --- a/core/src/test/resources/com/opensymphony/xwork2/ModelDrivenAction-validation.xml +++ b/core/src/test/resources/com/opensymphony/xwork2/ModelDrivenAction-validation.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/cdi/src/test/resources/META-INF/beans.xml b/plugins/cdi/src/test/resources/META-INF/beans.xml index df9dcce9e0..a02ea94b99 100644 --- a/plugins/cdi/src/test/resources/META-INF/beans.xml +++ b/plugins/cdi/src/test/resources/META-INF/beans.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 3e2de127a9..dfed1e6f06 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/dwr/src/site/site.xml b/plugins/dwr/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/dwr/src/site/site.xml +++ b/plugins/dwr/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml index 2493842159..a6cdf2c6d0 100644 --- a/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml +++ b/plugins/embeddedjsp/src/main/resources/org/apache/struts2/jasper/servlet/mbeans-descriptors.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index b0bb6196b6..250a780f48 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/jasperreports/src/site/site.xml b/plugins/jasperreports/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/jasperreports/src/site/site.xml +++ b/plugins/jasperreports/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/javatemplates/src/site/site.xml b/plugins/javatemplates/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/javatemplates/src/site/site.xml +++ b/plugins/javatemplates/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/jfreechart/src/site/site.xml b/plugins/jfreechart/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/jfreechart/src/site/site.xml +++ b/plugins/jfreechart/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/json/src/site/site.xml b/plugins/json/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/json/src/site/site.xml +++ b/plugins/json/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/junit/src/site/site.xml b/plugins/junit/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/junit/src/site/site.xml +++ b/plugins/junit/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/osgi/src/site/site.xml b/plugins/osgi/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/osgi/src/site/site.xml +++ b/plugins/osgi/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/oval/src/site/site.xml b/plugins/oval/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/oval/src/site/site.xml +++ b/plugins/oval/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/oval/src/test/resources/oval-test.xml b/plugins/oval/src/test/resources/oval-test.xml index 781064dfb5..353e86c9da 100644 --- a/plugins/oval/src/test/resources/oval-test.xml +++ b/plugins/oval/src/test/resources/oval-test.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/plexus/src/site/site.xml b/plugins/plexus/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/plexus/src/site/site.xml +++ b/plugins/plexus/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/portlet-tiles/src/site/site.xml b/plugins/portlet-tiles/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/portlet-tiles/src/site/site.xml +++ b/plugins/portlet-tiles/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index ade4ea2a9f..a4ac4169c7 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/rest/src/site/site.xml b/plugins/rest/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/rest/src/site/site.xml +++ b/plugins/rest/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/sitegraph/src/site/site.xml b/plugins/sitegraph/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/sitegraph/src/site/site.xml +++ b/plugins/sitegraph/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/struts.xml b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/struts.xml index bc1d75b817..4a931f24c6 100644 --- a/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/struts.xml +++ b/plugins/sitegraph/src/test/resources/org/apache/struts2/sitegraph/struts.xml @@ -1,3 +1,4 @@ + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/spring/src/site/site.xml b/plugins/spring/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/spring/src/site/site.xml +++ b/plugins/spring/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/src/site/site.xml b/plugins/src/site/site.xml index 4065327fd6..c9805f21f8 100644 --- a/plugins/src/site/site.xml +++ b/plugins/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/testng/src/site/site.xml b/plugins/testng/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/testng/src/site/site.xml +++ b/plugins/testng/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/plugins/tiles/src/site/site.xml b/plugins/tiles/src/site/site.xml index 3c5109b0c7..54fdcf4f47 100644 --- a/plugins/tiles/src/site/site.xml +++ b/plugins/tiles/src/site/site.xml @@ -1,4 +1,4 @@ - + - + org.apache.maven.skins maven-fluido-skin diff --git a/pom.xml b/pom.xml index 0eacc4eb32..867b13eb23 100644 --- a/pom.xml +++ b/pom.xml @@ -392,6 +392,9 @@ org.owasp dependency-check-maven + + Dependency Check + diff --git a/src/site/site.xml b/src/site/site.xml index b27ae54bf7..bb3bb1fc8f 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -1,4 +1,4 @@ - + * */ -public class ActionMappingParametersInteceptor extends ParametersInterceptor { +public class ActionMappingParametersInterceptor extends ParametersInterceptor { /** * @param ac The action context diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 3c68264d2f..27462a1e4f 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -221,7 +221,8 @@ - + + @@ -237,6 +238,7 @@ + From 1c0976a8693519f03b3796215bb9140a3c3160fc Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 28 Oct 2017 16:39:55 +0330 Subject: [PATCH 0236/2288] WW-4874 Introduces Servlet3 plugin by adding support for async action methods --- .../com/opensymphony/xwork2/AsyncManager.java | 35 ++++ .../xwork2/DefaultActionInvocation.java | 91 +++++++---- .../apache/struts2/dispatcher/Dispatcher.java | 12 +- .../struts2/dispatcher/PrepareOperations.java | 9 +- plugins/pom.xml | 1 + plugins/servlet3/pom.xml | 46 ++++++ .../struts2/servlet3/async/AsyncAction.java | 65 ++++++++ .../servlet3/async/Servlet3AsyncManager.java | 149 ++++++++++++++++++ .../src/main/resources/struts-plugin.xml | 29 ++++ 9 files changed, 398 insertions(+), 39 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/AsyncManager.java create mode 100644 plugins/servlet3/pom.xml create mode 100644 plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java create mode 100644 plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java create mode 100644 plugins/servlet3/src/main/resources/struts-plugin.xml diff --git a/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java b/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java new file mode 100644 index 0000000000..fb65638596 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java @@ -0,0 +1,35 @@ +/* + * 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 java.util.concurrent.Callable; + +/** + * Adds support for invoke async actions. This allows us to support action methods that return {@link Callable} + * as well as invoking them in separate not-container thread then executing the result in another container thread. + * + * @since 2.5.14 + */ +public interface AsyncManager { + boolean hasAsyncActionResult(); + + Object getAsyncActionResult(); + + void invokeAsyncAction(Callable asyncAction); +} diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java index 5777007c1c..da38e4eb54 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java @@ -40,6 +40,7 @@ import java.util.Iterator; import java.util.List; import java.util.Map; +import java.util.concurrent.Callable; /** * The Default ActionInvocation implementation @@ -71,6 +72,8 @@ public class DefaultActionInvocation implements ActionInvocation { protected Container container; protected UnknownHandlerManager unknownHandlerManager; protected OgnlUtil ognlUtil; + protected AsyncManager asyncManager; + protected Callable asyncAction; protected WithLazyParams.LazyParamInjector lazyParamInjector; public DefaultActionInvocation(final Map extraContext, final boolean pushAction) { @@ -108,6 +111,11 @@ public void setOgnlUtil(OgnlUtil ognlUtil) { this.ognlUtil = ognlUtil; } + @Inject(required=false) + public void setAsyncManager(AsyncManager asyncManager) { + this.asyncManager = asyncManager; + } + public Object getAction() { return action; } @@ -237,49 +245,61 @@ public String invoke() throws Exception { throw new IllegalStateException("Action has already executed"); } - if (interceptors.hasNext()) { - final InterceptorMapping interceptorMapping = interceptors.next(); - String interceptorMsg = "interceptorMapping: " + interceptorMapping.getName(); - UtilTimerStack.push(interceptorMsg); - try { - Interceptor interceptor = interceptorMapping.getInterceptor(); - if (interceptor instanceof WithLazyParams) { - interceptor = lazyParamInjector.injectParams(interceptor, interceptorMapping.getParams(), invocationContext); + if (asyncManager == null || !asyncManager.hasAsyncActionResult()) { + if (interceptors.hasNext()) { + final InterceptorMapping interceptorMapping = interceptors.next(); + String interceptorMsg = "interceptorMapping: " + interceptorMapping.getName(); + UtilTimerStack.push(interceptorMsg); + try { + Interceptor interceptor = interceptorMapping.getInterceptor(); + if (interceptor instanceof WithLazyParams) { + interceptor = lazyParamInjector.injectParams(interceptor, interceptorMapping.getParams(), invocationContext); + } + resultCode = interceptor.intercept(DefaultActionInvocation.this); + } finally { + UtilTimerStack.pop(interceptorMsg); } - resultCode = interceptor.intercept(DefaultActionInvocation.this); - } finally { - UtilTimerStack.pop(interceptorMsg); + } else { + resultCode = invokeActionOnly(); } } else { - resultCode = invokeActionOnly(); + Object asyncActionResult = asyncManager.getAsyncActionResult(); + if (asyncActionResult instanceof Throwable) { + throw new Exception((Throwable) asyncActionResult); + } + asyncAction = null; + resultCode = saveResult(proxy.getConfig(), asyncActionResult); } - // this is needed because the result will be executed, then control will return to the Interceptor, which will - // return above and flow through again - if (!executed) { - if (preResultListeners != null) { - LOG.trace("Executing PreResultListeners for result [{}]", result); - - for (Object preResultListener : preResultListeners) { - PreResultListener listener = (PreResultListener) preResultListener; - - String _profileKey = "preResultListener: "; - try { - UtilTimerStack.push(_profileKey); - listener.beforeResult(this, resultCode); - } - finally { - UtilTimerStack.pop(_profileKey); + if (asyncManager == null || asyncAction == null) { + // this is needed because the result will be executed, then control will return to the Interceptor, which will + // return above and flow through again + if (!executed) { + if (preResultListeners != null) { + LOG.trace("Executing PreResultListeners for result [{}]", result); + + for (Object preResultListener : preResultListeners) { + PreResultListener listener = (PreResultListener) preResultListener; + + String _profileKey = "preResultListener: "; + try { + UtilTimerStack.push(_profileKey); + listener.beforeResult(this, resultCode); + } finally { + UtilTimerStack.pop(_profileKey); + } } } - } - // now execute the result, if we're supposed to - if (proxy.getExecuteResult()) { - executeResult(); - } + // now execute the result, if we're supposed to + if (proxy.getExecuteResult()) { + executeResult(); + } - executed = true; + executed = true; + } + } else { + asyncManager.invokeAsyncAction(asyncAction); } return resultCode; @@ -495,6 +515,9 @@ protected String saveResult(ActionConfig actionConfig, Object methodResult) { // Wire the result automatically container.inject(explicitResult); return null; + } else if (methodResult instanceof Callable) { + asyncAction = (Callable) methodResult; + return null; } else { return (String) methodResult; } 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 dcc5fe72a6..1672f9ead4 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -561,8 +561,16 @@ public void serviceAction(HttpServletRequest request, HttpServletResponse respon String name = mapping.getName(); String method = mapping.getMethod(); - ActionProxy proxy = getContainer().getInstance(ActionProxyFactory.class).createActionProxy( - namespace, name, method, extraContext, true, false); + ActionProxy proxy; + + //check if we are probably in an async resuming + ActionInvocation inv = ActionContext.getContext().getActionInvocation(); + if (inv == null || inv.isExecuted()) { + proxy = getContainer().getInstance(ActionProxyFactory.class).createActionProxy(namespace, name, method, + extraContext, true, false); + } else { + proxy = inv.getProxy(); + } request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, proxy.getInvocation().getStack()); diff --git a/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java index 354cad7fa2..c216cdfb01 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/PrepareOperations.java @@ -79,9 +79,12 @@ public ActionContext createActionContext(HttpServletRequest request, HttpServlet // detected existing context, so we are probably in a forward ctx = new ActionContext(new HashMap<>(oldContext.getContextMap())); } else { - ValueStack stack = dispatcher.getContainer().getInstance(ValueStackFactory.class).createValueStack(); - stack.getContext().putAll(dispatcher.createContextMap(request, response, null)); - ctx = new ActionContext(stack.getContext()); + ctx = ServletActionContext.getActionContext(request); //checks if we are probably in an async + if (ctx == null) { + ValueStack stack = dispatcher.getContainer().getInstance(ValueStackFactory.class).createValueStack(); + stack.getContext().putAll(dispatcher.createContextMap(request, response, null)); + ctx = new ActionContext(stack.getContext()); + } } request.setAttribute(CLEANUP_RECURSION_COUNTER, counter); ActionContext.setContext(ctx); diff --git a/plugins/pom.xml b/plugins/pom.xml index c336d767e6..4a9c7647d4 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -56,6 +56,7 @@ spring testng tiles + servlet3 diff --git a/plugins/servlet3/pom.xml b/plugins/servlet3/pom.xml new file mode 100644 index 0000000000..36de62611a --- /dev/null +++ b/plugins/servlet3/pom.xml @@ -0,0 +1,46 @@ + + + + 4.0.0 + + org.apache.struts + struts2-plugins + 2.5.14-SNAPSHOT + + + struts2-servlet3-plugin + Struts 2 Servlet3 Plugin + jar + + + UTF-8 + + + + + javax.servlet + javax.servlet-api + 3.0.1 + provided + + + diff --git a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java b/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java new file mode 100644 index 0000000000..912cfe765d --- /dev/null +++ b/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java @@ -0,0 +1,65 @@ +/* + * 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 org.apache.struts2.servlet3.async; + +import java.util.concurrent.Callable; +import java.util.concurrent.Executor; + +/** + * A {@link Callable} with a timeout value and an {@link Executor}. + * + * @since 2.5.14 + */ +public class AsyncAction implements Callable { + private Callable callable; + private Long timeout; + private Executor executor; + + public AsyncAction(Callable callable) { + this.callable = callable; + } + + public AsyncAction(long timeout, Callable callable) { + this(callable); + this.timeout = timeout; + } + + public AsyncAction(Executor executor, Callable callable) { + this(callable); + this.executor = executor; + } + + public AsyncAction(long timeout, Executor executor, Callable callable) { + this(timeout, callable); + this.executor = executor; + } + + public Long getTimeout() { + return timeout; + } + + public Executor getExecutor() { + return executor; + } + + @Override + public Object call() throws Exception { + return callable.call(); + } +} diff --git a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java b/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java new file mode 100644 index 0000000000..f72f580369 --- /dev/null +++ b/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java @@ -0,0 +1,149 @@ +/* + * 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 org.apache.struts2.servlet3.async; + +import com.opensymphony.xwork2.AsyncManager; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.struts2.ServletActionContext; + +import javax.servlet.AsyncContext; +import javax.servlet.AsyncEvent; +import javax.servlet.AsyncListener; +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.concurrent.Callable; +import java.util.concurrent.Executor; +import java.util.concurrent.atomic.AtomicInteger; + +/** + * Implements {@link AsyncManager} to add support for invoke async actions via Servlet 3's API. + * + * @since 2.5.14 + */ +public class Servlet3AsyncManager implements AsyncManager, AsyncListener { + private static final Logger LOG = LogManager.getLogger(Servlet3AsyncManager.class); + private static final AtomicInteger threadCount = new AtomicInteger(0); + + private AsyncContext asyncContext; + private boolean asyncActionStarted; + private Boolean asyncCompleted; + private Object asyncActionResult; + + @Override + public void invokeAsyncAction(final Callable asyncAction) { + if (asyncActionStarted) { + return; + } + + Long timeout = null; + Executor executor = null; + if (asyncAction instanceof AsyncAction) { + AsyncAction customAsyncAction = (AsyncAction) asyncAction; + timeout = customAsyncAction.getTimeout(); + executor = customAsyncAction.getExecutor(); + } + + HttpServletRequest req = ServletActionContext.getRequest(); + asyncActionResult = null; + asyncCompleted = false; + + if (asyncContext == null || !req.isAsyncStarted()) { + asyncContext = req.startAsync(req, ServletActionContext.getResponse()); + asyncContext.addListener(this); + if (timeout != null) { + asyncContext.setTimeout(timeout); + } + } + asyncActionStarted = true; + LOG.debug("Async processing started for " + asyncContext); + + final Runnable task = new Runnable() { + @Override + public void run() { + try { + setAsyncActionResultAndDispatch(asyncAction.call()); + } catch (Throwable e) { + setAsyncActionResultAndDispatch(e); + } + } + }; + if (executor != null) { + executor.execute(task); + } else { + final Thread thread = new Thread(new Runnable() { + @Override + public void run() { + try { + task.run(); + } finally { + threadCount.decrementAndGet(); + } + } + }, this.getClass().getSimpleName() + "-" + threadCount.incrementAndGet()); + thread.start(); + } + } + + private void setAsyncActionResultAndDispatch(Object asyncActionResult) { + this.asyncActionResult = asyncActionResult; + + String log = "Async result [" + asyncActionResult + "] of " + asyncContext; + if (asyncCompleted) { + LOG.error(log + " - could not complete result executing due to timeout or network error"); + } else { + LOG.debug(log + " - dispatching request to execute result in container"); + asyncContext.dispatch(); + } + } + + @Override + public boolean hasAsyncActionResult() { + return asyncActionResult != null; + } + + @Override + public Object getAsyncActionResult() { + return asyncActionResult; + } + + @Override + public void onComplete(AsyncEvent asyncEvent) throws IOException { + asyncContext = null; + asyncCompleted = true; + } + + @Override + public void onTimeout(AsyncEvent asyncEvent) throws IOException { + LOG.debug("Processing timeout for " + asyncEvent.getAsyncContext()); + setAsyncActionResultAndDispatch("timeout"); + } + + @Override + public void onError(AsyncEvent asyncEvent) throws IOException { + Throwable e = asyncEvent.getThrowable(); + LOG.error("Processing error for " + asyncEvent.getAsyncContext(), e); + setAsyncActionResultAndDispatch(e); + } + + @Override + public void onStartAsync(AsyncEvent asyncEvent) throws IOException { + + } +} diff --git a/plugins/servlet3/src/main/resources/struts-plugin.xml b/plugins/servlet3/src/main/resources/struts-plugin.xml new file mode 100644 index 0000000000..9c6a75208f --- /dev/null +++ b/plugins/servlet3/src/main/resources/struts-plugin.xml @@ -0,0 +1,29 @@ + + + + + + + From 8b7c68171e8bfe16ea57eb6ec232778f1502e067 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 31 Oct 2017 09:17:46 +0330 Subject: [PATCH 0237/2288] WW-4871 Fixes java.text.NumberFormat.format's float to double conversion. --- .../xwork2/conversion/impl/StringConverter.java | 3 +++ .../conversion/impl/StringConverterTest.java | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index efbfeda6be..3e038983d8 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -67,6 +67,9 @@ protected String convertToString(Locale locale, Object value) { format.setGroupingUsed(false); if (BigDecimal.class.isInstance(value) || Double.class.isInstance(value) || Float.class.isInstance(value)) { format.setMaximumFractionDigits(Integer.MAX_VALUE); + if (Float.class.isInstance(value)) { + value = Double.valueOf(value.toString()); + } } return format.format(value); } else { diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index e809351c72..62f4ef2a23 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -41,6 +41,12 @@ public void testDoubleToStringConversionPL() throws Exception { // then does not lose integer digits assertEquals("17976931348623157" + StringUtils.repeat('0', 292), value); + + // when cannot be represented exactly with a finite binary number + value = converter.convertValue(context, null, null, null, 0.1d, null); + + // then produce the shortest decimal representation that can unambiguously identify the true value of the floating-point number + assertEquals("0,1", value); } public void testFloatToStringConversionPL() throws Exception { @@ -53,13 +59,19 @@ public void testFloatToStringConversionPL() throws Exception { Object value = converter.convertValue(context, null, null, null, Float.MIN_VALUE, null); // then does not lose fraction digits - assertEquals("0," + StringUtils.repeat('0', 44) + "1401298464324817", value); + assertEquals("0," + StringUtils.repeat('0', 44) + "14", value); // when has max integer digits value = converter.convertValue(context, null, null, null, Float.MAX_VALUE, null); // then does not lose integer digits - assertEquals("34028234663852886" + StringUtils.repeat('0', 22), value); + assertEquals("34028235" + StringUtils.repeat('0', 31), value); + + // when cannot be represented exactly with a finite binary number + value = converter.convertValue(context, null, null, null, 0.1f, null); + + // then produce the shortest decimal representation that can unambiguously identify the true value of the floating-point number + assertEquals("0,1", value); } public void testBigDecimalToStringConversionPL() throws Exception { From 92502510df5ed98267208396f0bbaa8cb67dd802 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 4 Nov 2017 09:37:12 +0330 Subject: [PATCH 0238/2288] WW-4846 Adds unit tests --- .../apache/struts2/json/JSONResultTest.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java index c5f6493337..5aaa8eb9d7 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java @@ -35,8 +35,11 @@ import javax.servlet.http.HttpServletResponse; +import org.aopalliance.intercept.MethodInterceptor; +import org.aopalliance.intercept.MethodInvocation; import org.apache.struts2.StrutsStatics; import org.apache.struts2.StrutsTestCase; +import org.springframework.aop.framework.ProxyFactory; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.mock.web.MockHttpServletResponse; import org.springframework.mock.web.MockServletContext; @@ -153,6 +156,43 @@ public void testExcludeNullPropeties() throws Exception { assertEquals(normalizedExpected, normalizedActual); } + public void testNotTraverseOrIncludeProxyInfo() throws Exception { + JSONResult result = new JSONResult(); + JSONUtil jsonUtil = new JSONUtil(); + JSONWriter writer = new DefaultJSONWriter(); + jsonUtil.setWriter(writer); + result.setJsonUtil(jsonUtil); + ProxyFactory factory = new ProxyFactory(new TestAction2()); + factory.addAdvice(new MethodInterceptor() { + @Override + public Object invoke(MethodInvocation invocation) throws Throwable { + // fail on any traverse except TestAction2.getName() + if (!TestAction2.class.getMethod("getName").equals(invocation.getMethod())) { + throw new Throwable(invocation.getMethod() + " should not traversed!"); + } + return invocation.proceed(); + } + }); + Object proxiedAction = factory.getProxy(); + stack.push(proxiedAction); + + this.invocation.setAction(proxiedAction); + try { + result.execute(this.invocation); + fail("An exception expected via proxy info traverse because writer.excludeProxyProperties is false!"); + } catch (Exception ignored) { + } + + writer.setExcludeProxyProperties(true); + result.execute(this.invocation); + + String out = response.getContentAsString(); + + String normalizedActual = TestUtils.normalize(out, true); + String normalizedExpected = "{\"name\":\"name\"}"; + assertEquals(normalizedExpected, normalizedActual); + } + public void testWrapPrefix() throws Exception { JSONResult result = new JSONResult(); result.setWrapPrefix("_prefix_"); From fb0a6120db58ba33d331816444be2908295d82a2 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 4 Nov 2017 10:22:25 +0330 Subject: [PATCH 0239/2288] WW-4846 Fixes unit tests for JDK8 --- .../apache/struts2/json/JSONResultTest.java | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java index 5aaa8eb9d7..5062103248 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java @@ -162,34 +162,29 @@ public void testNotTraverseOrIncludeProxyInfo() throws Exception { JSONWriter writer = new DefaultJSONWriter(); jsonUtil.setWriter(writer); result.setJsonUtil(jsonUtil); - ProxyFactory factory = new ProxyFactory(new TestAction2()); - factory.addAdvice(new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - // fail on any traverse except TestAction2.getName() - if (!TestAction2.class.getMethod("getName").equals(invocation.getMethod())) { - throw new Throwable(invocation.getMethod() + " should not traversed!"); - } - return invocation.proceed(); - } - }); - Object proxiedAction = factory.getProxy(); + Object proxiedAction = new ProxyFactory(new TestAction2()).getProxy(); stack.push(proxiedAction); this.invocation.setAction(proxiedAction); try { result.execute(this.invocation); - fail("An exception expected via proxy info traverse because writer.excludeProxyProperties is false!"); } catch (Exception ignored) { } - writer.setExcludeProxyProperties(true); - result.execute(this.invocation); - String out = response.getContentAsString(); String normalizedActual = TestUtils.normalize(out, true); String normalizedExpected = "{\"name\":\"name\"}"; + assertNotSame(normalizedExpected, normalizedActual); + response.setCommitted(false); + response.reset(); + + writer.setExcludeProxyProperties(true); + result.execute(this.invocation); + + out = response.getContentAsString(); + + normalizedActual = TestUtils.normalize(out, true); assertEquals(normalizedExpected, normalizedActual); } From b60425e5348ad0b4e503e442594417d93dd61856 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 5 Nov 2017 20:57:31 +0330 Subject: [PATCH 0240/2288] WW-4871 Documents our manual jdk fix by a TODO --- .../com/opensymphony/xwork2/conversion/impl/StringConverter.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index 3e038983d8..f7ad4ead40 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -67,6 +67,7 @@ protected String convertToString(Locale locale, Object value) { format.setGroupingUsed(false); if (BigDecimal.class.isInstance(value) || Double.class.isInstance(value) || Float.class.isInstance(value)) { format.setMaximumFractionDigits(Integer.MAX_VALUE); + // TODO: delete this if statement when jdk fixed java.text.NumberFormat.format's behavior with Float if (Float.class.isInstance(value)) { value = Double.valueOf(value.toString()); } From d781f7181677711f0c3211f77219b9fc1f5e5eab Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 7 Nov 2017 13:09:10 +0100 Subject: [PATCH 0241/2288] Adds missing header with a license --- .../xwork2/util/fs/JarEntryRevisionTest.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java index 04826d502d..4764d0410e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java @@ -1,3 +1,21 @@ +/* + * 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.fs; import com.opensymphony.xwork2.FileManager; From e0d83b840f64eb7581134c925d70cc472914d50c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 7 Nov 2017 18:06:51 +0330 Subject: [PATCH 0242/2288] WW-4871 Tests if StringConverter changes float input parameter --- .../xwork2/conversion/impl/StringConverterTest.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index 62f4ef2a23..a2c0abc976 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -68,10 +68,14 @@ public void testFloatToStringConversionPL() throws Exception { assertEquals("34028235" + StringUtils.repeat('0', 31), value); // when cannot be represented exactly with a finite binary number - value = converter.convertValue(context, null, null, null, 0.1f, null); + Object f1 = 0.1f; + Object f2 = f1; // save the Object's current reference to test if following call will change it + value = converter.convertValue(context, null, null, null, f1, null); // then produce the shortest decimal representation that can unambiguously identify the true value of the floating-point number assertEquals("0,1", value); + // and does not change the input parameter, f1 + assertTrue("should not change the input parameter, value", f1 == f2); } public void testBigDecimalToStringConversionPL() throws Exception { From 2f7dda7ed6e5bf34739ecaaea8bc8bfadd199be3 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 24 Mar 2017 11:02:35 +0100 Subject: [PATCH 0243/2288] Uses OGNL without #context magical key --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d1acf40863..7d931a8f4c 100644 --- a/pom.xml +++ b/pom.xml @@ -98,7 +98,7 @@ UTF-8 4.1.9.RELEASE - 3.1.15 + 3.2.3 5.2 3.0.7 1.0.6 From d63cc99f24c0576e5b1c14d3feb09ba8c87f5262 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 24 Mar 2017 11:03:30 +0100 Subject: [PATCH 0244/2288] Adjusts OGNL usage to avoid modify immutable context --- .../xwork2/conversion/TypeConverter.java | 9 ++++--- .../conversion/impl/DefaultTypeConverter.java | 27 +++++++++++-------- .../opensymphony/xwork2/ognl/OgnlUtil.java | 18 ------------- .../xwork2/ognl/OgnlValueStack.java | 1 - 4 files changed, 21 insertions(+), 34 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java index 19b2626780..29268b874a 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java @@ -44,9 +44,10 @@ public interface TypeConverter * @return Converted value of type toType or TypeConverter.NoConversionPossible to indicate that the conversion was not possible. */ - public Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType); + Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType); - public static final Object NO_CONVERSION_POSSIBLE = "ognl.NoConversionPossible"; - - public static final String TYPE_CONVERTER_CONTEXT_KEY = "_typeConverter"; + Object NO_CONVERSION_POSSIBLE = "ognl.NoConversionPossible"; + + @Deprecated + String TYPE_CONVERTER_CONTEXT_KEY = "_typeConverter"; } \ No newline at end of file diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java index 15ecbcf7b5..e8fdb2c007 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/DefaultTypeConverter.java @@ -19,12 +19,12 @@ package com.opensymphony.xwork2.conversion.impl; import com.opensymphony.xwork2.ActionContext; -import com.opensymphony.xwork2.LocaleProvider; import com.opensymphony.xwork2.LocaleProviderFactory; import com.opensymphony.xwork2.conversion.TypeConverter; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.ognl.XWorkTypeConverterWrapper; +import ognl.OgnlContext; import java.lang.reflect.Array; import java.lang.reflect.Member; @@ -81,17 +81,22 @@ public Object convertValue(Map context, Object target, Member me return convertValue(context, value, toType); } - public TypeConverter getTypeConverter( Map context ) - { - Object obj = context.get(TypeConverter.TYPE_CONVERTER_CONTEXT_KEY); - if (obj instanceof TypeConverter) { - return (TypeConverter) obj; - - // for backwards-compatibility - } else if (obj instanceof ognl.TypeConverter) { - return new XWorkTypeConverterWrapper((ognl.TypeConverter) obj); + public TypeConverter getTypeConverter( Map context ) { + ognl.TypeConverter converter = null; + + if (context instanceof OgnlContext) { + converter = ((OgnlContext) context).getTypeConverter(); + } + + if (converter != null) { + if (converter instanceof TypeConverter) { + return (TypeConverter) converter; + } else { + return new XWorkTypeConverterWrapper(converter); + } } - return null; + + return null; } /** diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index 0f2d78e5fd..17bbf9c1b4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -184,8 +184,6 @@ public void setProperties(Map props, Object o, Map co return; } - Ognl.setTypeConverter(context, getTypeConverterFromContext(context)); - Object oldRoot = Ognl.getRoot(context); Ognl.setRoot(context, o); @@ -245,7 +243,6 @@ public void setProperty(String name, Object value, Object o, Map * problems setting the property */ public void setProperty(String name, Object value, Object o, Map context, boolean throwPropertyExceptions) { - Ognl.setTypeConverter(context, getTypeConverterFromContext(context)); Object oldRoot = Ognl.getRoot(context); Ognl.setRoot(context, o); @@ -487,11 +484,8 @@ public void copy(final Object from, final Object to, final Map c return; } - TypeConverter converter = getTypeConverterFromContext(context); final Map contextFrom = createDefaultContext(from, null); - Ognl.setTypeConverter(contextFrom, converter); final Map contextTo = createDefaultContext(to, null); - Ognl.setTypeConverter(contextTo, converter); PropertyDescriptor[] fromPds; PropertyDescriptor[] toPds; @@ -667,18 +661,6 @@ void internalSetProperty(String name, Object value, Object o, Map context) { - /*ValueStack stack = (ValueStack) context.get(ActionContext.VALUE_STACK); - Container cont = (Container)stack.getContext().get(ActionContext.CONTAINER); - if (cont != null) { - return new OgnlTypeConverterWrapper(cont.getInstance(XWorkConverter.class)); - } else { - throw new IllegalArgumentException("Cannot find type converter in context map"); - } - */ - return defaultConverter; - } - protected Map createDefaultContext(Object root) { return createDefaultContext(root, null); } diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java index ab580691b4..d766241e83 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java @@ -96,7 +96,6 @@ protected void setRoot(XWorkConverter xworkConverter, CompoundRootAccessor acces this.securityMemberAccess = new SecurityMemberAccess(allowStaticMethodAccess); this.context = Ognl.createDefaultContext(this.root, accessor, new OgnlTypeConverterWrapper(xworkConverter), securityMemberAccess); context.put(VALUE_STACK, this); - Ognl.setClassResolver(context, accessor); ((OgnlContext) context).setTraceEvaluations(false); ((OgnlContext) context).setKeepLastEvaluation(false); } From 5cd409d382e00b190bfe4e957c4167d06b8f9da1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 22 May 2017 08:30:46 +0200 Subject: [PATCH 0245/2288] Uses OGNL 3.2.2 which always requires MemberAccess --- .../opensymphony/xwork2/ActionContext.java | 6 +++ .../opensymphony/xwork2/ognl/OgnlUtil.java | 2 +- .../xwork2/ognl/OgnlValueStack.java | 2 +- .../xwork2/ognl/SecurityMemberAccess.java | 38 +++++++++++--- .../apache/struts2/views/jsp/ui/OgnlTool.java | 10 ++-- core/src/main/resources/struts-default.xml | 1 - .../xwork2/DefaultActionInvocationTest.java | 48 +++++++----------- .../impl/AnnotationXWorkConverterTest.java | 1 + .../xwork2/ognl/SetPropertiesTest.java | 2 +- .../factory/StrutsResultFactoryTest.java | 4 +- .../ServletActionRedirectResultTest.java | 2 +- .../result/ServletDispatcherResultTest.java | 9 +--- .../result/ServletRedirectResultTest.java | 3 +- .../OValValidationInterceptor.java | 49 +++++++++++++++++++ 14 files changed, 118 insertions(+), 59 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java index 4e4367fcb3..e2c8b80484 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionContext.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionContext.java @@ -18,8 +18,10 @@ */ package com.opensymphony.xwork2; +import com.opensymphony.xwork2.conversion.TypeConverter; import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.util.ValueStack; +import ognl.OgnlContext; import org.apache.struts2.dispatcher.HttpParameters; import java.io.Serializable; @@ -184,6 +186,10 @@ public void setContextMap(Map contextMap) { * @return the context map. */ public Map getContextMap() { + Map context = getContext().context; + if (context instanceof OgnlContext) { + ((OgnlContext) context).put(TypeConverter.TYPE_CONVERTER_CONTEXT_KEY, ((OgnlContext) context).getTypeConverter()); + } return context; } diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java index 17bbf9c1b4..0982936dc6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java @@ -677,7 +677,7 @@ protected Map createDefaultContext(Object root, ClassResolver classResolver) { memberAccess.setExcludedPackageNames(excludedPackageNames); memberAccess.setDisallowProxyMemberAccess(disallowProxyMemberAccess); - return Ognl.createDefaultContext(root, resolver, defaultConverter, memberAccess); + return Ognl.createDefaultContext(root, memberAccess, resolver, defaultConverter); } private interface OgnlTask { diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java index d766241e83..07464e04df 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java @@ -94,7 +94,7 @@ protected void setRoot(XWorkConverter xworkConverter, CompoundRootAccessor acces boolean allowStaticMethodAccess) { this.root = compoundRoot; this.securityMemberAccess = new SecurityMemberAccess(allowStaticMethodAccess); - this.context = Ognl.createDefaultContext(this.root, accessor, new OgnlTypeConverterWrapper(xworkConverter), securityMemberAccess); + this.context = Ognl.createDefaultContext(this.root, securityMemberAccess, accessor, new OgnlTypeConverterWrapper(xworkConverter)); context.put(VALUE_STACK, this); ((OgnlContext) context).setTraceEvaluations(false); ((OgnlContext) context).setKeepLastEvaluation(false); diff --git a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java index 905ef775cb..092cb8aad4 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java +++ b/core/src/main/java/com/opensymphony/xwork2/ognl/SecurityMemberAccess.java @@ -19,11 +19,13 @@ package com.opensymphony.xwork2.ognl; import com.opensymphony.xwork2.util.ProxyUtil; -import ognl.DefaultMemberAccess; +import ognl.MemberAccess; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import java.lang.reflect.*; +import java.lang.reflect.AccessibleObject; +import java.lang.reflect.Member; +import java.lang.reflect.Modifier; import java.util.Collections; import java.util.Map; import java.util.Set; @@ -34,7 +36,7 @@ * Allows access decisions to be made on the basis of whether a member is static or not. * Also blocks or allows access to properties. */ -public class SecurityMemberAccess extends DefaultMemberAccess { +public class SecurityMemberAccess implements MemberAccess { private static final Logger LOG = LogManager.getLogger(SecurityMemberAccess.class); @@ -47,7 +49,6 @@ public class SecurityMemberAccess extends DefaultMemberAccess { private boolean disallowProxyMemberAccess; public SecurityMemberAccess(boolean method) { - super(false); allowStaticMethodAccess = method; } @@ -55,6 +56,28 @@ public boolean getAllowStaticMethodAccess() { return allowStaticMethodAccess; } + @Override + public Object setup(Map context, Object target, Member member, String propertyName) { + Object result = null; + + if (isAccessible(context, target, member, propertyName)) { + AccessibleObject accessible = (AccessibleObject) member; + + if (!accessible.isAccessible()) { + result = Boolean.TRUE; + accessible.setAccessible(true); + } + } + return result; + } + + @Override + public void restore(Map context, Object target, Member member, String propertyName, Object state) { + if (state != null) { + ((AccessibleObject) member).setAccessible((Boolean) state); + } + } + @Override public boolean isAccessible(Map context, Object target, Member member, String propertyName) { LOG.debug("Checking access for [target: {}, member: {}, property: {}]", target, member, propertyName); @@ -105,8 +128,7 @@ public boolean isAccessible(Map context, Object target, Member member, String pr return false; } - // Now check for standard scope rules - return super.isAccessible(context, target, member, propertyName) && isAcceptableProperty(propertyName); + return Modifier.isPublic(member.getModifiers()) && isAcceptableProperty(propertyName); } protected boolean checkStaticMethodAccess(Member member) { @@ -132,7 +154,7 @@ protected boolean isPackageExcluded(Package targetPackage, Package memberPackage if (targetPackage == null || memberPackage == null) { LOG.warn("The use of the default (unnamed) package is discouraged!"); } - + final String targetPackageName = targetPackage == null ? "" : targetPackage.getName(); final String memberPackageName = memberPackage == null ? "" : memberPackage.getName(); @@ -142,7 +164,7 @@ protected boolean isPackageExcluded(Package targetPackage, Package memberPackage } } - for (String packageName: excludedPackageNames) { + for (String packageName : excludedPackageNames) { if (targetPackageName.startsWith(packageName) || targetPackageName.equals(packageName) || memberPackageName.startsWith(packageName) || memberPackageName.equals(packageName)) { return true; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java b/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java index 952575503f..9f6e8513a3 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/ui/OgnlTool.java @@ -18,7 +18,7 @@ */ package org.apache.struts2.views.jsp.ui; -import ognl.Ognl; +import com.opensymphony.xwork2.ActionContext; import ognl.OgnlException; import com.opensymphony.xwork2.inject.Inject; @@ -30,18 +30,18 @@ public class OgnlTool { private OgnlUtil ognlUtil; - + public OgnlTool() { } - + @Inject public void setOgnlUtil(OgnlUtil ognlUtil) { this.ognlUtil = ognlUtil; } - + public Object findValue(String expr, Object context) { try { - return Ognl.getValue(ognlUtil.compile(expr), context); + return ognlUtil.getValue(expr, ActionContext.getContext().getContextMap(), context); } catch (OgnlException e) { return null; } diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml index 27462a1e4f..204c5f1c04 100644 --- a/core/src/main/resources/struts-default.xml +++ b/core/src/main/resources/struts-default.xml @@ -49,7 +49,6 @@ ognl.ClassResolver, ognl.TypeConverter, ognl.MemberAccess, - ognl.DefaultMemberAccess, com.opensymphony.xwork2.ognl.SecurityMemberAccess, com.opensymphony.xwork2.ActionContext" /> diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java index 334839082a..4e8eea5734 100644 --- a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java @@ -105,11 +105,8 @@ public void testDeserialization() throws Exception { public void testInvokingExistingExecuteMethod() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); SimpleAction action = new SimpleAction() { @Override @@ -120,6 +117,7 @@ public String execute() throws Exception { MockActionProxy proxy = new MockActionProxy(); proxy.setMethod("execute"); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); @@ -132,11 +130,8 @@ public String execute() throws Exception { public void testInvokingMissingMethod() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); SimpleAction action = new SimpleAction() { @Override @@ -154,6 +149,7 @@ public boolean hasUnknownHandlers() { } }; + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); dai.unknownHandlerManager = uhm; @@ -173,11 +169,8 @@ public boolean hasUnknownHandlers() { public void testInvokingExistingMethodThatThrowsException() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); SimpleAction action = new SimpleAction() { @Override @@ -188,6 +181,7 @@ public String execute() throws Exception { MockActionProxy proxy = new MockActionProxy(); proxy.setMethod("execute"); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); @@ -206,11 +200,8 @@ public String execute() throws Exception { public void testUnknownHandlerManagerThatThrowsException() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); UnknownHandlerManager uhm = new DefaultUnknownHandlerManager() { @Override @@ -227,6 +218,7 @@ public Object handleUnknownMethod(Object action, String methodName) throws NoSuc MockActionProxy proxy = new MockActionProxy(); proxy.setMethod("notExists"); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); dai.unknownHandlerManager = uhm; @@ -247,11 +239,8 @@ public Object handleUnknownMethod(Object action, String methodName) throws NoSuc public void testUnknownHandlerManagerThatReturnsNull() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); UnknownHandlerManager uhm = new DefaultUnknownHandlerManager() { @Override @@ -268,6 +257,7 @@ public Object handleUnknownMethod(Object action, String methodName) throws NoSuc MockActionProxy proxy = new MockActionProxy(); proxy.setMethod("notExists"); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); dai.unknownHandlerManager = uhm; @@ -287,11 +277,8 @@ public Object handleUnknownMethod(Object action, String methodName) throws NoSuc public void testUnknownHandlerManagerThatReturnsSuccess() throws Exception { // given - DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { - public ValueStack getStack() { - return new StubValueStack(); - } - }; + DefaultActionInvocation dai = new DefaultActionInvocation(ActionContext.getContext().getContextMap(), false); + container.inject(dai); UnknownHandlerManager uhm = new DefaultUnknownHandlerManager() { @Override @@ -308,6 +295,7 @@ public Object handleUnknownMethod(Object action, String methodName) throws NoSuc MockActionProxy proxy = new MockActionProxy(); proxy.setMethod("notExists"); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); dai.proxy = proxy; dai.ognlUtil = new OgnlUtil(); dai.unknownHandlerManager = uhm; diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/AnnotationXWorkConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/AnnotationXWorkConverterTest.java index bca99e5c24..6d9398bbe9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/AnnotationXWorkConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/AnnotationXWorkConverterTest.java @@ -24,6 +24,7 @@ import com.opensymphony.xwork2.util.Bar; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.reflection.ReflectionContextState; +import ognl.Ognl; import ognl.OgnlException; import ognl.OgnlRuntime; diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java index c19895ff7f..68d792d8d0 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java @@ -57,7 +57,7 @@ public void setUp() throws Exception { } public void testOgnlUtilEmptyStringAsLong() { Bar bar = new Bar(); - Map context = Ognl.createDefaultContext(bar); + Map context = Ognl.createDefaultContext(bar, new SecurityMemberAccess(false)); context.put(XWorkConverter.REPORT_CONVERSION_ERRORS, Boolean.TRUE); bar.setId(null); diff --git a/core/src/test/java/org/apache/struts2/factory/StrutsResultFactoryTest.java b/core/src/test/java/org/apache/struts2/factory/StrutsResultFactoryTest.java index 694f32cb1c..37f43c5e18 100644 --- a/core/src/test/java/org/apache/struts2/factory/StrutsResultFactoryTest.java +++ b/core/src/test/java/org/apache/struts2/factory/StrutsResultFactoryTest.java @@ -18,6 +18,7 @@ */ package org.apache.struts2.factory; +import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.Result; import com.opensymphony.xwork2.config.entities.ResultConfig; @@ -39,10 +40,9 @@ public void testAcceptParams() throws Exception { params.put("accept", "ok"); params.put("reject", "bad"); ResultConfig config = new ResultConfig.Builder("struts", MyResult.class.getName()).addParams(params).build(); - Map context = new HashMap(); // when - Result result = builder.buildResult(config, context); + Result result = builder.buildResult(config, ActionContext.getContext().getContextMap()); // then assertEquals("ok", ((MyResult)result).getAccept()); diff --git a/core/src/test/java/org/apache/struts2/result/ServletActionRedirectResultTest.java b/core/src/test/java/org/apache/struts2/result/ServletActionRedirectResultTest.java index b7ed61c41e..e0c955b40c 100644 --- a/core/src/test/java/org/apache/struts2/result/ServletActionRedirectResultTest.java +++ b/core/src/test/java/org/apache/struts2/result/ServletActionRedirectResultTest.java @@ -179,7 +179,7 @@ public void testBuildResultWithParameter() throws Exception { .build(); ObjectFactory factory = container.getInstance(ObjectFactory.class); - ServletActionRedirectResult result = (ServletActionRedirectResult) factory.buildResult(resultConfig, new HashMap()); + ServletActionRedirectResult result = (ServletActionRedirectResult) factory.buildResult(resultConfig, ActionContext.getContext().getContextMap()); assertNotNull(result); } diff --git a/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java b/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java index 7578f54d0f..4a90ae443d 100644 --- a/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java +++ b/core/src/test/java/org/apache/struts2/result/ServletDispatcherResultTest.java @@ -57,8 +57,6 @@ public void testInclude() { Mock responseMock = new Mock(HttpServletResponse.class); responseMock.expectAndReturn("isCommitted", Boolean.TRUE); - ActionContext ac = new ActionContext(Ognl.createDefaultContext(null)); - ActionContext.setContext(ac); ServletActionContext.setRequest((HttpServletRequest) requestMock.proxy()); ServletActionContext.setResponse((HttpServletResponse) responseMock.proxy()); @@ -92,8 +90,6 @@ public void testSimple() { Mock responseMock = new Mock(HttpServletResponse.class); responseMock.expectAndReturn("isCommitted", Boolean.FALSE); - ActionContext ac = new ActionContext(Ognl.createDefaultContext(null)); - ActionContext.setContext(ac); ServletActionContext.setRequest((HttpServletRequest) requestMock.proxy()); ServletActionContext.setResponse((HttpServletResponse) responseMock.proxy()); @@ -127,14 +123,11 @@ public void testWithParameter() { Mock responseMock = new Mock(HttpServletResponse.class); responseMock.expectAndReturn("isCommitted", Boolean.FALSE); - ActionContext ac = new ActionContext(Ognl.createDefaultContext(null)); - ac.setContainer(container); - ActionContext.setContext(ac); ServletActionContext.setRequest((HttpServletRequest) requestMock.proxy()); ServletActionContext.setResponse((HttpServletResponse) responseMock.proxy()); MockActionInvocation mockActionInvocation = new MockActionInvocation(); - mockActionInvocation.setInvocationContext(ac); + mockActionInvocation.setInvocationContext(ActionContext.getContext()); mockActionInvocation.setStack(container.getInstance(ValueStackFactory.class).createValueStack()); try { diff --git a/core/src/test/java/org/apache/struts2/result/ServletRedirectResultTest.java b/core/src/test/java/org/apache/struts2/result/ServletRedirectResultTest.java index b17907f044..aa15c3e0bc 100644 --- a/core/src/test/java/org/apache/struts2/result/ServletRedirectResultTest.java +++ b/core/src/test/java/org/apache/struts2/result/ServletRedirectResultTest.java @@ -34,6 +34,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.opensymphony.xwork2.ognl.SecurityMemberAccess; import ognl.Ognl; import org.apache.struts2.ServletActionContext; @@ -342,7 +343,7 @@ protected void setUp() throws Exception { ActionConfig actionConfig = new ActionConfig.Builder("", "", "") .addResultConfigs(results).build(); - ActionContext ac = new ActionContext(Ognl.createDefaultContext(null)); + ActionContext ac = new ActionContext(Ognl.createDefaultContext(null, new SecurityMemberAccess(false))); ac.put(ServletActionContext.HTTP_REQUEST, requestMock.proxy()); ac.put(ServletActionContext.HTTP_RESPONSE, responseMock.proxy()); MockActionInvocation ai = new MockActionInvocation(); diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java index bf660c25bc..ccc2edf55c 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java @@ -26,7 +26,13 @@ import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; import com.opensymphony.xwork2.interceptor.PrefixMethodInvocationUtil; +import com.opensymphony.xwork2.ognl.OgnlUtil; +import com.opensymphony.xwork2.ognl.SecurityMemberAccess; import com.opensymphony.xwork2.util.ValueStack; +import net.sf.oval.exception.ExpressionEvaluationException; +import net.sf.oval.expression.ExpressionLanguage; +import net.sf.oval.expression.ExpressionLanguageOGNLImpl; +import ognl.*; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; @@ -43,6 +49,8 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.List; +import java.util.Map; +import java.util.Objects; /* This interceptor provides validation using the OVal validation framework @@ -59,6 +67,8 @@ public class OValValidationInterceptor extends MethodFilterInterceptor { protected boolean validateJPAAnnotations; protected TextProviderFactory textProviderFactory; + private ExpressionLanguage ognlExpressionLanguage; + @Inject public void setValidationManager(OValValidationManager validationManager) { this.validationManager = validationManager; @@ -77,6 +87,16 @@ public void setValidateJPAAnnotations(String validateJPAAnnotations) { this.validateJPAAnnotations = Boolean.parseBoolean(validateJPAAnnotations); } + @Inject + public void setOgnlUtil(OgnlUtil ognlUtil) { + SecurityMemberAccess securityMemberAccess = new SecurityMemberAccess(false); + securityMemberAccess.setExcludedClasses(ognlUtil.getExcludedClasses()); + securityMemberAccess.setExcludedPackageNamePatterns(ognlUtil.getExcludedPackageNamePatterns()); + securityMemberAccess.setExcludedPackageNames(ognlUtil.getExcludedPackageNames()); + + ognlExpressionLanguage = new ExpressionLanguageOGNL(securityMemberAccess); + } + /** * Determines if {@link com.opensymphony.xwork2.Validateable}'s validate() should be called, * as well as methods whose name that start with "validate". Defaults to "true". @@ -153,6 +173,7 @@ protected void performOValValidation(Object action, ValueStack valueStack, Strin List configurers = validationManager.getConfigurers(clazz, context, validateJPAAnnotations); Validator validator = configurers.isEmpty() ? new Validator() : new Validator(configurers); + validator.addExpressionLanguage("ognl", ognlExpressionLanguage); //if the method is annotated with a @Profiles annotation, use those profiles Method method = clazz.getMethod(methodName, new Class[0]); if (method != null) { @@ -284,4 +305,32 @@ public String getMessage() { return message; } } + } + +class ExpressionLanguageOGNL extends ExpressionLanguageOGNLImpl { + + private static final Logger LOG = LogManager.getLogger(ExpressionLanguageOGNL.class); + + private MemberAccess memberAccess; + + public ExpressionLanguageOGNL(MemberAccess memberAccess) { + this.memberAccess = memberAccess; + } + + public Object evaluate(final String expression, final Map values) throws ExpressionEvaluationException { + try { + final OgnlContext ctx = (OgnlContext) Ognl.createDefaultContext(null, memberAccess); + + for (final Map.Entry entry : values.entrySet()) { + ctx.put(entry.getKey(), entry.getValue()); + } + + LOG.debug("Evaluating OGNL expression: {1}", expression); + return Ognl.getValue(expression, ctx, ctx); + } catch (final OgnlException ex) { + throw new ExpressionEvaluationException("Evaluating script with OGNL failed.", ex); + } + } +} + From 86323c34e0f37b515b9441f68b0426b6615a55d6 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 22 May 2017 09:43:17 +0200 Subject: [PATCH 0246/2288] Reuses existing context instead of creating a new MemberAccess each time --- .../OValValidationInterceptor.java | 35 +++++-------------- 1 file changed, 8 insertions(+), 27 deletions(-) diff --git a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java index ccc2edf55c..f7d7aa24fc 100644 --- a/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java +++ b/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java @@ -18,6 +18,7 @@ */ package org.apache.struts2.oval.interceptor; +import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.ModelDriven; @@ -26,13 +27,12 @@ import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; import com.opensymphony.xwork2.interceptor.PrefixMethodInvocationUtil; -import com.opensymphony.xwork2.ognl.OgnlUtil; -import com.opensymphony.xwork2.ognl.SecurityMemberAccess; import com.opensymphony.xwork2.util.ValueStack; import net.sf.oval.exception.ExpressionEvaluationException; import net.sf.oval.expression.ExpressionLanguage; import net.sf.oval.expression.ExpressionLanguageOGNLImpl; -import ognl.*; +import ognl.Ognl; +import ognl.OgnlException; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.opensymphony.xwork2.validator.DelegatingValidatorContext; @@ -50,7 +50,6 @@ import java.lang.reflect.Method; import java.util.List; import java.util.Map; -import java.util.Objects; /* This interceptor provides validation using the OVal validation framework @@ -69,6 +68,10 @@ public class OValValidationInterceptor extends MethodFilterInterceptor { private ExpressionLanguage ognlExpressionLanguage; + public OValValidationInterceptor() { + ognlExpressionLanguage = new ExpressionLanguageOGNL(); + } + @Inject public void setValidationManager(OValValidationManager validationManager) { this.validationManager = validationManager; @@ -87,16 +90,6 @@ public void setValidateJPAAnnotations(String validateJPAAnnotations) { this.validateJPAAnnotations = Boolean.parseBoolean(validateJPAAnnotations); } - @Inject - public void setOgnlUtil(OgnlUtil ognlUtil) { - SecurityMemberAccess securityMemberAccess = new SecurityMemberAccess(false); - securityMemberAccess.setExcludedClasses(ognlUtil.getExcludedClasses()); - securityMemberAccess.setExcludedPackageNamePatterns(ognlUtil.getExcludedPackageNamePatterns()); - securityMemberAccess.setExcludedPackageNames(ognlUtil.getExcludedPackageNames()); - - ognlExpressionLanguage = new ExpressionLanguageOGNL(securityMemberAccess); - } - /** * Determines if {@link com.opensymphony.xwork2.Validateable}'s validate() should be called, * as well as methods whose name that start with "validate". Defaults to "true". @@ -312,22 +305,10 @@ class ExpressionLanguageOGNL extends ExpressionLanguageOGNLImpl { private static final Logger LOG = LogManager.getLogger(ExpressionLanguageOGNL.class); - private MemberAccess memberAccess; - - public ExpressionLanguageOGNL(MemberAccess memberAccess) { - this.memberAccess = memberAccess; - } - public Object evaluate(final String expression, final Map values) throws ExpressionEvaluationException { try { - final OgnlContext ctx = (OgnlContext) Ognl.createDefaultContext(null, memberAccess); - - for (final Map.Entry entry : values.entrySet()) { - ctx.put(entry.getKey(), entry.getValue()); - } - LOG.debug("Evaluating OGNL expression: {1}", expression); - return Ognl.getValue(expression, ctx, ctx); + return Ognl.getValue(expression, ActionContext.getContext().getContextMap(), values); } catch (final OgnlException ex) { throw new ExpressionEvaluationException("Evaluating script with OGNL failed.", ex); } From 8e93446c1ceb6d0f648457ba2bb1a256d14b25ea Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 17 Jul 2017 12:41:07 +0200 Subject: [PATCH 0247/2288] Reformats code --- .../xwork2/conversion/TypeConverter.java | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java index 29268b874a..602eeaf6d6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java @@ -23,29 +23,29 @@ /** * Interface for accessing the type conversion facilities within a context. - * + * * This interface was copied from OGNL's TypeConverter - * + * * @author Luke Blanshard (blanshlu@netscape.net) * @author Drew Davidson (drew@ognl.org) */ -public interface TypeConverter -{ +public interface TypeConverter { /** - * Converts the given value to a given type. The OGNL context, target, member and - * name of property being set are given. This method should be able to handle - * conversion in general without any context, target, member or property name specified. - * @param context context under which the conversion is being done - * @param target target object in which the property is being set - * @param member member (Constructor, Method or Field) being set - * @param propertyName property name being set - * @param value value to be converted - * @param toType type to which value is converted - * @return Converted value of type toType or TypeConverter.NoConversionPossible to indicate that the - conversion was not possible. + * Converts the given value to a given type. The OGNL context, target, member and + * name of property being set are given. This method should be able to handle + * conversion in general without any context, target, member or property name specified. + * + * @param context context under which the conversion is being done + * @param target target object in which the property is being set + * @param member member (Constructor, Method or Field) being set + * @param propertyName property name being set + * @param value value to be converted + * @param toType type to which value is converted + * @return Converted value of type toType or TypeConverter.NoConversionPossible to indicate that the + * conversion was not possible. */ Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType); - + Object NO_CONVERSION_POSSIBLE = "ognl.NoConversionPossible"; @Deprecated From 0f2e0b1023587779542bb9d5e7b6689117f11fc8 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 17 Jul 2017 12:50:44 +0200 Subject: [PATCH 0248/2288] Adds empty line --- .../java/com/opensymphony/xwork2/conversion/TypeConverter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java index 602eeaf6d6..0bbad6c6a6 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/TypeConverter.java @@ -50,4 +50,5 @@ public interface TypeConverter { @Deprecated String TYPE_CONVERTER_CONTEXT_KEY = "_typeConverter"; -} \ No newline at end of file + +} From b88639313f90c4ca9fe57b9f137b97a40b1b5f5b Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 8 Nov 2017 11:33:56 +0100 Subject: [PATCH 0249/2288] Fixes issue with CI and SCM --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index d1acf40863..1a391aacc0 100644 --- a/pom.xml +++ b/pom.xml @@ -48,20 +48,20 @@ --> - scm:git:git://git.apache.org/struts.git - scm:git:https://git-wip-us.apache.org/repos/asf/struts.git - http://git.apache.org/struts.git + scm:git:https://gitbox.apache.org/repos/asf/struts.git + scm:git:https://gitbox.apache.org/repos/asf/struts.git + https://github.com/apache/struts/ HEAD JIRA - https://issues.apache.org/jira/browse/WW + https://issues.apache.org/jira/projects/WW Jenkins - https://builds.apache.org/hudson/view/S-Z/view/Struts + builds.apache.org/view/S-Z/view/Struts/ mail From a5db2881308cfccf52edf165447188ba09124772 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 8 Nov 2017 14:06:57 +0330 Subject: [PATCH 0250/2288] WW-4871 Removes assignment to value parameter --- .../xwork2/conversion/impl/StringConverter.java | 7 ++++--- .../xwork2/conversion/impl/StringConverterTest.java | 6 +----- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java index f7ad4ead40..97669438af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/StringConverter.java @@ -65,14 +65,15 @@ protected String convertToString(Locale locale, Object value) { if (Number.class.isInstance(value)) { NumberFormat format = NumberFormat.getNumberInstance(locale); format.setGroupingUsed(false); + // TODO: delete this variable and corresponding if statement when jdk fixed java.text.NumberFormat.format's behavior with Float + Object fixedValue = value; if (BigDecimal.class.isInstance(value) || Double.class.isInstance(value) || Float.class.isInstance(value)) { format.setMaximumFractionDigits(Integer.MAX_VALUE); - // TODO: delete this if statement when jdk fixed java.text.NumberFormat.format's behavior with Float if (Float.class.isInstance(value)) { - value = Double.valueOf(value.toString()); + fixedValue = Double.valueOf(value.toString()); } } - return format.format(value); + return format.format(fixedValue); } else { return Objects.toString(value, null); } diff --git a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java index a2c0abc976..62f4ef2a23 100644 --- a/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/conversion/impl/StringConverterTest.java @@ -68,14 +68,10 @@ public void testFloatToStringConversionPL() throws Exception { assertEquals("34028235" + StringUtils.repeat('0', 31), value); // when cannot be represented exactly with a finite binary number - Object f1 = 0.1f; - Object f2 = f1; // save the Object's current reference to test if following call will change it - value = converter.convertValue(context, null, null, null, f1, null); + value = converter.convertValue(context, null, null, null, 0.1f, null); // then produce the shortest decimal representation that can unambiguously identify the true value of the floating-point number assertEquals("0,1", value); - // and does not change the input parameter, f1 - assertTrue("should not change the input parameter, value", f1 == f2); } public void testBigDecimalToStringConversionPL() throws Exception { From cde63169f0b8717fc29355509f5ac365a843993a Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 8 Nov 2017 23:01:46 +0100 Subject: [PATCH 0251/2288] WW-4888 add escaping options to text tag --- .../org/apache/struts2/components/Text.java | 49 ++++++++++++++++++- .../apache/struts2/views/jsp/PropertyTag.java | 2 +- .../org/apache/struts2/views/jsp/TextTag.java | 25 ++++++++++ core/src/site/resources/tags/text.html | 32 ++++++++++++ .../apache/struts2/views/jsp/TextTagTest.java | 40 +++++++++++++++ .../org/apache/struts2/TestAction.properties | 6 ++- 6 files changed, 151 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/components/Text.java b/core/src/main/java/org/apache/struts2/components/Text.java index c7935ac7cd..a5ea21715c 100644 --- a/core/src/main/java/org/apache/struts2/components/Text.java +++ b/core/src/main/java/org/apache/struts2/components/Text.java @@ -19,6 +19,7 @@ package org.apache.struts2.components; import com.opensymphony.xwork2.util.ValueStack; +import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -58,6 +59,10 @@ * *
    *
  • name* (String) - the i18n message key
  • + *
  • escapeHtml (Boolean) - Escape HTML. Defaults to false
  • + *
  • escapeJavaScript (Boolean) - Escape JavaScript. Defaults to false
  • + *
  • escapeXml (Boolean) - Escape XML. Defaults to false
  • + *
  • escapeCsv (Boolean) - Escape CSV. Defaults to false
  • *
* * @@ -119,6 +124,10 @@ public class Text extends ContextBean implements Param.UnnamedParametric { protected String actualName; protected String name; protected String searchStack; + private boolean escapeHtml = false; + private boolean escapeJavaScript = false; + private boolean escapeXml = false; + private boolean escapeCsv = false; public Text(ValueStack stack) { super(stack); @@ -134,6 +143,26 @@ public void setSearchValueStack(String searchStack) { this.searchStack = searchStack; } + @StrutsTagAttribute(description="Whether to escape HTML", type="Boolean", defaultValue="false") + public void setEscapeHtml(boolean escape) { + this.escapeHtml = escape; + } + + @StrutsTagAttribute(description="Whether to escape Javascript", type="Boolean", defaultValue="false") + public void setEscapeJavaScript(boolean escapeJavaScript) { + this.escapeJavaScript = escapeJavaScript; + } + + @StrutsTagAttribute(description="Whether to escape XML", type="Boolean", defaultValue="false") + public void setEscapeXml(boolean escapeXml) { + this.escapeXml = escapeXml; + } + + @StrutsTagAttribute(description="Whether to escape CSV (useful to escape a value for a column)", type="Boolean", defaultValue="false") + public void setEscapeCsv(boolean escapeCsv) { + this.escapeCsv = escapeCsv; + } + public boolean usesBody() { // overriding this to true such that EVAL_BODY_BUFFERED is return and // bodyContent will be valid hence, text between start & end tag will @@ -161,7 +190,7 @@ public boolean end(Writer writer, String body) { if (msg != null) { try { if (getVar() == null) { - writer.write(msg); + writer.write(prepare(msg)); } else { putInContext(msg); } @@ -184,4 +213,22 @@ public void addParameter(Object value) { values.add(value); } + + private String prepare(String value) { + String result = value; + if (escapeHtml) { + result = StringEscapeUtils.escapeHtml4(result); + } + if (escapeJavaScript) { + result = StringEscapeUtils.escapeEcmaScript(result); + } + if (escapeXml) { + result = StringEscapeUtils.escapeXml(result); + } + if (escapeCsv) { + result = StringEscapeUtils.escapeCsv(result); + } + + return result; + } } diff --git a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java index 12abe6bbb1..85fed48c9d 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java @@ -35,7 +35,7 @@ public class PropertyTag extends ComponentTagSupport { private String defaultValue; private String value; - private boolean escapeHtml = true; + private boolean escapeHtml = false; private boolean escapeJavaScript = false; private boolean escapeXml = false; private boolean escapeCsv = false; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java index 6407954fae..c0420dfad4 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java @@ -35,6 +35,10 @@ public class TextTag extends ContextBeanTag { protected String name; protected String searchValueStack; + private boolean escapeHtml = false; + private boolean escapeJavaScript = false; + private boolean escapeXml = false; + private boolean escapeCsv = false; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new Text(stack); @@ -46,6 +50,10 @@ protected void populateParams() { Text text = (Text) component; text.setName(name); text.setSearchValueStack(searchValueStack); + text.setEscapeHtml(escapeHtml); + text.setEscapeJavaScript(escapeJavaScript); + text.setEscapeXml(escapeXml); + text.setEscapeCsv(escapeCsv); } public void setName(String name) { @@ -55,4 +63,21 @@ public void setName(String name) { public void setSearchValueStack(String searchStack) { this.searchValueStack = searchStack; } + + public void setEscapeHtml(boolean escapeHtml) { + this.escapeHtml = escapeHtml; + } + + public void setEscapeJavaScript(boolean escapeJavaScript) { + this.escapeJavaScript = escapeJavaScript; + } + + public void setEscapeXml(boolean escapeXml) { + this.escapeXml = escapeXml; + } + + public void setEscapeCsv(boolean escapeCsv) { + this.escapeCsv = escapeCsv; + } + } diff --git a/core/src/site/resources/tags/text.html b/core/src/site/resources/tags/text.html index bd2e511157..f068caddb4 100644 --- a/core/src/site/resources/tags/text.html +++ b/core/src/site/resources/tags/text.html @@ -33,6 +33,38 @@

Attributes

Type

Description

+ + escapeCsv + false + false + false + Boolean + Whether to escape CSV (useful to escape a value for a column) + + + escapeHtml + false + false + false + Boolean + Whether to escape HTML + + + escapeJavaScript + false + false + false + Boolean + Whether to escape Javascript + + + escapeXml + false + false + false + Boolean + Whether to escape XML + name true diff --git a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java index dae0d532ad..856b9335b0 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java @@ -305,6 +305,46 @@ public void testPutId() throws Exception { assertEquals("No foo here", stack.findString("myId")); // is in stack now } + public void testEscapeHtml() throws Exception { + final String key = "foo.escape.html"; + final String value = "1 < 2"; + tag.setName(key); + tag.setEscapeHtml(true); + tag.doStartTag(); + tag.doEndTag(); + assertEquals(value, writer.toString()); + } + + public void testEscapeXml() throws Exception { + final String key = "foo.escape.xml"; + final String value = "<>'"&"; + tag.setName(key); + tag.setEscapeXml(true); + tag.doStartTag(); + tag.doEndTag(); + assertEquals(value, writer.toString()); + } + + public void testEscapeJavaScript() throws Exception { + final String key = "foo.escape.javascript"; + final String value = "\\t\\b\\n\\f\\r\\\"\\\'\\/\\\\"; + tag.setName(key); + tag.setEscapeJavaScript(true); + tag.doStartTag(); + tag.doEndTag(); + assertEquals(value, writer.toString()); + } + + public void testEscapeCsv() throws Exception { + final String key = "foo.escape.csv"; + final String value = "\"something,\"\",\"\"\""; + tag.setName(key); + tag.setEscapeCsv(true); + tag.doStartTag(); + tag.doEndTag(); + assertEquals(value, writer.toString()); + } + /** * todo remove ActionContext set after LocalizedTextUtil is fixed to not use ThreadLocal * diff --git a/core/src/test/resources/org/apache/struts2/TestAction.properties b/core/src/test/resources/org/apache/struts2/TestAction.properties index 1ecb4cdfce..cd2ce89142 100644 --- a/core/src/test/resources/org/apache/struts2/TestAction.properties +++ b/core/src/test/resources/org/apache/struts2/TestAction.properties @@ -21,4 +21,8 @@ expressionKey=Foo is ${foo} messageFormatKey=Params are {0} {1} {2} foo.bar.baz=This should start with foo bar.baz=No foo here -some.image.from.properties=some.gif \ No newline at end of file +some.image.from.properties=some.gif +foo.escape.html=1 < 2 +foo.escape.xml=<>''\"& +foo.escape.javascript=\u0009\u0008\n\u000C\u000D\"''/\u005C +foo.escape.csv=something,"," From a512f98eaafa95c6418363f4c00edc05a96b8dfa Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 8 Nov 2017 23:08:11 +0100 Subject: [PATCH 0252/2288] reverted accidental change --- .../src/main/java/org/apache/struts2/views/jsp/PropertyTag.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java index 85fed48c9d..12abe6bbb1 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/PropertyTag.java @@ -35,7 +35,7 @@ public class PropertyTag extends ComponentTagSupport { private String defaultValue; private String value; - private boolean escapeHtml = false; + private boolean escapeHtml = true; private boolean escapeJavaScript = false; private boolean escapeXml = false; private boolean escapeCsv = false; From 025aba98fe4bcffe4d68d0992a644d373c80d764 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Thu, 9 Nov 2017 20:11:11 +0100 Subject: [PATCH 0253/2288] WW-4851 upgrade Log4j2 to version 2.9.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1a391aacc0..64a7095b07 100644 --- a/pom.xml +++ b/pom.xml @@ -102,7 +102,7 @@ 5.2 3.0.7 1.0.6 - 2.9.0 + 2.9.1 1.6 From b91d3caa47607b9069db134f3977283428d5f530 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 10 Nov 2017 10:17:25 +0100 Subject: [PATCH 0254/2288] Adds schema to have a proper URL --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 64a7095b07..124c73f8a3 100644 --- a/pom.xml +++ b/pom.xml @@ -61,7 +61,7 @@ Jenkins - builds.apache.org/view/S-Z/view/Struts/ + https://builds.apache.org/view/S-Z/view/Struts/ mail From 47a4a57d2d7fc4d5ab1765f6bd31bf1b0f0d583c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 10 Nov 2017 10:21:19 +0100 Subject: [PATCH 0255/2288] Adds proper url to Sonar host --- pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pom.xml b/pom.xml index 124c73f8a3..50fbf27352 100644 --- a/pom.xml +++ b/pom.xml @@ -106,6 +106,9 @@ 1.6 + + + https://builds.apache.org/analysis/ From 882a6e803e70c03628b3e0b4f36a0c5b233b391c Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 11 Nov 2017 09:20:28 +0100 Subject: [PATCH 0256/2288] Adds Coverage status --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 40c3c2c816..b814e1f0d1 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ The Apache Struts web framework [![Build Status @ Travis](https://travis-ci.org/apache/struts.svg?branch=master)](https://travis-ci.org/apache/struts) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/) [![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) +[![Coverage Status](https://coveralls.io/repos/github/apache/struts/badge.svg)](https://coveralls.io/github/apache/struts) The Apache Struts web framework is a free open-source solution for creating Java web applications. From a92eb529a9a50fc8740810e5d4809782a49d7752 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 11 Nov 2017 09:28:58 +0100 Subject: [PATCH 0257/2288] Adds proper header and some links --- README.md | 103 +++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 79 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index b814e1f0d1..b0b2c1be70 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,19 @@ + The Apache Struts web framework ------------------------------- @@ -9,34 +25,73 @@ The Apache Struts web framework The Apache Struts web framework is a free open-source solution for creating Java web applications. -Web applications differ from conventional websites in that web applications can create a dynamic response. Many websites deliver only static pages. A web application can interact with databases and business logic engines to customize a response. +## Documentation -Web applications based on JavaServer Pages sometimes commingle database code, page design code, and control flow code. In practice, we find that unless these concerns are separated, larger applications become difficult to maintain. +More information can be found on the [homepage](https://struts.apache.org/). Please read the [Security Guide](https://struts.apache.org/security/) +and the [JavaDocs](https://struts.apache.org/maven/struts2-core/apidocs/index.html) can be browsed. +Questions related to the usage of the Apache Struts should be posted to the [user mailing list](https://struts.apache.org/mail.html). -One way to separate concerns in a software application is to use a Model-View-Controller (MVC) architecture. The Model represents the business or database code, the View represents the page design code, and the Controller represents the navigational code. The Struts framework is designed to help developers create web applications that utilize a MVC architecture. +## Description -The framework provides three key components: - -A “request” handler provided by the application developer that is mapped to a standard URI. A “response” handler that transfers control to another resource which completes the response. A tag library that helps developers create interactive form-based applications with server pages. The framework’s architecture and tags are buzzword compliant. Struts works well with conventional REST applications and with technologies like SOAP and AJAX. - -The Apache Struts Project -------------------------- - -The Apache Struts Project is the open source community that creates and maintains the Apache Struts framework. The project consists of a diverse group of volunteers who share common values regarding collaborative, community-based open source development. The Apache Struts Project is proud to share these values with our parent organization: The Apache Software Foundation. - -The project is called “Struts” because the framework is meant to furnish the “invisible underpinnings” that support professional application development. Struts provides the glue that joins the various elements of the standard Java platform into a coherent whole. Our goal is to leverage existing standards by producing the missing pieces we need to create enterprise-grade applications that are easy to maintain over time. +Web applications differ from conventional websites in that web applications can create a dynamic response. Many websites +deliver only static pages. A web application can interact with databases and business logic engines to customize a response. -The Apache Struts Project offered two major versions of the Struts framework. Currently we are only maintaining the Struts 2 version. It is recommended to upgrade all Struts 1.x application to Struts 2. Please do not start new application development using Struts 1.x, as we are no longer issuing security patches. +Web applications based on JavaServer Pages sometimes commingle database code, page design code, and control flow code. +In practice, we find that unless these concerns are separated, larger applications become difficult to maintain. -Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts communities joined forces to create Struts 2. The 2.x framework is the best choice for teams who value elegant solutions to difficult problems. +One way to separate concerns in a software application is to use a Model-View-Controller (MVC) architecture. The Model +represents the business or database code, the View represents the page design code, and the Controller represents +the navigational code. The Struts framework is designed to help developers create web applications that utilize +a MVC architecture. -Why should you use Apache Struts? ---------------------------------- - -Apache Struts is a modern, maintained and full-featured web framework. It has been there for years and give the huge user base it is unlikely it will go away anytime soon in the future. Not only that we have dedicated users and developers on the project. Apache Struts is licensed to the Apache License 2.0 and this will not change. We maintain a clean IP and you are “safe” to use the project. Sometimes you are not “safe” to use a project when a company controls the SCM. Access to Source Code doesn’t mean it is free. With Apache Struts, you are not only free to “do what you want with it”, you can even contribute (which is not always the case). And best of it: you can become a part of the core team too. - -It is usually very easy to integrate other technologies with Apache Struts. If you are using an ORM like Apache Cayenne, Hibernate or JDBC you will not have any restrictions. Apache Struts is not even tied too much to a frontend technology. In old days it was JSP, then came Velocity and Freemarker. Nowadays you might build your web application with just static HTML and AngularJS. Or you want to use Sitemesh or Tiles. This all is no problem due to Struts elegant and easy to use extension mechanisms. - -Unlike other, component oriented frameworks, we do not aim to hide the stateless nature of the web. We think it is perfectly acceptable to build upon a Request/Response cycle. We also think the MVC pattern is not so bad, just because it is old. In fact, we believe the Apache Struts architecture is clean and easy to understand. +The framework provides three key components: -Of course, if you wish to build components on the server side which render on the front end side, you are most likely wrong with Struts. This is a different approach which promises to reduce the amount of HTML/JavaScript knowledge needed and to create reusable components for the view layer. Projects like Wicket and Tapestry serve this purpose very well. As with every framework you need to decide if it makes sense for you to build components or if you are better with the Struts-approach. +A “request” handler provided by the application developer that is mapped to a standard URI. A “response” handler that +transfers control to another resource which completes the response. A tag library that helps developers create interactive +form-based applications with server pages. The framework’s architecture and tags are buzzword compliant. Struts works well +with conventional REST applications and with technologies like SOAP and AJAX. + +## The Apache Struts Project + +The Apache Struts Project is the open source community that creates and maintains the Apache Struts framework. +The project consists of a diverse group of volunteers who share common values regarding collaborative, community-based +open source development. The Apache Struts Project is proud to share these values with our parent organization: +The Apache Software Foundation. + +The project is called “Struts” because the framework is meant to furnish the “invisible underpinnings” that support +professional application development. Struts provides the glue that joins the various elements of the standard Java +platform into a coherent whole. Our goal is to leverage existing standards by producing the missing pieces we need to create +enterprise-grade applications that are easy to maintain over time. + +The Apache Struts Project offered two major versions of the Struts framework. Currently we are only maintaining the Struts 2 +version. It is recommended to upgrade all Struts 1.x application to Struts 2. Please do not start new application development +using Struts 1.x, as we are no longer issuing security patches. + +Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts +communities joined forces to create Struts 2. The 2.x framework is the best choice for teams who value elegant solutions +to difficult problems. + +## Why should you use Apache Struts? + +Apache Struts is a modern, maintained and full-featured web framework. It has been there for years and give the huge user +base it is unlikely it will go away anytime soon in the future. Not only that we have dedicated users and developers +on the project. Apache Struts is licensed to the Apache License 2.0 and this will not change. We maintain a clean IP +and you are “safe” to use the project. Sometimes you are not “safe” to use a project when a company controls the SCM. +Access to Source Code doesn’t mean it is free. With Apache Struts, you are not only free to “do what you want with it”, +you can even contribute (which is not always the case). And best of it: you can become a part of the core team too. + +It is usually very easy to integrate other technologies with Apache Struts. If you are using an ORM like Apache Cayenne, +Hibernate or JDBC you will not have any restrictions. Apache Struts is not even tied too much to a frontend technology. +In old days it was JSP, then came Velocity and Freemarker. Nowadays you might build your web application with just static +HTML and AngularJS. Or you want to use Sitemesh or Tiles. This all is no problem due to Struts elegant and easy to use +extension mechanisms. + +Unlike other, component oriented frameworks, we do not aim to hide the stateless nature of the web. We think it is +perfectly acceptable to build upon a Request/Response cycle. We also think the MVC pattern is not so bad, just because +it is old. In fact, we believe the Apache Struts architecture is clean and easy to understand. + +Of course, if you wish to build components on the server side which render on the front end side, you are most likely +wrong with Struts. This is a different approach which promises to reduce the amount of HTML/JavaScript knowledge needed +and to create reusable components for the view layer. Projects like Wicket and Tapestry serve this purpose very well. +As with every framework you need to decide if it makes sense for you to build components or if you are better with +the Struts-approach. From c956d1a40d4f618dcaa3dd8acbd6c09b1933cf25 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 11 Nov 2017 09:42:29 +0100 Subject: [PATCH 0258/2288] Adds support for coveralls --- .travis.yml | 5 ++++- pom.xml | 30 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 57ba3df4c2..4939f24c78 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,4 +6,7 @@ jdk: - oraclejdk8 install: true -script: mvn test -DskipAssembly \ No newline at end of file +script: mvn test -DskipAssembly + +after_success: + - mvn clean cobertura:cobertura coveralls:report -Ptravis-coveralls -DskipAssembly diff --git a/pom.xml b/pom.xml index 50fbf27352..70552f85a3 100644 --- a/pom.xml +++ b/pom.xml @@ -166,6 +166,10 @@ 9 + + + true + @@ -180,6 +184,32 @@
+ + travis-coveralls + + + + org.codehaus.mojo + cobertura-maven-plugin + 2.7 + + xml + 256m + + true + + + + org.eluder.coveralls + coveralls-maven-plugin + 4.3.0 + + ${env.coveralls_repo_token} + + + + + From 7c4f30f619e00e1acf107e5ec2064a8990f4edfd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 11 Nov 2017 10:10:54 +0100 Subject: [PATCH 0259/2288] Drops unneeded property --- pom.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pom.xml b/pom.xml index 70552f85a3..ab3f55370a 100644 --- a/pom.xml +++ b/pom.xml @@ -203,9 +203,6 @@ org.eluder.coveralls coveralls-maven-plugin 4.3.0 - - ${env.coveralls_repo_token} - From c14dca5be37bbb02a26b77010158e427f487b107 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 11 Nov 2017 10:11:06 +0100 Subject: [PATCH 0260/2288] Uses full plugin name --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 4939f24c78..d6eacdc9e3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,4 +9,4 @@ install: true script: mvn test -DskipAssembly after_success: - - mvn clean cobertura:cobertura coveralls:report -Ptravis-coveralls -DskipAssembly + - mvn clean cobertura:cobertura org.eluder.coveralls:coveralls-maven-plugin:report -Ptravis-coveralls -DskipAssembly From bfbc17e1ad496c18933fda5a3b53f097cc5c2ecf Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Sat, 11 Nov 2017 15:33:25 +0100 Subject: [PATCH 0261/2288] WW-4713 Added deprecation warnings as preparation to drop searchValueStack attribute from the tag --- core/src/main/java/org/apache/struts2/components/Text.java | 2 ++ .../main/java/org/apache/struts2/util/TextProviderHelper.java | 3 +++ core/src/main/java/org/apache/struts2/views/jsp/TextTag.java | 2 ++ 3 files changed, 7 insertions(+) diff --git a/core/src/main/java/org/apache/struts2/components/Text.java b/core/src/main/java/org/apache/struts2/components/Text.java index a5ea21715c..8ce179ff40 100644 --- a/core/src/main/java/org/apache/struts2/components/Text.java +++ b/core/src/main/java/org/apache/struts2/components/Text.java @@ -123,6 +123,7 @@ public class Text extends ContextBean implements Param.UnnamedParametric { protected List values = Collections.emptyList(); protected String actualName; protected String name; + @Deprecated protected String searchStack; private boolean escapeHtml = false; private boolean escapeJavaScript = false; @@ -138,6 +139,7 @@ public void setName(String name) { this.name = name; } + @Deprecated @StrutsTagAttribute(description="Search the stack if property is not found on resources", type = "Boolean", defaultValue = "false") public void setSearchValueStack(String searchStack) { this.searchStack = searchStack; diff --git a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java index 5200844c1f..145f6c006a 100644 --- a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java +++ b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java @@ -62,7 +62,10 @@ public static String getText(String key, String defaultMessage, List arg * @param searchStack search stack for the key * * @return the message if found, otherwise the defaultMessage + * + * @deprecated The stack should never be searched for the key. Use the version without the searchStack boolean instead. */ + @Deprecated public static String getText(String key, String defaultMessage, List args, ValueStack stack, boolean searchStack) { String msg = null; TextProvider tp = null; diff --git a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java index c0420dfad4..b47e8e0e41 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/TextTag.java @@ -34,6 +34,7 @@ public class TextTag extends ContextBeanTag { private static final long serialVersionUID = -3075088084198264581L; protected String name; + @Deprecated protected String searchValueStack; private boolean escapeHtml = false; private boolean escapeJavaScript = false; @@ -60,6 +61,7 @@ public void setName(String name) { this.name = name; } + @Deprecated public void setSearchValueStack(String searchStack) { this.searchValueStack = searchStack; } From 9418cb5e89001f90a5e5b9320e03dfd372b2c18d Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 12 Nov 2017 15:48:30 +0330 Subject: [PATCH 0262/2288] WW-4876 WW-4841 Parses validators after all injections done --- .../validator/DefaultValidatorFactory.java | 4 +++ .../xwork2/validator/ValidatorFactory.java | 4 ++- .../spring/SpringObjectFactoryTest.java | 4 +++ .../xwork2/spring/emptyContext-spring.xml | 25 +++++++++++++++++++ 4 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 core/src/test/resources/com/opensymphony/xwork2/spring/emptyContext-spring.xml diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java index 2770c48b02..d945e0a263 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/DefaultValidatorFactory.java @@ -55,6 +55,10 @@ public class DefaultValidatorFactory implements ValidatorFactory { public DefaultValidatorFactory(@Inject ObjectFactory objectFactory, @Inject ValidatorFileParser parser) { this.objectFactory = objectFactory; this.validatorFileParser = parser; + } + + @Override + public void init() { parseValidators(); } diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java index 8510fe6bb6..5c3ce7ed4d 100644 --- a/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/validator/ValidatorFactory.java @@ -18,6 +18,8 @@ */ package com.opensymphony.xwork2.validator; +import com.opensymphony.xwork2.inject.Initializable; + /** * ValidatorFactory * @@ -225,7 +227,7 @@ * @author Jason Carreira * @author James House */ -public interface ValidatorFactory { +public interface ValidatorFactory extends Initializable { /** * Get a Validator that matches the given configuration. diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/SpringObjectFactoryTest.java b/core/src/test/java/com/opensymphony/xwork2/spring/SpringObjectFactoryTest.java index 0f6e52cf0c..776bd791b9 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/SpringObjectFactoryTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/SpringObjectFactoryTest.java @@ -66,6 +66,10 @@ public void setUp() throws Exception { @Override public void register(ContainerBuilder builder, LocatableProperties props) throws ConfigurationException { + + // No registered beans during initialization; They will be registered in each test, runtime. + props.setProperty("applicationContextPath", "com/opensymphony/xwork2/spring/emptyContext-spring.xml"); + builder.factory(ObjectFactory.class, SpringObjectFactory.class); } diff --git a/core/src/test/resources/com/opensymphony/xwork2/spring/emptyContext-spring.xml b/core/src/test/resources/com/opensymphony/xwork2/spring/emptyContext-spring.xml new file mode 100644 index 0000000000..41a2b5db98 --- /dev/null +++ b/core/src/test/resources/com/opensymphony/xwork2/spring/emptyContext-spring.xml @@ -0,0 +1,25 @@ + + + + + + From 0bde78cc36df1ee9b68a8010a27c6b3c591edeef Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Mon, 13 Nov 2017 21:13:27 +0100 Subject: [PATCH 0263/2288] changed Map iterations to use entrySet when both key and value are used --- .../xwork2/config/impl/AbstractMatcher.java | 10 +++++----- .../xwork2/config/impl/ActionConfigMatcher.java | 4 ++-- .../xwork2/config/impl/DefaultConfiguration.java | 10 +++++----- .../config/providers/InterceptorBuilder.java | 12 ++++++------ .../xwork2/conversion/impl/XWorkConverter.java | 4 ++-- .../interceptor/ParameterFilterInterceptor.java | 6 ++++-- .../xwork2/interceptor/ParametersInterceptor.java | 15 ++++++++------- .../org/apache/struts2/components/UIBean.java | 6 ++++-- .../multipart/JakartaStreamMultiPartRequest.java | 4 ++-- .../org/apache/struts2/result/PostbackResult.java | 5 +++-- .../views/freemarker/FreemarkerManager.java | 4 ++-- .../PackageBasedActionConfigBuilder.java | 8 ++++---- .../struts2/views/java/XHTMLTagSerializer.java | 7 ++++--- .../java/org/apache/struts2/json/JSONCleaner.java | 3 +-- .../apache/struts2/osgi/host/BaseOsgiHost.java | 11 ++++++----- .../struts2/portlet/util/PortletUrlHelper.java | 5 +++-- .../StrutsWildcardServletApplicationContext.java | 7 +++---- 17 files changed, 64 insertions(+), 57 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java index a7c7b28111..d75a39b181 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/AbstractMatcher.java @@ -154,15 +154,15 @@ protected Map replaceParameters(Map orig, Map map = new LinkedHashMap<>(); //this will set the group index references, like {1} - for (String key : orig.keySet()) { - map.put(key, convertParam(orig.get(key), vars)); + for (Map.Entry entry : orig.entrySet()) { + map.put(entry.getKey(), convertParam(entry.getValue(), vars)); } //the values map will contain entries like name->"Lex Luthor" and 1->"Lex Luthor" //now add the non-numeric values - for (String key: vars.keySet()) { - if (!NumberUtils.isNumber(key)) { - map.put(key, vars.get(key)); + for (Map.Entry entry: vars.entrySet()) { + if (!NumberUtils.isNumber(entry.getKey())) { + map.put(entry.getKey(), entry.getValue()); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java index ec498d41c4..b94fff63af 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/ActionConfigMatcher.java @@ -59,8 +59,8 @@ public ActionConfigMatcher(PatternMatcher patternMatcher, Map configs, boolean looseMatch) { super(patternMatcher); - for (String name : configs.keySet()) { - addPattern(name, configs.get(name), looseMatch); + for (Map.Entry entry : configs.entrySet()) { + addPattern(entry.getKey(), entry.getValue(), looseMatch); } } 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 9d5d430c47..c8f98b82ea 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 @@ -419,8 +419,8 @@ public RuntimeConfigurationImpl(Map> namespace this.namespaceActionConfigMatchers = new LinkedHashMap<>(); this.namespaceMatcher = new NamespaceMatcher(matcher, namespaceActionConfigs.keySet()); - for (String ns : namespaceActionConfigs.keySet()) { - namespaceActionConfigMatchers.put(ns, new ActionConfigMatcher(matcher, namespaceActionConfigs.get(ns), true)); + for (Map.Entry> entry : namespaceActionConfigs.entrySet()) { + namespaceActionConfigMatchers.put(entry.getKey(), new ActionConfigMatcher(matcher, entry.getValue(), true)); } } @@ -496,11 +496,11 @@ public Map> getActionConfigs() { public String toString() { StringBuilder buff = new StringBuilder("RuntimeConfiguration - actions are\n"); - for (String namespace : namespaceActionConfigs.keySet()) { - Map actionConfigs = namespaceActionConfigs.get(namespace); + for (Map.Entry> entry : namespaceActionConfigs.entrySet()) { + Map actionConfigs = entry.getValue(); for (String s : actionConfigs.keySet()) { - buff.append(namespace).append("/").append(s).append("\n"); + buff.append(entry.getKey()).append("/").append(s).append("\n"); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java index e2584b19d9..bf84cf366c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/InterceptorBuilder.java @@ -130,8 +130,8 @@ private static List constructParameterizedInterceptorReferen * interceptorStack1 -> [interceptor1.param1 -> someValue, interceptor1.param2 -> anotherValue] * */ - for (String key : refParams.keySet()) { - String value = refParams.get(key); + for (Map.Entry entry : refParams.entrySet()) { + String key = entry.getKey(); try { String name = key.substring(0, key.indexOf('.')); @@ -144,7 +144,7 @@ private static List constructParameterizedInterceptorReferen map = new LinkedHashMap<>(); } - map.put(key, value); + map.put(key, entry.getValue()); params.put(name, map); } catch (Exception e) { @@ -154,9 +154,9 @@ private static List constructParameterizedInterceptorReferen result = new ArrayList<>(stackConfig.getInterceptors()); - for (String key : params.keySet()) { - - Map map = params.get(key); + for (Map.Entry> entry : params.entrySet()) { + String key = entry.getKey(); + Map map = entry.getValue(); Object interceptorCfgObj = interceptorLocator.getInterceptorConfig(key); diff --git a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java index ee1f8f4326..ac4b611b71 100644 --- a/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java +++ b/core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java @@ -412,8 +412,8 @@ protected Object getConverter(Class clazz, String property) { Object converter = mapping.get(property); if (converter == null && LOG.isDebugEnabled()) { LOG.debug("Converter is null for property [{}]. Mapping size [{}]:", property, mapping.size()); - for (String next : mapping.keySet()) { - LOG.debug("{}:{}", next, mapping.get(next)); + for (Map.Entry entry : mapping.entrySet()) { + LOG.debug("{}:{}", entry.getKey(), entry.getValue()); } } return converter; diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java index 172b429a47..3f0414a31b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParameterFilterInterceptor.java @@ -118,11 +118,13 @@ public String intercept(ActionInvocation invocation) throws Exception { for (String param : parameters.keySet()) { boolean currentAllowed = !isDefaultBlock(); - for (String currRule : includesExcludesMap.keySet()) { + for (Map.Entry entry : includesExcludesMap.entrySet()) { + String currRule = entry.getKey(); + if (param.startsWith(currRule) && (param.length() == currRule.length() || isPropertySeparator(param.charAt(currRule.length()))) ) { - currentAllowed = includesExcludesMap.get(currRule); + currentAllowed = entry.getValue(); } } if (!currentAllowed) { diff --git a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java index 02615d8559..6dc1c19536 100644 --- a/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java +++ b/core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java @@ -172,10 +172,11 @@ protected void setParameters(final Object action, ValueStack stack, HttpParamete acceptableParameters = new TreeMap<>(); } - for (String name : params.keySet()) { - Parameter parameter = params.get(name); - if (isAcceptableParameter(name, action)) { - acceptableParameters.put(name, parameter); + for (Map.Entry entry : params.entrySet()) { + String parameterName = entry.getKey(); + + if (isAcceptableParameter(parameterName, action)) { + acceptableParameters.put(parameterName, entry.getValue()); } } @@ -270,10 +271,10 @@ protected String getParameterLogMap(HttpParameters parameters) { } StringBuilder logEntry = new StringBuilder(); - for (String name : parameters.keySet()) { - logEntry.append(String.valueOf(name)); + for (Map.Entry entry : parameters.entrySet()) { + logEntry.append(entry.getKey()); logEntry.append(" => "); - logEntry.append(parameters.get(name).getValue()); + logEntry.append(entry.getValue().getValue()); logEntry.append(" "); } diff --git a/core/src/main/java/org/apache/struts2/components/UIBean.java b/core/src/main/java/org/apache/struts2/components/UIBean.java index fe0f65c3c9..1a0356a0cc 100644 --- a/core/src/main/java/org/apache/struts2/components/UIBean.java +++ b/core/src/main/java/org/apache/struts2/components/UIBean.java @@ -1241,9 +1241,11 @@ public void setTooltipIconPath(String tooltipIconPath) { } public void setDynamicAttributes(Map tagDynamicAttributes) { - for (String key : tagDynamicAttributes.keySet()) { + for (Map.Entry entry : tagDynamicAttributes.entrySet()) { + String key = entry.getKey(); + if (!isValidTagAttribute(key)) { - dynamicAttributes.put(key, tagDynamicAttributes.get(key)); + dynamicAttributes.put(key, entry.getValue()); } } } diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java index 69c08193ec..2d016f56ba 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java @@ -60,8 +60,8 @@ public class JakartaStreamMultiPartRequest extends AbstractMultiPartRequest { */ public void cleanUp() { LOG.debug("Performing File Upload temporary storage cleanup."); - for (String fieldName : fileInfos.keySet()) { - for (FileInfo fileInfo : fileInfos.get(fieldName)) { + for (List fileInfoList : fileInfos.values()) { + for (FileInfo fileInfo : fileInfoList) { File file = fileInfo.getFile(); LOG.debug("Deleting file '{}'.", file.getName()); if (!file.delete()) { diff --git a/core/src/main/java/org/apache/struts2/result/PostbackResult.java b/core/src/main/java/org/apache/struts2/result/PostbackResult.java index 6ce109ca5c..d040fbbb72 100644 --- a/core/src/main/java/org/apache/struts2/result/PostbackResult.java +++ b/core/src/main/java/org/apache/struts2/result/PostbackResult.java @@ -215,8 +215,9 @@ protected void writeFormElement(PrintWriter pw, String name, String[] values) th private void writeFormElements(HttpServletRequest request, PrintWriter pw) throws UnsupportedEncodingException { Map params = request.getParameterMap(); - for (String name : params.keySet()) { - String[] values = params.get(name); + for (Map.Entry entry : params.entrySet()) { + String name = entry.getKey(); + String[] values = entry.getValue(); if (isElementIncluded(name, values)) { writeFormElement(pw, name, values); } diff --git a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java index f6800d9e26..a70dde64e8 100644 --- a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java +++ b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java @@ -524,8 +524,8 @@ public ScopesHashModel buildTemplateModel(ValueStack stack, Object action, Servl ScopesHashModel model = buildScopesHashModel(servletContext, request, response, wrapper, stack); populateContext(model, stack, action, request, response); if (tagLibraries != null) { - for (String prefix : tagLibraries.keySet()) { - model.put(prefix, tagLibraries.get(prefix).getModels(stack, request, response)); + for (Map.Entry entry : tagLibraries.entrySet()) { + model.put(entry.getKey(), entry.getValue().getModels(stack, request, response)); } } diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java index 31f088d38d..a4e7eceb89 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java @@ -681,8 +681,7 @@ protected void buildConfiguration(Set classes) { && actionAnnotation == null && actionsAnnotation == null && (alwaysMapExecute || map.isEmpty())) { boolean found = false; - for (String method : map.keySet()) { - List actions = map.get(method); + for (List actions : map.values()) { for (Action action : actions) { // Check if there are duplicate action names in the annotations. @@ -709,8 +708,9 @@ protected void buildConfiguration(Set classes) { } // Build the actions for the annotations - for (String method : map.keySet()) { - List actions = map.get(method); + for (Map.Entry> entry : map.entrySet()) { + String method = entry.getKey(); + List actions = entry.getValue(); for (Action action : actions) { PackageConfig.Builder pkgCfg = defaultPackageConfig; if (action.value().contains("/") && !slashesInActionNames) { diff --git a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java index 730071c2c0..ab7203687a 100644 --- a/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java +++ b/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/XHTMLTagSerializer.java @@ -24,6 +24,7 @@ import java.io.IOException; import java.io.Writer; +import java.util.Map; /** * Write tags as XHTML @@ -53,11 +54,11 @@ public void start(String name, Attributes attrs) throws IOException { writer.write("<"); writer.write(name); if (attrs != null) { - for (String key : attrs.keySet()) { + for (Map.Entry entry : attrs.entrySet()) { writer.write(" "); - writer.write(key); + writer.write(entry.getKey()); writer.write("=\""); - writer.write(attrs.get(key)); + writer.write(entry.getValue()); writer.write("\""); } } diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java index ce847c2307..35daab0df0 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java @@ -101,8 +101,7 @@ private boolean allow(String ognl) { boolean allow = !isDefaultBlock(); if (includesExcludesMap != null) { - for (String currRule : includesExcludesMap.keySet()) { - Filter f = includesExcludesMap.get(currRule); + for (Filter f : includesExcludesMap.values()) { if (f.pattern.matcher(ognl).matches()) { allow = f.allow; } diff --git a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java index b095da5ab4..a293746583 100644 --- a/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java +++ b/plugins/osgi/src/main/java/org/apache/struts2/osgi/host/BaseOsgiHost.java @@ -108,12 +108,13 @@ protected void addAutoStartBundles(Properties configProps) { configProps.put(AutoProcessor.AUTO_START_PROP + ".2", StringUtils.join(bundles, " ")); } } else { - for (String runLevel : runLevels.keySet()) { - if ("1".endsWith(runLevel)) { + for (Map.Entry runLevel : runLevels.entrySet()) { + String runLevelKey = runLevel.getKey(); + if ("1".endsWith(runLevelKey)) { throw new StrutsException("Run level dirs must be greater than 1. Run level 1 is reserved for the Felix bundles"); } - List bundles = getBundlesInDir(runLevels.get(runLevel)); - configProps.put(AutoProcessor.AUTO_START_PROP + "." + runLevel, StringUtils.join(bundles, " ")); + List bundles = getBundlesInDir(runLevel.getValue()); + configProps.put(AutoProcessor.AUTO_START_PROP + "." + runLevelKey, StringUtils.join(bundles, " ")); } } } @@ -319,4 +320,4 @@ protected Properties getProperties(String fileName) { } } -} \ No newline at end of file +} diff --git a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java index 286bff23cd..52447edf3f 100644 --- a/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java +++ b/plugins/portlet/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java @@ -278,8 +278,9 @@ public static Map ensureParamsAreStringArrays(Map result = null; if (params != null) { result = new LinkedHashMap(params.size()); - for ( String key : params.keySet() ) { - Object val = params.get(key); + for (Map.Entry entry : params.entrySet() ) { + String key = entry.getKey(); + Object val = entry.getValue(); if (val instanceof String[]) { result.put(key, (String[]) val); } else { diff --git a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java index 63c0fdc7af..7af6069bba 100644 --- a/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java +++ b/plugins/tiles/src/main/java/org/apache/struts2/tiles/StrutsWildcardServletApplicationContext.java @@ -118,10 +118,9 @@ protected Set findResources(String path) throws IOException Pattern pattern = WildcardUtil.compileWildcardPattern(path); Map matches = finder.getResourcesMap(""); - for (String resource : matches.keySet()) { - if (pattern.matcher(resource).matches()) { - URL url = matches.get(resource); - resources.add(new StrutsApplicationResource(url)); + for (Map.Entry entry : matches.entrySet()) { + if (pattern.matcher(entry.getKey()).matches()) { + resources.add(new StrutsApplicationResource(entry.getValue())); } } From 04db84135866b136aa4366234e81a0e4aa7bc7ca Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 14 Nov 2017 07:43:14 +0100 Subject: [PATCH 0264/2288] [maven-release-plugin] prepare release STRUTS_2_5_14 --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++++++-- bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 5 ++--- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 43 insertions(+), 40 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 9d6e4ff75c..41741926c7 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index e7f7d4e608..885277ae78 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -24,12 +24,12 @@ org.apache.struts struts2-apps - 2.5.14-SNAPSHOT + 2.5.14 struts2-rest-showcase war - 2.5.14-SNAPSHOT + 2.5.14 Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 7f277124ee..db482bcc38 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-apps - 2.5.14-SNAPSHOT + 2.5.14 struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index eccd3d336f..7b688d8cc0 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index fe72ff2ef0..00616966ac 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -30,7 +30,7 @@ struts2-bom - 2.5.14-SNAPSHOT + 2.5.14 pom Struts 2 Bill of Materials @@ -45,7 +45,7 @@ - 2.5.14-SNAPSHOT + 2.5.14 true true @@ -179,4 +179,8 @@ + + + STRUTS_2_5_14 + diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index f6eeba272c..aaa0b76950 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14-SNAPSHOT + 2.5.14 struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index a64de75f9e..fe2644a059 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14-SNAPSHOT + 2.5.14 struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index f326433c0b..05c5df01e0 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 4947de33fe..3a39090636 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index 3c96213627..8314f430c3 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 2555010224..7a968f1da9 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index a7d9ed6322..928b17401a 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index dfed1e6f06..60f7bb5e26 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index bfe1c9260f..95de21c524 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index b7d32d6b60..f8c86033dd 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -19,13 +19,12 @@ * under the License. */ --> - + 4.0.0 org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 250a780f48..c5e0c2f016 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 50ed778fef..1bdcb34fa4 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 943fa7f369..40985c19a7 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index ffccb737b5..2ff3568504 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index a3266f40db..5d644b1c9f 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 2ccc794bef..09dd67cef7 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 08e2c3e602..f2927e814f 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 2982969c07..d11d3e2e78 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index 6fb7fdce45..22346d70c6 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index b80068002d..4a9fe895a3 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index c336d767e6..2fc2c336d0 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 7e9776c207..1fff5fc46c 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index a4ac4169c7..de94947963 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 7f4bf8d5b0..5ad70dd783 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index d9c24a9dc2..f6af0644b7 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 0cef0b2fda..ab580782ee 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 0fdbce3bf3..2b7f518633 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 3b7608b535..448c3b14de 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index d94f5fcfd3..67fe2b3280 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.5.14 struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 50fbf27352..3e7bdbe389 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ 4.0.0 struts2-parent - 2.5.14-SNAPSHOT + 2.5.14 pom Struts 2 http://struts.apache.org/ @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/struts.git scm:git:https://gitbox.apache.org/repos/asf/struts.git https://github.com/apache/struts/ - HEAD + STRUTS_2_5_14 From d36ec579fc590e5b43ef03c89947d70a8b54001e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 14 Nov 2017 07:43:35 +0100 Subject: [PATCH 0265/2288] [maven-release-plugin] prepare for next development iteration --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++------ bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 38 insertions(+), 42 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 41741926c7..1a7d12c960 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14 + 2.6-SNAPSHOT struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 885277ae78..1ac32652a0 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -24,12 +24,12 @@ org.apache.struts struts2-apps - 2.5.14 + 2.6-SNAPSHOT struts2-rest-showcase war - 2.5.14 + 2.6-SNAPSHOT Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index db482bcc38..67921e43b6 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-apps - 2.5.14 + 2.6-SNAPSHOT struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 7b688d8cc0..9db215a0cc 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14 + 2.6-SNAPSHOT struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 00616966ac..577932df94 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -30,7 +30,7 @@ struts2-bom - 2.5.14 + 2.6-SNAPSHOT pom Struts 2 Bill of Materials @@ -45,7 +45,7 @@ - 2.5.14 + 2.6-SNAPSHOT true true @@ -179,8 +179,4 @@ - - - STRUTS_2_5_14 - diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index aaa0b76950..206625c178 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14 + 2.6-SNAPSHOT struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index fe2644a059..ef08df400e 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14 + 2.6-SNAPSHOT struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 05c5df01e0..b85b571fe9 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14 + 2.6-SNAPSHOT struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 3a39090636..0c97b09589 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14 + 2.6-SNAPSHOT struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index 8314f430c3..d3e56935b0 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 7a968f1da9..7317b25b83 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 928b17401a..d494d4b78d 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 60f7bb5e26..4c6c04b337 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 95de21c524..59aff3c94c 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index f8c86033dd..d629781ebf 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index c5e0c2f016..0fd9ec58d8 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index 1bdcb34fa4..e42ffa7077 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 40985c19a7..1dd248a9a5 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 2ff3568504..ef2dcdd6ea 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index 5d644b1c9f..ccacc29603 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 09dd67cef7..95be40f105 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index f2927e814f..cbe48f0670 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index d11d3e2e78..9009922015 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index 22346d70c6..ed234cbf6f 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index 4a9fe895a3..c0339815f0 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index 2fc2c336d0..e313cba3d1 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14 + 2.6-SNAPSHOT struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 1fff5fc46c..70fed8d450 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index de94947963..492015e7f7 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 5ad70dd783..8997c995e8 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index f6af0644b7..6044e246fd 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index ab580782ee..66375ae5e5 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 2b7f518633..76b7831fc1 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 448c3b14de..d396a0a0ca 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index 67fe2b3280..e6410375c1 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14 + 2.6-SNAPSHOT struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 3e7bdbe389..222a2d11f1 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ 4.0.0 struts2-parent - 2.5.14 + 2.6-SNAPSHOT pom Struts 2 http://struts.apache.org/ @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/struts.git scm:git:https://gitbox.apache.org/repos/asf/struts.git https://github.com/apache/struts/ - STRUTS_2_5_14 + HEAD From 87967b9f84100b86f492870ee3205486802f5ab2 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 15 Nov 2017 13:54:20 +0100 Subject: [PATCH 0266/2288] changed Map iteration to use entrySet --- .../struts2/interceptor/CheckboxInterceptor.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java index c7942fb1c1..3223f47bb0 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java @@ -26,7 +26,9 @@ import org.apache.struts2.dispatcher.HttpParameters; import java.util.HashMap; +import java.util.HashSet; import java.util.Map; +import java.util.Set; /** * @@ -60,12 +62,14 @@ public String intercept(ActionInvocation ai) throws Exception { HttpParameters parameters = ai.getInvocationContext().getParameters(); Map extraParams = new HashMap<>(); - for (String name : parameters.keySet()) { + Set checkboxParameters = new HashSet<>(); + for (Map.Entry parameter : parameters.entrySet()) { + String name = parameter.getKey(); if (name.startsWith("__checkbox_")) { String checkboxName = name.substring("__checkbox_".length()); - Parameter value = parameters.get(name); - parameters = parameters.remove(name); + Parameter value = parameter.getValue(); + checkboxParameters.add(name); if (value.isMultiple()) { LOG.debug("Bypassing automatic checkbox detection due to multiple checkboxes of the same name: {}", name); continue; @@ -78,7 +82,7 @@ public String intercept(ActionInvocation ai) throws Exception { } } } - + parameters.remove(checkboxParameters); ai.getInvocationContext().getParameters().appendAll(extraParams); From 00b5f43c8a6ab3eccdac58e00d579a29403ac7d8 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 15 Nov 2017 13:58:15 +0100 Subject: [PATCH 0267/2288] changed tabs into spaces --- .../org/apache/struts2/interceptor/CheckboxInterceptor.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java index 3223f47bb0..91321e5330 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java @@ -69,9 +69,9 @@ public String intercept(ActionInvocation ai) throws Exception { String checkboxName = name.substring("__checkbox_".length()); Parameter value = parameter.getValue(); - checkboxParameters.add(name); + checkboxParameters.add(name); if (value.isMultiple()) { - LOG.debug("Bypassing automatic checkbox detection due to multiple checkboxes of the same name: {}", name); + LOG.debug("Bypassing automatic checkbox detection due to multiple checkboxes of the same name: {}", name); continue; } @@ -82,7 +82,7 @@ public String intercept(ActionInvocation ai) throws Exception { } } } - parameters.remove(checkboxParameters); + parameters.remove(checkboxParameters); ai.getInvocationContext().getParameters().appendAll(extraParams); From 836d7a0de857d037362a4234f6d7eaea925836cc Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Thu, 16 Nov 2017 08:16:54 +0100 Subject: [PATCH 0268/2288] Upgrades to the latest OGNL 3.2.4 version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7d931a8f4c..010eca73b1 100644 --- a/pom.xml +++ b/pom.xml @@ -98,7 +98,7 @@ UTF-8 4.1.9.RELEASE - 3.2.3 + 3.2.4 5.2 3.0.7 1.0.6 From 0d42ff50ac147df883372c0c513734af8abaee39 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Nov 2017 09:32:06 +0100 Subject: [PATCH 0269/2288] WW-4893 Upgrades Jackson to version 2.9.2 --- pom.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 222a2d11f1..02c8fcaedd 100644 --- a/pom.xml +++ b/pom.xml @@ -103,6 +103,7 @@ 3.0.7 1.0.6 2.9.1 + 2.9.2 1.6 @@ -1000,12 +1001,12 @@ com.fasterxml.jackson.core jackson-core - 2.8.2 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.8.2 + ${jackson.version} From 941374ecdb99ccc316f6b527b8df0f1cf2bb80c0 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Nov 2017 09:32:43 +0100 Subject: [PATCH 0270/2288] WW-4892 Uses Jackson handler as a default one to handle JSON --- plugins/rest/src/main/resources/struts-plugin.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/rest/src/main/resources/struts-plugin.xml b/plugins/rest/src/main/resources/struts-plugin.xml index 9104960480..2a49ceba0a 100644 --- a/plugins/rest/src/main/resources/struts-plugin.xml +++ b/plugins/rest/src/main/resources/struts-plugin.xml @@ -31,7 +31,7 @@ - + From a2824b7c87659c0c8f8cfc4b1b1fe2cc60b19138 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Nov 2017 09:33:00 +0100 Subject: [PATCH 0271/2288] WW-4892 Makes json-lib optional --- plugins/rest/pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 8997c995e8..77b8119e76 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -44,6 +44,7 @@ net.sf.json-lib json-lib jdk15 + true From 794cd5e1413f77f6a350528e4b068dad872c3642 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 Nov 2017 09:34:22 +0100 Subject: [PATCH 0272/2288] WW-4892 Marks handler as deprecated --- .../java/org/apache/struts2/rest/handler/JsonLibHandler.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java index fb86cc959b..84b19d875f 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/handler/JsonLibHandler.java @@ -34,7 +34,10 @@ /** * Handles JSON content using json-lib + * + * @deprecated Use {@link JacksonLibHandler} instead */ +@Deprecated public class JsonLibHandler extends AbstractContentTypeHandler { private static final String DEFAULT_CONTENT_TYPE = "application/json"; From b5e878e4212b0f4ef30b7bdf617a17819cc5baea Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Tue, 21 Nov 2017 20:44:11 +0200 Subject: [PATCH 0273/2288] replace String.valueOf with Objects.toString to better handle null values in java configuration --- .../config/entities/ConstantConfig.java | 71 ++++++++++--------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java index 00f3a13386..9f191e4b58 100644 --- a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java +++ b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.regex.Pattern; @@ -157,15 +158,15 @@ private String classesToString(Set> classes) { public Map getAllAsStringsMap() { Map map = new HashMap<>(); - map.put(StrutsConstants.STRUTS_DEVMODE, String.valueOf(devMode)); - map.put(StrutsConstants.STRUTS_I18N_RELOAD, String.valueOf(i18nReload)); + map.put(StrutsConstants.STRUTS_DEVMODE, Objects.toString(devMode, null)); + map.put(StrutsConstants.STRUTS_I18N_RELOAD, Objects.toString(i18nReload, null)); map.put(StrutsConstants.STRUTS_I18N_ENCODING, i18nEncoding); - map.put(StrutsConstants.STRUTS_CONFIGURATION_XML_RELOAD, String.valueOf(configurationXmlReload)); + map.put(StrutsConstants.STRUTS_CONFIGURATION_XML_RELOAD, Objects.toString(configurationXmlReload, null)); map.put(StrutsConstants.STRUTS_ACTION_EXTENSION, StringUtils.join(actionExtension, ',')); map.put(StrutsConstants.STRUTS_ACTION_EXCLUDE_PATTERN, StringUtils.join(actionExcludePattern, ',')); - map.put(StrutsConstants.STRUTS_TAG_ALTSYNTAX, String.valueOf(tagAltSyntax)); - map.put(StrutsConstants.STRUTS_URL_HTTP_PORT, String.valueOf(urlHttpPort)); - map.put(StrutsConstants.STRUTS_URL_HTTPS_PORT, String.valueOf(urlHttpsPort)); + map.put(StrutsConstants.STRUTS_TAG_ALTSYNTAX, Objects.toString(tagAltSyntax, null)); + map.put(StrutsConstants.STRUTS_URL_HTTP_PORT, Objects.toString(urlHttpPort, null)); + map.put(StrutsConstants.STRUTS_URL_HTTPS_PORT, Objects.toString(urlHttpsPort, null)); map.put(StrutsConstants.STRUTS_URL_INCLUDEPARAMS, urlIncludeParams); map.put(StrutsConstants.STRUTS_URL_RENDERER, beanConfToString(urlRenderer)); map.put(StrutsConstants.STRUTS_OBJECTFACTORY, beanConfToString(objectFactory)); @@ -177,11 +178,11 @@ public Map getAllAsStringsMap() { map.put(StrutsConstants.STRUTS_OBJECTFACTORY_UNKNOWNHANDLERFACTORY, beanConfToString(objectFactoryUnknownHandlerFactory)); map.put(StrutsConstants.STRUTS_OBJECTTYPEDETERMINER, beanConfToString(objectTypeDeterminer)); map.put(StrutsConstants.STRUTS_LOCALE, locale == null ? null : locale.getLanguage()); - map.put(StrutsConstants.STRUTS_DISPATCHER_PARAMETERSWORKAROUND, String.valueOf(dispatcherParametersWorkaround)); + map.put(StrutsConstants.STRUTS_DISPATCHER_PARAMETERSWORKAROUND, Objects.toString(dispatcherParametersWorkaround, null)); map.put(StrutsConstants.STRUTS_FREEMARKER_MANAGER_CLASSNAME, beanConfToString(freemarkerManagerClassname)); map.put(StrutsConstants.STRUTS_FREEMARKER_TEMPLATES_CACHE_UPDATE_DELAY, freemarkerTemplatesCacheUpdateDelay); - map.put(StrutsConstants.STRUTS_FREEMARKER_BEANWRAPPER_CACHE, String.valueOf(freemarkerBeanwrapperCache)); - map.put(StrutsConstants.STRUTS_FREEMARKER_MRU_MAX_STRONG_SIZE, String.valueOf(freemarkerMruMaxStrongSize)); + map.put(StrutsConstants.STRUTS_FREEMARKER_BEANWRAPPER_CACHE, Objects.toString(freemarkerBeanwrapperCache, null)); + map.put(StrutsConstants.STRUTS_FREEMARKER_MRU_MAX_STRONG_SIZE, Objects.toString(freemarkerMruMaxStrongSize, null)); map.put(StrutsConstants.STRUTS_VELOCITY_MANAGER_CLASSNAME, beanConfToString(velocityManagerClassname)); map.put(StrutsConstants.STRUTS_VELOCITY_CONFIGFILE, velocityConfigfile); map.put(StrutsConstants.STRUTS_VELOCITY_TOOLBOXLOCATION, velocityToolboxlocation); @@ -189,35 +190,35 @@ public Map getAllAsStringsMap() { map.put(StrutsConstants.STRUTS_UI_TEMPLATEDIR, uiTemplateDir); map.put(StrutsConstants.STRUTS_UI_THEME, uiTheme); map.put(StrutsConstants.STRUTS_UI_THEME_EXPANSION_TOKEN, uiThemeExpansionToken); - map.put(StrutsConstants.STRUTS_MULTIPART_MAXSIZE, String.valueOf(multipartMaxSize)); + map.put(StrutsConstants.STRUTS_MULTIPART_MAXSIZE, Objects.toString(multipartMaxSize, null)); map.put(StrutsConstants.STRUTS_MULTIPART_SAVEDIR, multipartSaveDir); - map.put(StrutsConstants.STRUTS_MULTIPART_BUFFERSIZE, String.valueOf(multipartBufferSize)); + map.put(StrutsConstants.STRUTS_MULTIPART_BUFFERSIZE, Objects.toString(multipartBufferSize, null)); map.put(StrutsConstants.STRUTS_MULTIPART_PARSER, beanConfToString(multipartParser)); - map.put(StrutsConstants.STRUTS_MULTIPART_ENABLED, String.valueOf(multipartEnabled)); - map.put(StrutsConstants.STRUTS_MULTIPART_VALIDATION_REGEX, String.valueOf(multipartValidationRegex)); + map.put(StrutsConstants.STRUTS_MULTIPART_ENABLED, Objects.toString(multipartEnabled, null)); + map.put(StrutsConstants.STRUTS_MULTIPART_VALIDATION_REGEX, Objects.toString(multipartValidationRegex, null)); map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_AUTOWIRE, objectFactorySpringAutoWire); - map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_AUTOWIRE_ALWAYS_RESPECT, String.valueOf(objectFactorySpringAutoWireAlwaysRespect)); - map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_USE_CLASS_CACHE, String.valueOf(objectFactorySpringUseClassCache)); - map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_ENABLE_AOP_SUPPORT, String.valueOf(objectFactorySpringEnableAopSupport)); - map.put(StrutsConstants.STRUTS_XSLT_NOCACHE, String.valueOf(xsltNocache)); + map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_AUTOWIRE_ALWAYS_RESPECT, Objects.toString(objectFactorySpringAutoWireAlwaysRespect, null)); + map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_USE_CLASS_CACHE, Objects.toString(objectFactorySpringUseClassCache, null)); + map.put(StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_ENABLE_AOP_SUPPORT, Objects.toString(objectFactorySpringEnableAopSupport, null)); + map.put(StrutsConstants.STRUTS_XSLT_NOCACHE, Objects.toString(xsltNocache, null)); map.put(StrutsConstants.STRUTS_CUSTOM_PROPERTIES, StringUtils.join(customProperties, ',')); map.put(StrutsConstants.STRUTS_CUSTOM_I18N_RESOURCES, StringUtils.join(customI18nResources, ',')); map.put(StrutsConstants.STRUTS_MAPPER_CLASS, beanConfToString(mapperClass)); map.put(StrutsConstants.PREFIX_BASED_MAPPER_CONFIGURATION, StringUtils.join(mapperPrefixMapping, ',')); - map.put(StrutsConstants.STRUTS_SERVE_STATIC_CONTENT, String.valueOf(serveStatic)); - map.put(StrutsConstants.STRUTS_SERVE_STATIC_BROWSER_CACHE, String.valueOf(serveStaticBrowserCache)); - map.put(StrutsConstants.STRUTS_ENABLE_DYNAMIC_METHOD_INVOCATION, String.valueOf(enableDynamicMethodInvocation)); - map.put(StrutsConstants.STRUTS_ENABLE_SLASHES_IN_ACTION_NAMES, String.valueOf(enableSlashesInActionNames)); + map.put(StrutsConstants.STRUTS_SERVE_STATIC_CONTENT, Objects.toString(serveStatic, null)); + map.put(StrutsConstants.STRUTS_SERVE_STATIC_BROWSER_CACHE, Objects.toString(serveStaticBrowserCache, null)); + map.put(StrutsConstants.STRUTS_ENABLE_DYNAMIC_METHOD_INVOCATION, Objects.toString(enableDynamicMethodInvocation, null)); + map.put(StrutsConstants.STRUTS_ENABLE_SLASHES_IN_ACTION_NAMES, Objects.toString(enableSlashesInActionNames, null)); map.put(StrutsConstants.STRUTS_MAPPER_COMPOSITE, StringUtils.join(mapperComposite, ',')); map.put(StrutsConstants.STRUTS_ACTIONPROXYFACTORY, beanConfToString(actionProxyFactory)); - map.put(StrutsConstants.STRUTS_FREEMARKER_WRAPPER_ALT_MAP, String.valueOf(freemarkerWrapperAltMap)); + map.put(StrutsConstants.STRUTS_FREEMARKER_WRAPPER_ALT_MAP, Objects.toString(freemarkerWrapperAltMap, null)); map.put(StrutsConstants.STRUTS_XWORKCONVERTER, beanConfToString(xworkConverter)); - map.put(StrutsConstants.STRUTS_ALWAYS_SELECT_FULL_NAMESPACE, String.valueOf(mapperAlwaysSelectFullNamespace)); + map.put(StrutsConstants.STRUTS_ALWAYS_SELECT_FULL_NAMESPACE, Objects.toString(mapperAlwaysSelectFullNamespace, null)); map.put(StrutsConstants.STRUTS_XWORKTEXTPROVIDER, beanConfToString(xworkTextProvider)); map.put(StrutsConstants.STRUTS_LOCALE_PROVIDER, beanConfToString(localeProvider)); map.put(StrutsConstants.STRUTS_LOCALE_PROVIDER_FACTORY, beanConfToString(localeProviderFactory)); map.put(StrutsConstants.STRUTS_ID_PARAMETER_NAME, mapperIdParameterName); - map.put(StrutsConstants.STRUTS_ALLOW_STATIC_METHOD_ACCESS, String.valueOf(ognlAllowStaticMethodAccess)); + map.put(StrutsConstants.STRUTS_ALLOW_STATIC_METHOD_ACCESS, Objects.toString(ognlAllowStaticMethodAccess, null)); map.put(StrutsConstants.STRUTS_ACTIONVALIDATORMANAGER, beanConfToString(actionValidatorManager)); map.put(StrutsConstants.STRUTS_VALUESTACKFACTORY, beanConfToString(valueStackFactory)); map.put(StrutsConstants.STRUTS_REFLECTIONPROVIDER, beanConfToString(reflectionProvider)); @@ -225,30 +226,30 @@ public Map getAllAsStringsMap() { map.put(StrutsConstants.STRUTS_PATTERNMATCHER, beanConfToString(patternMatcher)); map.put(StrutsConstants.STRUTS_STATIC_CONTENT_LOADER, beanConfToString(staticContentLoader)); map.put(StrutsConstants.STRUTS_UNKNOWN_HANDLER_MANAGER, beanConfToString(unknownHandlerManager)); - map.put(StrutsConstants.STRUTS_EL_THROW_EXCEPTION, String.valueOf(elThrowExceptionOnFailure)); - map.put(StrutsConstants.STRUTS_LOG_MISSING_PROPERTIES, String.valueOf(ognlLogMissingProperties)); - map.put(StrutsConstants.STRUTS_ENABLE_OGNL_EXPRESSION_CACHE, String.valueOf(ognlEnableExpressionCache)); - map.put(StrutsConstants.STRUTS_ENABLE_OGNL_EVAL_EXPRESSION, String.valueOf(ognlEnableOGNLEvalExpression)); - map.put(StrutsConstants.STRUTS_DISABLE_REQUEST_ATTRIBUTE_VALUE_STACK_LOOKUP, String.valueOf(disableRequestAttributeValueStackLookup)); + map.put(StrutsConstants.STRUTS_EL_THROW_EXCEPTION, Objects.toString(elThrowExceptionOnFailure, null)); + map.put(StrutsConstants.STRUTS_LOG_MISSING_PROPERTIES, Objects.toString(ognlLogMissingProperties, null)); + map.put(StrutsConstants.STRUTS_ENABLE_OGNL_EXPRESSION_CACHE, Objects.toString(ognlEnableExpressionCache, null)); + map.put(StrutsConstants.STRUTS_ENABLE_OGNL_EVAL_EXPRESSION, Objects.toString(ognlEnableOGNLEvalExpression, null)); + map.put(StrutsConstants.STRUTS_DISABLE_REQUEST_ATTRIBUTE_VALUE_STACK_LOOKUP, Objects.toString(disableRequestAttributeValueStackLookup, null)); map.put(StrutsConstants.STRUTS_URL_HELPER, beanConfToString(viewUrlHelper)); map.put(StrutsConstants.STRUTS_CONVERTER_COLLECTION, beanConfToString(converterCollection)); map.put(StrutsConstants.STRUTS_CONVERTER_ARRAY, beanConfToString(converterArray)); map.put(StrutsConstants.STRUTS_CONVERTER_DATE, beanConfToString(converterDate)); map.put(StrutsConstants.STRUTS_CONVERTER_NUMBER, beanConfToString(converterNumber)); map.put(StrutsConstants.STRUTS_CONVERTER_STRING, beanConfToString(converterString)); - map.put(StrutsConstants.STRUTS_HANDLE_EXCEPTION, String.valueOf(handleException)); + map.put(StrutsConstants.STRUTS_HANDLE_EXCEPTION, Objects.toString(handleException, null)); map.put(StrutsConstants.STRUTS_CONVERTER_PROPERTIES_PROCESSOR, beanConfToString(converterPropertiesProcessor)); map.put(StrutsConstants.STRUTS_CONVERTER_FILE_PROCESSOR, beanConfToString(converterFileProcessor)); map.put(StrutsConstants.STRUTS_CONVERTER_ANNOTATION_PROCESSOR, beanConfToString(converterAnnotationProcessor)); map.put(StrutsConstants.STRUTS_CONVERTER_CREATOR, beanConfToString(converterCreator)); map.put(StrutsConstants.STRUTS_CONVERTER_HOLDER, beanConfToString(ConverterHolder)); map.put(StrutsConstants.STRUTS_EXPRESSION_PARSER, beanConfToString(expressionParser)); - map.put(StrutsConstants.STRUTS_ALLOWED_ACTION_NAMES, String.valueOf(allowedActionNames)); + map.put(StrutsConstants.STRUTS_ALLOWED_ACTION_NAMES, Objects.toString(allowedActionNames, null)); map.put(StrutsConstants.STRUTS_DEFAULT_ACTION_NAME, defaultActionName); - map.put(StrutsConstants.STRUTS_ALLOWED_METHOD_NAMES, String.valueOf(allowedMethodNames)); + map.put(StrutsConstants.STRUTS_ALLOWED_METHOD_NAMES, Objects.toString(allowedMethodNames, null)); map.put(StrutsConstants.STRUTS_DEFAULT_METHOD_NAME, defaultMethodName); - map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_ENABLED, String.valueOf(mapperActionPrefixEnabled)); - map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES, String.valueOf(mapperActionPrefixCrossNamespaces)); + map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_ENABLED, Objects.toString(mapperActionPrefixEnabled, null)); + map.put(StrutsConstants.STRUTS_MAPPER_ACTION_PREFIX_CROSSNAMESPACES, Objects.toString(mapperActionPrefixCrossNamespaces, null)); map.put(StrutsConstants.DEFAULT_TEMPLATE_TYPE_CONFIG_KEY, uiTemplateSuffix); map.put(StrutsConstants.STRUTS_DISPATCHER_ERROR_HANDLER, beanConfToString(dispatcherErrorHandler)); map.put(StrutsConstants.STRUTS_EXCLUDED_CLASSES, classesToString(excludedClasses)); @@ -264,7 +265,7 @@ public Map getAllAsStringsMap() { map.put(StrutsConstants.STRUTS_SMI_METHOD_REGEX, strictMethodInvocationMethodRegex); map.put(StrutsConstants.STRUTS_TEXT_PROVIDER_FACTORY, beanConfToString(textProviderFactory)); map.put(StrutsConstants.STRUTS_LOCALIZED_TEXT_PROVIDER, beanConfToString(localizedTextProvider)); - map.put(StrutsConstants.STRUTS_DISALLOW_PROXY_MEMBER_ACCESS, String.valueOf(disallowProxyMemberAccess)); + map.put(StrutsConstants.STRUTS_DISALLOW_PROXY_MEMBER_ACCESS, Objects.toString(disallowProxyMemberAccess, null)); return map; } From 302b53d43c1665a745836ab355e1703a424e7f8d Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Tue, 21 Nov 2017 20:45:42 +0200 Subject: [PATCH 0274/2288] WW-4875 Add convention constant configuration --- .../entities/ConventionConstantConfig.java | 331 ++++++++++++++++++ 1 file changed, 331 insertions(+) create mode 100644 plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java b/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java new file mode 100644 index 0000000000..d151a154f1 --- /dev/null +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java @@ -0,0 +1,331 @@ +/* + * 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 org.apache.struts2.convention.config.entities; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; + +import org.apache.commons.lang3.StringUtils; +import org.apache.struts2.config.entities.BeanConfig; +import org.apache.struts2.config.entities.ConstantConfig; +import org.apache.struts2.convention.ConventionConstants; + +public class ConventionConstantConfig extends ConstantConfig { + private BeanConfig conventionActionConfigBuilder; + private BeanConfig conventionActionNameBuilder; + private BeanConfig conventionResultMapBuilder; + private BeanConfig conventionInterceptorMapBuilder; + private BeanConfig conventionConventionsService; + private Boolean conventionActionNameLowercase; + private String conventionActionNameSeparator; + private Set conventionActionSuffix; + private Boolean conventionClassesReload; + private String conventionResultPath; + private String conventionDefaultParentPackage; + private Boolean conventionRedirectToSlash; + private Set conventionRelativeResultTypes; + private Boolean conventionExcludeParentClassLoader; + private Boolean conventionActionAlwaysMapExecute; + private Set conventionActionFileProtocols; + private Boolean conventionActionDisableScanning; + private List conventionActionIncludeJars; + private Boolean conventionPackageLocatorsDisable; + private List conventionActionPackages; + private Boolean conventionActionCheckImplementsAction; + private List conventionExcludePackages; + private List conventionPackageLocators; + private String conventionPackageLocatorsBasePackage; + private Boolean conventionActionMapAllMatches; + private Boolean conventionActionEagerLoading; + private Boolean conventionResultFlatLayout; + + @Override + public Map getAllAsStringsMap() { + Map map = new HashMap<>(); + + map.put(ConventionConstants.CONVENTION_ACTION_CONFIG_BUILDER, beanConfToString(conventionActionConfigBuilder)); + map.put(ConventionConstants.CONVENTION_ACTION_NAME_BUILDER, beanConfToString(conventionActionNameBuilder)); + map.put(ConventionConstants.CONVENTION_RESULT_MAP_BUILDER, beanConfToString(conventionResultMapBuilder)); + map.put(ConventionConstants.CONVENTION_INTERCEPTOR_MAP_BUILDER, beanConfToString(conventionInterceptorMapBuilder)); + map.put(ConventionConstants.CONVENTION_CONVENTIONS_SERVICE, beanConfToString(conventionConventionsService)); + map.put(ConventionConstants.CONVENTION_ACTION_NAME_LOWERCASE, Objects.toString(conventionActionNameLowercase, null)); + map.put(ConventionConstants.CONVENTION_ACTION_NAME_SEPARATOR, conventionActionNameSeparator); + map.put(ConventionConstants.CONVENTION_ACTION_SUFFIX, StringUtils.join(conventionActionSuffix, ',')); + map.put(ConventionConstants.CONVENTION_CLASSES_RELOAD, Objects.toString(conventionClassesReload, null)); + map.put(ConventionConstants.CONVENTION_RESULT_PATH, conventionResultPath); + map.put(ConventionConstants.CONVENTION_DEFAULT_PARENT_PACKAGE, conventionDefaultParentPackage); + map.put(ConventionConstants.CONVENTION_REDIRECT_TO_SLASH, Objects.toString(conventionRedirectToSlash, null)); + map.put(ConventionConstants.CONVENTION_RELATIVE_RESULT_TYPES, StringUtils.join(conventionRelativeResultTypes, ',')); + map.put(ConventionConstants.CONVENTION_EXCLUDE_PARENT_CLASS_LOADER, Objects.toString(conventionExcludeParentClassLoader, null)); + map.put(ConventionConstants.CONVENTION_ACTION_ALWAYS_MAP_EXECUTE, Objects.toString(conventionActionAlwaysMapExecute, null)); + map.put(ConventionConstants.CONVENTION_ACTION_FILE_PROTOCOLS, StringUtils.join(conventionActionFileProtocols, ',')); + map.put(ConventionConstants.CONVENTION_ACTION_DISABLE_SCANNING, Objects.toString(conventionActionDisableScanning, null)); + map.put(ConventionConstants.CONVENTION_ACTION_INCLUDE_JARS, StringUtils.join(conventionActionIncludeJars, ',')); + map.put(ConventionConstants.CONVENTION_PACKAGE_LOCATORS_DISABLE, Objects.toString(conventionPackageLocatorsDisable, null)); + map.put(ConventionConstants.CONVENTION_ACTION_PACKAGES, StringUtils.join(conventionActionPackages, ',')); + map.put(ConventionConstants.CONVENTION_ACTION_CHECK_IMPLEMENTS_ACTION, Objects.toString(conventionActionCheckImplementsAction, null)); + map.put(ConventionConstants.CONVENTION_EXCLUDE_PACKAGES, StringUtils.join(conventionExcludePackages, ',')); + map.put(ConventionConstants.CONVENTION_PACKAGE_LOCATORS, StringUtils.join(conventionPackageLocators, ',')); + map.put(ConventionConstants.CONVENTION_PACKAGE_LOCATORS_BASE_PACKAGE, conventionPackageLocatorsBasePackage); + map.put(ConventionConstants.CONVENTION_ACTION_MAP_ALL_MATCHES, Objects.toString(conventionActionMapAllMatches, null)); + map.put(ConventionConstants.CONVENTION_ACTION_EAGER_LOADING, Objects.toString(conventionActionEagerLoading, null)); + map.put(ConventionConstants.CONVENTION_RESULT_FLAT_LAYOUT, Objects.toString(conventionResultFlatLayout, null)); + + return map; + } + + public BeanConfig getConventionActionConfigBuilder() { + return conventionActionConfigBuilder; + } + + public void setConventionActionConfigBuilder(BeanConfig conventionActionConfigBuilder) { + this.conventionActionConfigBuilder = conventionActionConfigBuilder; + } + + public void setConventionActionConfigBuilder(Class clazz) { + this.conventionActionConfigBuilder = new BeanConfig(clazz, clazz.getName()); + } + + public BeanConfig getConventionActionNameBuilder() { + return conventionActionNameBuilder; + } + + public void setConventionActionNameBuilder(BeanConfig conventionActionNameBuilder) { + this.conventionActionNameBuilder = conventionActionNameBuilder; + } + + public void setConventionActionNameBuilder(Class clazz) { + this.conventionActionNameBuilder = new BeanConfig(clazz, clazz.getName()); + } + + public BeanConfig getConventionResultMapBuilder() { + return conventionResultMapBuilder; + } + + public void setConventionResultMapBuilder(BeanConfig conventionResultMapBuilder) { + this.conventionResultMapBuilder = conventionResultMapBuilder; + } + + public void setConventionResultMapBuilder(Class clazz) { + this.conventionResultMapBuilder = new BeanConfig(clazz, clazz.getName()); + } + + public BeanConfig getConventionInterceptorMapBuilder() { + return conventionInterceptorMapBuilder; + } + + public void setConventionInterceptorMapBuilder(BeanConfig conventionInterceptorMapBuilder) { + this.conventionInterceptorMapBuilder = conventionInterceptorMapBuilder; + } + + public void setConventionInterceptorMapBuilder(Class clazz) { + this.conventionInterceptorMapBuilder = new BeanConfig(clazz, clazz.getName()); + } + + public BeanConfig getConventionConventionsService() { + return conventionConventionsService; + } + + public void setConventionConventionsService(BeanConfig conventionConventionsService) { + this.conventionConventionsService = conventionConventionsService; + } + + public void setConventionConventionsService(Class clazz) { + this.conventionConventionsService = new BeanConfig(clazz, clazz.getName()); + } + + public Boolean getConventionActionNameLowercase() { + return conventionActionNameLowercase; + } + + public void setConventionActionNameLowercase(Boolean conventionActionNameLowercase) { + this.conventionActionNameLowercase = conventionActionNameLowercase; + } + + public String getConventionActionNameSeparator() { + return conventionActionNameSeparator; + } + + public void setConventionActionNameSeparator(String conventionActionNameSeparator) { + this.conventionActionNameSeparator = conventionActionNameSeparator; + } + + public Set getConventionActionSuffix() { + return conventionActionSuffix; + } + + public void setConventionActionSuffix(Set conventionActionSuffix) { + this.conventionActionSuffix = conventionActionSuffix; + } + + public Boolean getConventionClassesReload() { + return conventionClassesReload; + } + + public void setConventionClassesReload(Boolean conventionClassesReload) { + this.conventionClassesReload = conventionClassesReload; + } + + public String getConventionResultPath() { + return conventionResultPath; + } + + public void setConventionResultPath(String conventionResultPath) { + this.conventionResultPath = conventionResultPath; + } + + public String getConventionDefaultParentPackage() { + return conventionDefaultParentPackage; + } + + public void setConventionDefaultParentPackage(String conventionDefaultParentPackage) { + this.conventionDefaultParentPackage = conventionDefaultParentPackage; + } + + public Boolean getConventionRedirectToSlash() { + return conventionRedirectToSlash; + } + + public void setConventionRedirectToSlash(Boolean conventionRedirectToSlash) { + this.conventionRedirectToSlash = conventionRedirectToSlash; + } + + public Set getConventionRelativeResultTypes() { + return conventionRelativeResultTypes; + } + + public void setConventionRelativeResultTypes(Set conventionRelativeResultTypes) { + this.conventionRelativeResultTypes = conventionRelativeResultTypes; + } + + public Boolean getConventionExcludeParentClassLoader() { + return conventionExcludeParentClassLoader; + } + + public void setConventionExcludeParentClassLoader(Boolean conventionExcludeParentClassLoader) { + this.conventionExcludeParentClassLoader = conventionExcludeParentClassLoader; + } + + public Boolean getConventionActionAlwaysMapExecute() { + return conventionActionAlwaysMapExecute; + } + + public void setConventionActionAlwaysMapExecute(Boolean conventionActionAlwaysMapExecute) { + this.conventionActionAlwaysMapExecute = conventionActionAlwaysMapExecute; + } + + public Set getConventionActionFileProtocols() { + return conventionActionFileProtocols; + } + + public void setConventionActionFileProtocols(Set conventionActionFileProtocols) { + this.conventionActionFileProtocols = conventionActionFileProtocols; + } + + public Boolean getConventionActionDisableScanning() { + return conventionActionDisableScanning; + } + + public void setConventionActionDisableScanning(Boolean conventionActionDisableScanning) { + this.conventionActionDisableScanning = conventionActionDisableScanning; + } + + public List getConventionActionIncludeJars() { + return conventionActionIncludeJars; + } + + public void setConventionActionIncludeJars(List conventionActionIncludeJars) { + this.conventionActionIncludeJars = conventionActionIncludeJars; + } + + public Boolean getConventionPackageLocatorsDisable() { + return conventionPackageLocatorsDisable; + } + + public void setConventionPackageLocatorsDisable(Boolean conventionPackageLocatorsDisable) { + this.conventionPackageLocatorsDisable = conventionPackageLocatorsDisable; + } + + public List getConventionActionPackages() { + return conventionActionPackages; + } + + public void setConventionActionPackages(List conventionActionPackages) { + this.conventionActionPackages = conventionActionPackages; + } + + public Boolean getConventionActionCheckImplementsAction() { + return conventionActionCheckImplementsAction; + } + + public void setConventionActionCheckImplementsAction(Boolean conventionActionCheckImplementsAction) { + this.conventionActionCheckImplementsAction = conventionActionCheckImplementsAction; + } + + public List getConventionExcludePackages() { + return conventionExcludePackages; + } + + public void setConventionExcludePackages(List conventionExcludePackages) { + this.conventionExcludePackages = conventionExcludePackages; + } + + public List getConventionPackageLocators() { + return conventionPackageLocators; + } + + public void setConventionPackageLocators(List conventionPackageLocators) { + this.conventionPackageLocators = conventionPackageLocators; + } + + public String getConventionPackageLocatorsBasePackage() { + return conventionPackageLocatorsBasePackage; + } + + public void setConventionPackageLocatorsBasePackage(String conventionPackageLocatorsBasePackage) { + this.conventionPackageLocatorsBasePackage = conventionPackageLocatorsBasePackage; + } + + public Boolean getConventionActionMapAllMatches() { + return conventionActionMapAllMatches; + } + + public void setConventionActionMapAllMatches(Boolean conventionActionMapAllMatches) { + this.conventionActionMapAllMatches = conventionActionMapAllMatches; + } + + public Boolean getConventionActionEagerLoading() { + return conventionActionEagerLoading; + } + + public void setConventionActionEagerLoading(Boolean conventionActionEagerLoading) { + this.conventionActionEagerLoading = conventionActionEagerLoading; + } + + public Boolean getConventionResultFlatLayout() { + return conventionResultFlatLayout; + } + + public void setConventionResultFlatLayout(Boolean conventionResultFlatLayout) { + this.conventionResultFlatLayout = conventionResultFlatLayout; + } +} From 7a9b5029a59412e1b9faf1a1699451f880e29af0 Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Tue, 21 Nov 2017 20:46:36 +0200 Subject: [PATCH 0275/2288] WW-4875 Add json constant configuration --- .../apache/struts2/json/JSONConstants.java | 1 + .../org/apache/struts2/json/JSONResult.java | 2 +- .../config/entities/JSONConstantConfig.java | 71 +++++++++++++++++++ 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 plugins/json/src/main/java/org/apache/struts2/json/config/entities/JSONConstantConfig.java diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java index e3dbf4b7b8..f5cb292bda 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONConstants.java @@ -30,4 +30,5 @@ public class JSONConstants { public static final String JSON_WRITER = "struts.json.writer"; public static final String RESULT_EXCLUDE_PROXY_PROPERTIES = "struts.json.result.excludeProxyProperties"; + public static final String DATE_FORMAT = "struts.json.dateformat"; } diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java index 4eba2630d4..0547e92c81 100644 --- a/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java +++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java @@ -456,7 +456,7 @@ public String getDefaultDateFormat() { return defaultDateFormat; } - @Inject(required=false,value="struts.json.dateformat") + @Inject(required = false, value = JSONConstants.DATE_FORMAT) public void setDefaultDateFormat(String defaultDateFormat) { this.defaultDateFormat = defaultDateFormat; } diff --git a/plugins/json/src/main/java/org/apache/struts2/json/config/entities/JSONConstantConfig.java b/plugins/json/src/main/java/org/apache/struts2/json/config/entities/JSONConstantConfig.java new file mode 100644 index 0000000000..ee7fab60f4 --- /dev/null +++ b/plugins/json/src/main/java/org/apache/struts2/json/config/entities/JSONConstantConfig.java @@ -0,0 +1,71 @@ +/* + * 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 org.apache.struts2.json.config.entities; + +import java.util.Map; +import java.util.Objects; + +import org.apache.struts2.config.entities.BeanConfig; +import org.apache.struts2.config.entities.ConstantConfig; +import org.apache.struts2.json.JSONConstants; + +public class JSONConstantConfig extends ConstantConfig { + private BeanConfig jsonWriter; + private Boolean jsonResultExcludeProxyProperties; + private String jsonDateFormat; + + @Override + public Map getAllAsStringsMap() { + Map map = super.getAllAsStringsMap(); + + map.put(JSONConstants.JSON_WRITER, beanConfToString(jsonWriter)); + map.put(JSONConstants.RESULT_EXCLUDE_PROXY_PROPERTIES, Objects.toString(jsonResultExcludeProxyProperties, null)); + map.put(JSONConstants.DATE_FORMAT, jsonDateFormat); + + return map; + } + + public BeanConfig getJsonWriter() { + return jsonWriter; + } + + public void setJsonWriter(BeanConfig jsonWriter) { + this.jsonWriter = jsonWriter; + } + + public void setJsonWriter(Class clazz) { + this.jsonWriter = new BeanConfig(clazz, clazz.getName()); + } + + public Boolean getJsonResultExcludeProxyProperties() { + return jsonResultExcludeProxyProperties; + } + + public void setJsonResultExcludeProxyProperties(Boolean jsonResultExcludeProxyProperties) { + this.jsonResultExcludeProxyProperties = jsonResultExcludeProxyProperties; + } + + public String getJsonDateFormat() { + return jsonDateFormat; + } + + public void setJsonDateFormat(String jsonDateFormat) { + this.jsonDateFormat = jsonDateFormat; + } +} From 9f082b264ca4b4ddff1ff134af7521d478082c5b Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Tue, 21 Nov 2017 22:26:52 +0200 Subject: [PATCH 0276/2288] Make ConventionConstantConfig inherit map of constants from ConstantConfig --- .../convention/config/entities/ConventionConstantConfig.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java b/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java index d151a154f1..50bca2c886 100644 --- a/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java +++ b/plugins/convention/src/main/java/org/apache/struts2/convention/config/entities/ConventionConstantConfig.java @@ -18,7 +18,6 @@ */ package org.apache.struts2.convention.config.entities; -import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; @@ -60,7 +59,7 @@ public class ConventionConstantConfig extends ConstantConfig { @Override public Map getAllAsStringsMap() { - Map map = new HashMap<>(); + Map map = super.getAllAsStringsMap(); map.put(ConventionConstants.CONVENTION_ACTION_CONFIG_BUILDER, beanConfToString(conventionActionConfigBuilder)); map.put(ConventionConstants.CONVENTION_ACTION_NAME_BUILDER, beanConfToString(conventionActionNameBuilder)); From a049d1709b65ea01a2ddcee659fd74c5e5cb24bf Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Sat, 25 Nov 2017 02:06:44 +0200 Subject: [PATCH 0277/2288] WW-4875 Add rest constant configuration --- .../DefaultContentTypeHandlerManager.java | 2 +- .../struts2/rest/RestActionInvocation.java | 6 +- .../apache/struts2/rest/RestActionMapper.java | 20 +- .../struts2/rest/RestActionProxyFactory.java | 4 +- .../apache/struts2/rest/RestConstants.java | 38 ++++ .../struts2/rest/RestWorkflowInterceptor.java | 10 +- .../config/entities/RestConstantConfig.java | 196 ++++++++++++++++++ 7 files changed, 254 insertions(+), 22 deletions(-) create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/RestConstants.java create mode 100644 plugins/rest/src/main/java/org/apache/struts2/rest/config/entities/RestConstantConfig.java diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java index 8379a027b3..c2c89f5441 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/DefaultContentTypeHandlerManager.java @@ -50,7 +50,7 @@ public class DefaultContentTypeHandlerManager implements ContentTypeHandlerManag private String defaultExtension; - @Inject("struts.rest.defaultExtension") + @Inject(RestConstants.REST_DEFAULT_EXTENSION) public void setDefaultExtension(String name) { this.defaultExtension = name; } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java index e018591c68..0067085ab8 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java @@ -64,12 +64,12 @@ protected RestActionInvocation(final Map extraContext, boolean p super(extraContext, pushAction); } - @Inject("struts.rest.logger") + @Inject(RestConstants.REST_LOGGER) public void setLogger(String logger) { this.logger = BooleanUtils.toBoolean(logger); } - @Inject("struts.rest.defaultErrorResultName") + @Inject(RestConstants.REST_DEFAULT_ERROR_RESULT_NAME) public void setDefaultErrorResultName(String defaultErrorResultName) { this.defaultErrorResultName = defaultErrorResultName; } @@ -80,7 +80,7 @@ public void setDefaultErrorResultName(String defaultErrorResultName) { * * @param restrictToGet true or false */ - @Inject(value = "struts.rest.content.restrictToGET", required = false) + @Inject(value = RestConstants.REST_CONTENT_RESTRICT_TO_GET, required = false) public void setRestrictToGet(String restrictToGet) { this.restrictToGet = BooleanUtils.toBoolean(restrictToGet); } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java index 1503ae2249..61fef60c2e 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java @@ -130,52 +130,52 @@ public void setIdParameterName(String idParameterName) { this.idParameterName = idParameterName; } - @Inject(required=false,value="struts.mapper.indexMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_INDEX_METHOD_NAME) public void setIndexMethodName(String indexMethodName) { this.indexMethodName = indexMethodName; } - @Inject(required=false,value="struts.mapper.getMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_GET_METHOD_NAME) public void setGetMethodName(String getMethodName) { this.getMethodName = getMethodName; } - @Inject(required=false,value="struts.mapper.postMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_POST_METHOD_NAME) public void setPostMethodName(String postMethodName) { this.postMethodName = postMethodName; } - @Inject(required=false,value="struts.mapper.editMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_EDIT_METHOD_NAME) public void setEditMethodName(String editMethodName) { this.editMethodName = editMethodName; } - @Inject(required=false,value="struts.mapper.newMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_NEW_METHOD_NAME) public void setNewMethodName(String newMethodName) { this.newMethodName = newMethodName; } - @Inject(required=false,value="struts.mapper.deleteMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_DELETE_METHOD_NAME) public void setDeleteMethodName(String deleteMethodName) { this.deleteMethodName = deleteMethodName; } - @Inject(required=false,value="struts.mapper.putMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_PUT_METHOD_NAME) public void setPutMethodName(String putMethodName) { this.putMethodName = putMethodName; } - @Inject(required=false,value="struts.mapper.optionsMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_OPTIONS_METHOD_NAME) public void setOptionsMethodName(String optionsMethodName) { this.optionsMethodName = optionsMethodName; } - @Inject(required=false,value="struts.mapper.postContinueMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_POST_CONTINUE_METHOD_NAME) public void setPostContinueMethodName(String postContinueMethodName) { this.postContinueMethodName = postContinueMethodName; } - @Inject(required=false,value="struts.mapper.putContinueMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_PUT_CONTINUE_METHOD_NAME) public void setPutContinueMethodName(String putContinueMethodName) { this.putContinueMethodName = putContinueMethodName; } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java index 3794faa8d1..33227d831b 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionProxyFactory.java @@ -31,11 +31,9 @@ */ public class RestActionProxyFactory extends DefaultActionProxyFactory { - public static final String STRUTS_REST_NAMESPACE = "struts.rest.namespace"; - protected String namespace; - @Inject(value = STRUTS_REST_NAMESPACE, required = false) + @Inject(value = RestConstants.STRUTS_REST_NAMESPACE, required = false) public void setNamespace(String namespace) { this.namespace = namespace; } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestConstants.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestConstants.java new file mode 100644 index 0000000000..cb47b6a939 --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestConstants.java @@ -0,0 +1,38 @@ +/* + * 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 org.apache.struts2.rest; + +public class RestConstants { + public static final String REST_DEFAULT_EXTENSION = "struts.rest.defaultExtension"; + public static final String REST_LOGGER = "struts.rest.logger"; + public static final String REST_DEFAULT_ERROR_RESULT_NAME = "struts.rest.defaultErrorResultName"; + public static final String REST_CONTENT_RESTRICT_TO_GET = "struts.rest.content.restrictToGET"; + public static final String REST_MAPPER_INDEX_METHOD_NAME = "struts.mapper.indexMethodName"; + public static final String REST_MAPPER_GET_METHOD_NAME = "struts.mapper.getMethodName"; + public static final String REST_MAPPER_POST_METHOD_NAME = "struts.mapper.postMethodName"; + public static final String REST_MAPPER_EDIT_METHOD_NAME = "struts.mapper.editMethodName"; + public static final String REST_MAPPER_NEW_METHOD_NAME = "struts.mapper.newMethodName"; + public static final String REST_MAPPER_DELETE_METHOD_NAME = "struts.mapper.deleteMethodName"; + public static final String REST_MAPPER_PUT_METHOD_NAME = "struts.mapper.putMethodName"; + public static final String REST_MAPPER_OPTIONS_METHOD_NAME = "struts.mapper.optionsMethodName"; + public static final String REST_MAPPER_POST_CONTINUE_METHOD_NAME = "struts.mapper.postContinueMethodName"; + public static final String REST_MAPPER_PUT_CONTINUE_METHOD_NAME = "struts.mapper.putContinueMethodName"; + public static final String STRUTS_REST_NAMESPACE = "struts.rest.namespace"; + public static final String REST_VALIDATION_FAILURE_STATUS_CODE = "struts.rest.validationFailureStatusCode"; +} diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java index 37122259b4..f685fa38df 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestWorkflowInterceptor.java @@ -146,27 +146,27 @@ public class RestWorkflowInterceptor extends MethodFilterInterceptor { private int validationFailureStatusCode = SC_BAD_REQUEST; - @Inject(required=false,value="struts.mapper.postMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_POST_METHOD_NAME) public void setPostMethodName(String postMethodName) { this.postMethodName = postMethodName; } - @Inject(required=false,value="struts.mapper.editMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_EDIT_METHOD_NAME) public void setEditMethodName(String editMethodName) { this.editMethodName = editMethodName; } - @Inject(required=false,value="struts.mapper.newMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_NEW_METHOD_NAME) public void setNewMethodName(String newMethodName) { this.newMethodName = newMethodName; } - @Inject(required=false,value="struts.mapper.putMethodName") + @Inject(required = false, value = RestConstants.REST_MAPPER_PUT_METHOD_NAME) public void setPutMethodName(String putMethodName) { this.putMethodName = putMethodName; } - @Inject(required=false,value="struts.rest.validationFailureStatusCode") + @Inject(required = false, value = RestConstants.REST_VALIDATION_FAILURE_STATUS_CODE) public void setValidationFailureStatusCode(String code) { this.validationFailureStatusCode = Integer.parseInt(code); } diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/config/entities/RestConstantConfig.java b/plugins/rest/src/main/java/org/apache/struts2/rest/config/entities/RestConstantConfig.java new file mode 100644 index 0000000000..d83f01b42b --- /dev/null +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/config/entities/RestConstantConfig.java @@ -0,0 +1,196 @@ +/* + * 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 org.apache.struts2.rest.config.entities; + +import java.util.Map; +import java.util.Objects; + +import org.apache.struts2.config.entities.ConstantConfig; +import org.apache.struts2.rest.RestConstants; + +public class RestConstantConfig extends ConstantConfig { + private String restDefaultExtension; + private Boolean restLogger; + private String restDefaultErrorResultName; + private Boolean restContentRestrictToGet; + private String mapperIndexMethodName; + private String mapperGetMethodName; + private String mapperPostMethodName; + private String mapperEditMethodName; + private String mapperNewMethodName; + private String mapperDeleteMethodName; + private String mapperPutMethodName; + private String mapperOptionsMethodName; + private String mapperPostContinueMethodName; + private String mapperPutContinueMethodName; + private String restNamespace; + private String restValidationFailureStatusCode; + + @Override + public Map getAllAsStringsMap() { + Map map = super.getAllAsStringsMap(); + + map.put(RestConstants.REST_DEFAULT_EXTENSION, restDefaultExtension); + map.put(RestConstants.REST_LOGGER, Objects.toString(restLogger, null)); + map.put(RestConstants.REST_DEFAULT_ERROR_RESULT_NAME, restDefaultErrorResultName); + map.put(RestConstants.REST_CONTENT_RESTRICT_TO_GET, Objects.toString(restContentRestrictToGet, null)); + map.put(RestConstants.REST_MAPPER_INDEX_METHOD_NAME, mapperIndexMethodName); + map.put(RestConstants.REST_MAPPER_GET_METHOD_NAME, mapperGetMethodName); + map.put(RestConstants.REST_MAPPER_POST_METHOD_NAME, mapperPostMethodName); + map.put(RestConstants.REST_MAPPER_EDIT_METHOD_NAME, mapperEditMethodName); + map.put(RestConstants.REST_MAPPER_NEW_METHOD_NAME, mapperNewMethodName); + map.put(RestConstants.REST_MAPPER_DELETE_METHOD_NAME, mapperDeleteMethodName); + map.put(RestConstants.REST_MAPPER_PUT_METHOD_NAME, mapperPutMethodName); + map.put(RestConstants.REST_MAPPER_OPTIONS_METHOD_NAME, mapperOptionsMethodName); + map.put(RestConstants.REST_MAPPER_POST_CONTINUE_METHOD_NAME, mapperPostContinueMethodName); + map.put(RestConstants.REST_MAPPER_PUT_CONTINUE_METHOD_NAME, mapperPutContinueMethodName); + map.put(RestConstants.STRUTS_REST_NAMESPACE, restNamespace); + map.put(RestConstants.REST_VALIDATION_FAILURE_STATUS_CODE, restValidationFailureStatusCode); + + return map; + } + + public String getRestDefaultExtension() { + return restDefaultExtension; + } + + public void setRestDefaultExtension(String restDefaultExtension) { + this.restDefaultExtension = restDefaultExtension; + } + + public Boolean getRestLogger() { + return restLogger; + } + + public void setRestLogger(Boolean restLogger) { + this.restLogger = restLogger; + } + + public String getRestDefaultErrorResultName() { + return restDefaultErrorResultName; + } + + public void setRestDefaultErrorResultName(String restDefaultErrorResultName) { + this.restDefaultErrorResultName = restDefaultErrorResultName; + } + + public Boolean getRestContentRestrictToGet() { + return restContentRestrictToGet; + } + + public void setRestContentRestrictToGet(Boolean restContentRestrictToGet) { + this.restContentRestrictToGet = restContentRestrictToGet; + } + + public String getMapperIndexMethodName() { + return mapperIndexMethodName; + } + + public void setMapperIndexMethodName(String mapperIndexMethodName) { + this.mapperIndexMethodName = mapperIndexMethodName; + } + + public String getMapperGetMethodName() { + return mapperGetMethodName; + } + + public void setMapperGetMethodName(String mapperGetMethodName) { + this.mapperGetMethodName = mapperGetMethodName; + } + + public String getMapperPostMethodName() { + return mapperPostMethodName; + } + + public void setMapperPostMethodName(String mapperPostMethodName) { + this.mapperPostMethodName = mapperPostMethodName; + } + + public String getMapperEditMethodName() { + return mapperEditMethodName; + } + + public void setMapperEditMethodName(String mapperEditMethodName) { + this.mapperEditMethodName = mapperEditMethodName; + } + + public String getMapperNewMethodName() { + return mapperNewMethodName; + } + + public void setMapperNewMethodName(String mapperNewMethodName) { + this.mapperNewMethodName = mapperNewMethodName; + } + + public String getMapperDeleteMethodName() { + return mapperDeleteMethodName; + } + + public void setMapperDeleteMethodName(String mapperDeleteMethodName) { + this.mapperDeleteMethodName = mapperDeleteMethodName; + } + + public String getMapperPutMethodName() { + return mapperPutMethodName; + } + + public void setMapperPutMethodName(String mapperPutMethodName) { + this.mapperPutMethodName = mapperPutMethodName; + } + + public String getMapperOptionsMethodName() { + return mapperOptionsMethodName; + } + + public void setMapperOptionsMethodName(String mapperOptionsMethodName) { + this.mapperOptionsMethodName = mapperOptionsMethodName; + } + + public String getMapperPostContinueMethodName() { + return mapperPostContinueMethodName; + } + + public void setMapperPostContinueMethodName(String mapperPostContinueMethodName) { + this.mapperPostContinueMethodName = mapperPostContinueMethodName; + } + + public String getMapperPutContinueMethodName() { + return mapperPutContinueMethodName; + } + + public void setMapperPutContinueMethodName(String mapperPutContinueMethodName) { + this.mapperPutContinueMethodName = mapperPutContinueMethodName; + } + + public String getRestNamespace() { + return restNamespace; + } + + public void setRestNamespace(String restNamespace) { + this.restNamespace = restNamespace; + } + + public String getRestValidationFailureStatusCode() { + return restValidationFailureStatusCode; + } + + public void setRestValidationFailureStatusCode(String restValidationFailureStatusCode) { + this.restValidationFailureStatusCode = restValidationFailureStatusCode; + } +} From eaed709f1d314f02b3318667c434e5addc922154 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 25 Nov 2017 10:11:26 +0330 Subject: [PATCH 0278/2288] WW-4874 Refactors technology name, servlet3, to asset name, async --- plugins/{servlet3 => async}/pom.xml | 4 ++-- .../main/java/org/apache/struts2}/async/AsyncAction.java | 2 +- .../java/org/apache/struts2/async/DefaultAsyncManager.java} | 6 +++--- .../src/main/resources/struts-plugin.xml | 2 +- plugins/pom.xml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) rename plugins/{servlet3 => async}/pom.xml (94%) rename plugins/{servlet3/src/main/java/org/apache/struts2/servlet3 => async/src/main/java/org/apache/struts2}/async/AsyncAction.java (97%) rename plugins/{servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java => async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java} (95%) rename plugins/{servlet3 => async}/src/main/resources/struts-plugin.xml (92%) diff --git a/plugins/servlet3/pom.xml b/plugins/async/pom.xml similarity index 94% rename from plugins/servlet3/pom.xml rename to plugins/async/pom.xml index 36de62611a..6ed07cff89 100644 --- a/plugins/servlet3/pom.xml +++ b/plugins/async/pom.xml @@ -27,8 +27,8 @@ 2.5.14-SNAPSHOT - struts2-servlet3-plugin - Struts 2 Servlet3 Plugin + struts2-async-plugin + Struts 2 Async Plugin jar diff --git a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java similarity index 97% rename from plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java rename to plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java index 912cfe765d..27729d56bf 100644 --- a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/AsyncAction.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.struts2.servlet3.async; +package org.apache.struts2.async; import java.util.concurrent.Callable; import java.util.concurrent.Executor; diff --git a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java similarity index 95% rename from plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java rename to plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java index f72f580369..4617dca3b9 100644 --- a/plugins/servlet3/src/main/java/org/apache/struts2/servlet3/async/Servlet3AsyncManager.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.struts2.servlet3.async; +package org.apache.struts2.async; import com.opensymphony.xwork2.AsyncManager; import org.apache.logging.log4j.LogManager; @@ -37,8 +37,8 @@ * * @since 2.5.14 */ -public class Servlet3AsyncManager implements AsyncManager, AsyncListener { - private static final Logger LOG = LogManager.getLogger(Servlet3AsyncManager.class); +public class DefaultAsyncManager implements AsyncManager, AsyncListener { + private static final Logger LOG = LogManager.getLogger(DefaultAsyncManager.class); private static final AtomicInteger threadCount = new AtomicInteger(0); private AsyncContext asyncContext; diff --git a/plugins/servlet3/src/main/resources/struts-plugin.xml b/plugins/async/src/main/resources/struts-plugin.xml similarity index 92% rename from plugins/servlet3/src/main/resources/struts-plugin.xml rename to plugins/async/src/main/resources/struts-plugin.xml index 9c6a75208f..fb71372d9c 100644 --- a/plugins/servlet3/src/main/resources/struts-plugin.xml +++ b/plugins/async/src/main/resources/struts-plugin.xml @@ -25,5 +25,5 @@ + class="org.apache.struts2.async.DefaultAsyncManager" scope="prototype" /> diff --git a/plugins/pom.xml b/plugins/pom.xml index 4a9c7647d4..d94046cd73 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -56,7 +56,7 @@ spring testng tiles - servlet3 + async From 4ac287abd7da73273b162b2dc203c3636e9cb44f Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 25 Nov 2017 19:26:02 +0330 Subject: [PATCH 0279/2288] WW-4874 Adds unit tests --- .../xwork2/DefaultActionInvocationTest.java | 92 +++++++++++++- .../struts2/dispatcher/DispatcherTest.java | 30 +++++ .../dispatcher/PrepareOperationsTest.java | 42 +++++++ plugins/async/pom.xml | 18 +++ .../async/DefaultAsyncManagerTest.java | 113 ++++++++++++++++++ 5 files changed, 293 insertions(+), 2 deletions(-) create mode 100644 core/src/test/java/org/apache/struts2/dispatcher/PrepareOperationsTest.java create mode 100644 plugins/async/src/test/java/org/apache/struts2/async/DefaultAsyncManagerTest.java diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java index 334839082a..4226ef83a6 100644 --- a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java @@ -22,10 +22,10 @@ import com.opensymphony.xwork2.config.entities.InterceptorMapping; import com.opensymphony.xwork2.config.entities.ResultConfig; import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; +import com.opensymphony.xwork2.interceptor.PreResultListener; import com.opensymphony.xwork2.mock.MockActionProxy; import com.opensymphony.xwork2.mock.MockContainer; import com.opensymphony.xwork2.mock.MockInterceptor; -import com.opensymphony.xwork2.mock.MockLazyInterceptor; import com.opensymphony.xwork2.ognl.OgnlUtil; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -34,7 +34,9 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.Map; +import java.util.concurrent.Callable; +import java.util.concurrent.Semaphore; +import java.util.concurrent.TimeUnit; /** @@ -340,6 +342,92 @@ public void testInvokeWithLazyParams() throws Exception { assertEquals("this is blah", action.getName()); } + public void testInvokeWithAsyncManager() throws Exception { + DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false); + dai.stack = container.getInstance(ValueStackFactory.class).createValueStack(); + + final Semaphore lock = new Semaphore(1); + lock.acquire(); + dai.setAsyncManager(new AsyncManager() { + Object asyncActionResult; + @Override + public boolean hasAsyncActionResult() { + return asyncActionResult != null; + } + + @Override + public Object getAsyncActionResult() { + return asyncActionResult; + } + + @Override + public void invokeAsyncAction(Callable asyncAction) { + try { + asyncActionResult = asyncAction.call(); + } catch (Exception e) { + asyncActionResult = e; + } + lock.release(); + } + }); + + dai.action = new Callable>() { + @Override + public Callable call() throws Exception { + return new Callable() { + @Override + public String call() throws Exception { + return "success"; + } + }; + } + }; + + MockActionProxy actionProxy = new MockActionProxy(); + actionProxy.setMethod("call"); + dai.proxy = actionProxy; + + final boolean[] preResultExecuted = new boolean[1]; + dai.addPreResultListener(new PreResultListener() { + @Override + public void beforeResult(ActionInvocation invocation, String resultCode) { + preResultExecuted[0] = true; + } + }); + + List interceptorMappings = new ArrayList<>(); + MockInterceptor mockInterceptor1 = new MockInterceptor(); + mockInterceptor1.setFoo("test1"); + mockInterceptor1.setExpectedFoo("test1"); + interceptorMappings.add(new InterceptorMapping("test1", mockInterceptor1)); + dai.interceptors = interceptorMappings.iterator(); + + dai.ognlUtil = new OgnlUtil(); + + dai.invoke(); + + assertTrue("interceptor1 should be executed", mockInterceptor1.isExecuted()); + assertFalse("preResultListener should no be executed", preResultExecuted[0]); + assertNotNull("an async action should be saved", dai.asyncAction); + assertFalse("invocation should not be executed", dai.executed); + assertNull("a null result should be passed to upper and wait for the async result", dai.resultCode); + + if(lock.tryAcquire(1500L, TimeUnit.MILLISECONDS)) { + try { + dai.invoke(); + assertTrue("preResultListener should be executed", preResultExecuted[0]); + assertNull("async action should be cleared", dai.asyncAction); + assertTrue("invocation should be executed", dai.executed); + assertEquals("success", dai.resultCode); + } finally { + lock.release(); + } + } else { + lock.release(); + fail("async result did not received on timeout!"); + } + } + @Override protected void setUp() throws Exception { super.setUp(); diff --git a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java index 7e25fb11fe..6ff9186537 100644 --- a/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java +++ b/core/src/test/java/org/apache/struts2/dispatcher/DispatcherTest.java @@ -20,7 +20,9 @@ import com.mockobjects.dynamic.C; import com.mockobjects.dynamic.Mock; +import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ObjectFactory; +import com.opensymphony.xwork2.StubValueStack; import com.opensymphony.xwork2.XWorkConstants; import com.opensymphony.xwork2.config.Configuration; import com.opensymphony.xwork2.config.ConfigurationManager; @@ -30,8 +32,12 @@ import com.opensymphony.xwork2.inject.Container; import com.opensymphony.xwork2.interceptor.Interceptor; import com.opensymphony.xwork2.LocalizedTextProvider; +import com.opensymphony.xwork2.mock.MockActionInvocation; +import com.opensymphony.xwork2.mock.MockActionProxy; +import org.apache.struts2.ServletActionContext; import org.apache.struts2.StrutsConstants; import org.apache.struts2.StrutsInternalTestCase; +import org.apache.struts2.dispatcher.mapper.ActionMapping; import org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper; import org.apache.struts2.util.ObjectFactoryDestroyable; import org.springframework.mock.web.MockHttpServletRequest; @@ -321,6 +327,30 @@ public void testIsMultipartRequest() throws Exception { assertTrue(du.isMultipartRequest(req)); } + public void testServiceActionResumePreviousProxy() throws Exception { + Dispatcher du = initDispatcher(Collections.emptyMap()); + + MockActionInvocation mai = new MockActionInvocation(); + ActionContext.getContext().setActionInvocation(mai); + + MockActionProxy actionProxy = new MockActionProxy(); + actionProxy.setInvocation(mai); + mai.setProxy(actionProxy); + + mai.setStack(new StubValueStack()); + + HttpServletRequest req = new MockHttpServletRequest(); + req.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, mai.getStack()); + + assertFalse(actionProxy.isExecutedCalled()); + + du.setDevMode("false"); + du.setHandleException("false"); + du.serviceAction(req, null, new ActionMapping()); + + assertTrue("should execute previous proxy", actionProxy.isExecutedCalled()); + } + class InternalConfigurationManager extends ConfigurationManager { public boolean destroyConfiguration = false; diff --git a/core/src/test/java/org/apache/struts2/dispatcher/PrepareOperationsTest.java b/core/src/test/java/org/apache/struts2/dispatcher/PrepareOperationsTest.java new file mode 100644 index 0000000000..02b705b11e --- /dev/null +++ b/core/src/test/java/org/apache/struts2/dispatcher/PrepareOperationsTest.java @@ -0,0 +1,42 @@ +/* + * 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 org.apache.struts2.dispatcher; + +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.StubValueStack; +import org.apache.struts2.ServletActionContext; +import org.apache.struts2.StrutsInternalTestCase; +import org.springframework.mock.web.MockHttpServletRequest; + +import javax.servlet.http.HttpServletRequest; + +public class PrepareOperationsTest extends StrutsInternalTestCase { + public void testCreateActionContextWhenRequestHasOne() { + HttpServletRequest req = new MockHttpServletRequest(); + StubValueStack stack = new StubValueStack(); + req.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, stack); + + PrepareOperations prepare = new PrepareOperations(null); + + ActionContext.setContext(null); + ActionContext actionContext = prepare.createActionContext(req, null); + + assertEquals(stack.getContext(), actionContext.getContextMap()); + } +} diff --git a/plugins/async/pom.xml b/plugins/async/pom.xml index 6ed07cff89..b5e5ae02b5 100644 --- a/plugins/async/pom.xml +++ b/plugins/async/pom.xml @@ -42,5 +42,23 @@ 3.0.1 provided + + + mockobjects + mockobjects-core + test + + + + org.springframework + spring-test + test + + + + org.springframework + spring-web + test + diff --git a/plugins/async/src/test/java/org/apache/struts2/async/DefaultAsyncManagerTest.java b/plugins/async/src/test/java/org/apache/struts2/async/DefaultAsyncManagerTest.java new file mode 100644 index 0000000000..f4bc21bef5 --- /dev/null +++ b/plugins/async/src/test/java/org/apache/struts2/async/DefaultAsyncManagerTest.java @@ -0,0 +1,113 @@ +/* + * 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 org.apache.struts2.async; + +import com.opensymphony.xwork2.XWorkTestCase; +import org.apache.struts2.ServletActionContext; +import org.springframework.mock.web.MockAsyncContext; +import org.springframework.mock.web.MockHttpServletRequest; + +import java.util.concurrent.Callable; +import java.util.concurrent.Semaphore; +import java.util.concurrent.TimeUnit; + +public class DefaultAsyncManagerTest extends XWorkTestCase { + public void testInvokeAsyncAction() throws Exception { + final MockHttpServletRequest request = new MockHttpServletRequest(); + request.setAsyncSupported(true); + + ServletActionContext.setRequest(request); + + final Semaphore lock = new Semaphore(1); + lock.acquire(); + + AsyncAction asyncAction = new AsyncAction(new Callable() { + @Override + public Object call() throws Exception { + final MockAsyncContext mockAsyncContext = (MockAsyncContext) request.getAsyncContext(); + mockAsyncContext.addDispatchHandler(new Runnable() { + @Override + public void run() { + mockAsyncContext.complete(); + lock.release(); + } + }); + + return "success"; + } + }); + + DefaultAsyncManager asyncManager = new DefaultAsyncManager(); + asyncManager.invokeAsyncAction(asyncAction); + asyncManager.invokeAsyncAction(asyncAction); // duplicate invoke should not raise any problem + + if (lock.tryAcquire(1500L, TimeUnit.MILLISECONDS)) { + try { + assertTrue("an async result is expected", asyncManager.hasAsyncActionResult()); + assertEquals("success", asyncManager.getAsyncActionResult()); + } finally { + lock.release(); + } + } else { + lock.release(); + fail("async result did not received on timeout!"); + } + } + + public void testInvokeAsyncActionException() throws Exception { + final MockHttpServletRequest request = new MockHttpServletRequest(); + request.setAsyncSupported(true); + + ServletActionContext.setRequest(request); + + final Semaphore lock = new Semaphore(1); + lock.acquire(); + + final Exception expected = new Exception(); + AsyncAction asyncAction = new AsyncAction(new Callable() { + @Override + public Object call() throws Exception { + final MockAsyncContext mockAsyncContext = (MockAsyncContext) request.getAsyncContext(); + mockAsyncContext.addDispatchHandler(new Runnable() { + @Override + public void run() { + mockAsyncContext.complete(); + lock.release(); + } + }); + + throw expected; + } + }); + + DefaultAsyncManager asyncManager = new DefaultAsyncManager(); + asyncManager.invokeAsyncAction(asyncAction); + + if (lock.tryAcquire(1500L, TimeUnit.MILLISECONDS)) { + try { + assertTrue("an async result is expected", asyncManager.hasAsyncActionResult()); + assertEquals(expected, asyncManager.getAsyncActionResult()); + } finally { + lock.release(); + } + } else { + fail("async result did not received on timeout!"); + } + } +} From e65d77bae1757b7306bfac8deb38704335d43779 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 25 Nov 2017 19:40:25 +0330 Subject: [PATCH 0280/2288] WW-4874 Updates parent version --- core/src/main/java/com/opensymphony/xwork2/AsyncManager.java | 2 +- plugins/async/pom.xml | 2 +- .../src/main/java/org/apache/struts2/async/AsyncAction.java | 2 +- .../main/java/org/apache/struts2/async/DefaultAsyncManager.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java b/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java index fb65638596..5bada9c77e 100644 --- a/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java +++ b/core/src/main/java/com/opensymphony/xwork2/AsyncManager.java @@ -24,7 +24,7 @@ * Adds support for invoke async actions. This allows us to support action methods that return {@link Callable} * as well as invoking them in separate not-container thread then executing the result in another container thread. * - * @since 2.5.14 + * @since 2.6 */ public interface AsyncManager { boolean hasAsyncActionResult(); diff --git a/plugins/async/pom.xml b/plugins/async/pom.xml index b5e5ae02b5..b92e8ad609 100644 --- a/plugins/async/pom.xml +++ b/plugins/async/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14-SNAPSHOT + 2.6-SNAPSHOT struts2-async-plugin diff --git a/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java index 27729d56bf..3baf78fbd7 100644 --- a/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java @@ -24,7 +24,7 @@ /** * A {@link Callable} with a timeout value and an {@link Executor}. * - * @since 2.5.14 + * @since 2.6 */ public class AsyncAction implements Callable { private Callable callable; diff --git a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java index 4617dca3b9..1e84f27f0e 100644 --- a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java @@ -35,7 +35,7 @@ /** * Implements {@link AsyncManager} to add support for invoke async actions via Servlet 3's API. * - * @since 2.5.14 + * @since 2.6 */ public class DefaultAsyncManager implements AsyncManager, AsyncListener { private static final Logger LOG = LogManager.getLogger(DefaultAsyncManager.class); From 5ef76872595f00a0d7623e590f012a451615db65 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 27 Nov 2017 08:19:15 +0100 Subject: [PATCH 0281/2288] Suppresses some false positives on OWASP Dependency Check --- pom.xml | 3 +++ src/etc/project-suppression.xml | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 src/etc/project-suppression.xml diff --git a/pom.xml b/pom.xml index 222a2d11f1..5843f02d89 100644 --- a/pom.xml +++ b/pom.xml @@ -273,6 +273,9 @@ dependency-check-maven 3.0.1 + + src/etc/project-suppression.xml + 8 true true diff --git a/src/etc/project-suppression.xml b/src/etc/project-suppression.xml new file mode 100644 index 0000000000..2c2ac0b39e --- /dev/null +++ b/src/etc/project-suppression.xml @@ -0,0 +1,19 @@ + + + + + org\.apache\.struts:struts\-annotations\:1\.0\.6 + cpe:/a:apache:struts:1.0.6 + + + + org\.apache\.struts\:struts\-*:1\.3\.8 + cpe:/a:apache:struts:1.3.8 + cpe:/a:apache:tiles:1.3.8 + cpe:/a:apache:struts:1.3.8 + + \ No newline at end of file From 0207c09b1177dea99bb6be2ef3df7be94926e9fd Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 27 Nov 2017 10:28:14 +0100 Subject: [PATCH 0282/2288] Adds missing license header --- src/etc/project-suppression.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/etc/project-suppression.xml b/src/etc/project-suppression.xml index 2c2ac0b39e..2ef62e2094 100644 --- a/src/etc/project-suppression.xml +++ b/src/etc/project-suppression.xml @@ -1,4 +1,22 @@ + Date: Mon, 27 Nov 2017 15:38:22 +0100 Subject: [PATCH 0283/2288] Adds support for UpdateImpact --- .travis.yml | 6 +++++- README.md | 1 + pom.xml | 12 ++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index d6eacdc9e3..adda7a1c35 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,4 +9,8 @@ install: true script: mvn test -DskipAssembly after_success: - - mvn clean cobertura:cobertura org.eluder.coveralls:coveralls-maven-plugin:report -Ptravis-coveralls -DskipAssembly + - mvn clean cobertura:cobertura org.eluder.coveralls:coveralls-maven-plugin:report com.updateimpact:updateimpact-maven-plugin:submit -Ptravis-coveralls,update-impact -DskipAssembly + +env: + global: + secure: DusDFL9cuX+mj64tXQfrYVbUVYnxlXmad4nuIMj0/lgDbwJ6kxYasJmR99bdvwu08gS9D5b7a+m7WJTN0FNATzEiiGDXcM+TiDPlYDh7dcalU4QGiLmMuCCEw1r7hp2XE4BWVgDfFhCsHhStgjE4RXzHIyPowoPXr4ugPf8at6w= diff --git a/README.md b/README.md index b0b2c1be70..f534176b8a 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ The Apache Struts web framework [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/) [![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) [![Coverage Status](https://coveralls.io/repos/github/apache/struts/badge.svg)](https://coveralls.io/github/apache/struts) +[![Dependencies](https://app.updateimpact.com/badge/713283867011846144/Struts%202.svg?config=test)](https://app.updateimpact.com/latest/713283867011846144/Struts%202) The Apache Struts web framework is a free open-source solution for creating Java web applications. diff --git a/pom.xml b/pom.xml index ab3f55370a..581bf397d2 100644 --- a/pom.xml +++ b/pom.xml @@ -207,6 +207,18 @@ + + update-impact + + + + com.updateimpact + updateimpact-maven-plugin + 1.0.10 + + + + From 76d0bc5ff440d50933d142c38e71d958b1547ca3 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 27 Nov 2017 15:47:35 +0100 Subject: [PATCH 0284/2288] Adds support to generate a report with outdated dependencies --- pom.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pom.xml b/pom.xml index 581bf397d2..48691f77bd 100644 --- a/pom.xml +++ b/pom.xml @@ -437,6 +437,20 @@ + + org.codehaus.mojo + versions-maven-plugin + 2.5 + + + + dependency-updates-report + plugin-updates-report + property-updates-report + + + + From bea5537e9e513040b89980878ac9487032c7a48e Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Tue, 28 Nov 2017 09:36:21 +0100 Subject: [PATCH 0285/2288] Fixes issue with accessing the Central relates to https://github.com/jeremylong/DependencyCheck/issues/978 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 49c432a92d..672b126da8 100644 --- a/pom.xml +++ b/pom.xml @@ -311,7 +311,7 @@ org.owasp dependency-check-maven - 3.0.1 + 3.0.2 src/etc/project-suppression.xml From b2ff4bb56b21af384e5602ac68d80125b8da74ca Mon Sep 17 00:00:00 2001 From: Aleksandr Mashchenko Date: Tue, 28 Nov 2017 22:47:46 +0200 Subject: [PATCH 0286/2288] WW-4875 Add spring constant configuration --- .../struts2/spring/SpringConstants.java | 25 +++++++ .../spring/StrutsSpringObjectFactory.java | 6 +- .../config/entities/SpringConstantConfig.java | 70 +++++++++++++++++++ 3 files changed, 98 insertions(+), 3 deletions(-) create mode 100644 plugins/spring/src/main/java/org/apache/struts2/spring/SpringConstants.java create mode 100644 plugins/spring/src/main/java/org/apache/struts2/spring/config/entities/SpringConstantConfig.java diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/SpringConstants.java b/plugins/spring/src/main/java/org/apache/struts2/spring/SpringConstants.java new file mode 100644 index 0000000000..f174e2ff6a --- /dev/null +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/SpringConstants.java @@ -0,0 +1,25 @@ +/* + * 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 org.apache.struts2.spring; + +public class SpringConstants { + public static final String SPRING_CLASS_RELOADING_WATCH_LIST = "struts.class.reloading.watchList"; + public static final String SPRING_CLASS_RELOADING_ACCEPT_CLASSES = "struts.class.reloading.acceptClasses"; + public static final String SPRING_CLASS_RELOADING_RELOAD_CONFIG = "struts.class.reloading.reloadConfig"; +} diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java index 8d6c229a71..157518c272 100644 --- a/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/StrutsSpringObjectFactory.java @@ -94,9 +94,9 @@ public StrutsSpringObjectFactory( return; } - String watchList = container.getInstance(String.class, "struts.class.reloading.watchList"); - String acceptClasses = container.getInstance(String.class, "struts.class.reloading.acceptClasses"); - String reloadConfig = container.getInstance(String.class, "struts.class.reloading.reloadConfig"); + String watchList = container.getInstance(String.class, SpringConstants.SPRING_CLASS_RELOADING_WATCH_LIST); + String acceptClasses = container.getInstance(String.class, SpringConstants.SPRING_CLASS_RELOADING_ACCEPT_CLASSES); + String reloadConfig = container.getInstance(String.class, SpringConstants.SPRING_CLASS_RELOADING_RELOAD_CONFIG); if ("true".equals(devMode) && StringUtils.isNotBlank(watchList) diff --git a/plugins/spring/src/main/java/org/apache/struts2/spring/config/entities/SpringConstantConfig.java b/plugins/spring/src/main/java/org/apache/struts2/spring/config/entities/SpringConstantConfig.java new file mode 100644 index 0000000000..d948490ba0 --- /dev/null +++ b/plugins/spring/src/main/java/org/apache/struts2/spring/config/entities/SpringConstantConfig.java @@ -0,0 +1,70 @@ +/* + * 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 org.apache.struts2.spring.config.entities; + +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.regex.Pattern; + +import org.apache.commons.lang3.StringUtils; +import org.apache.struts2.config.entities.ConstantConfig; +import org.apache.struts2.spring.SpringConstants; + +public class SpringConstantConfig extends ConstantConfig { + private List classReloadingWatchList; + private Set classReloadingAcceptClasses; + private Boolean classReloadingReloadConfig; + + @Override + public Map getAllAsStringsMap() { + Map map = super.getAllAsStringsMap(); + + map.put(SpringConstants.SPRING_CLASS_RELOADING_WATCH_LIST, StringUtils.join(classReloadingWatchList, ',')); + map.put(SpringConstants.SPRING_CLASS_RELOADING_ACCEPT_CLASSES, StringUtils.join(classReloadingAcceptClasses, ',')); + map.put(SpringConstants.SPRING_CLASS_RELOADING_RELOAD_CONFIG, Objects.toString(classReloadingReloadConfig, null)); + + return map; + } + + public List getClassReloadingWatchList() { + return classReloadingWatchList; + } + + public void setClassReloadingWatchList(List classReloadingWatchList) { + this.classReloadingWatchList = classReloadingWatchList; + } + + public Set getClassReloadingAcceptClasses() { + return classReloadingAcceptClasses; + } + + public void setClassReloadingAcceptClasses(Set classReloadingAcceptClasses) { + this.classReloadingAcceptClasses = classReloadingAcceptClasses; + } + + public Boolean getClassReloadingReloadConfig() { + return classReloadingReloadConfig; + } + + public void setClassReloadingReloadConfig(Boolean classReloadingReloadConfig) { + this.classReloadingReloadConfig = classReloadingReloadConfig; + } +} From 0856157e27cb402e9c339b938677c55d01f645eb Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 29 Nov 2017 08:35:37 +0100 Subject: [PATCH 0287/2288] [maven-release-plugin] prepare release STRUTS_2_5_14_1 --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++++++-- bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 42 insertions(+), 38 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index 1a7d12c960..ad2bb01a53 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index 1ac32652a0..d895174893 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -24,12 +24,12 @@ org.apache.struts struts2-apps - 2.6-SNAPSHOT + 2.5.14.1 struts2-rest-showcase war - 2.6-SNAPSHOT + 2.5.14.1 Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 67921e43b6..0f2f5e0181 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-apps - 2.6-SNAPSHOT + 2.5.14.1 struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 9db215a0cc..9144add51d 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 577932df94..8a1be1397c 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -30,7 +30,7 @@ struts2-bom - 2.6-SNAPSHOT + 2.5.14.1 pom Struts 2 Bill of Materials @@ -45,7 +45,7 @@ - 2.6-SNAPSHOT + 2.5.14.1 true true @@ -179,4 +179,8 @@ + + + STRUTS_2_5_14_1 + diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 206625c178..95e15bf75d 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.6-SNAPSHOT + 2.5.14.1 struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index ef08df400e..880a3598bd 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.6-SNAPSHOT + 2.5.14.1 struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index b85b571fe9..8d0c8c9ee0 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index 0c97b09589..d8dcdd7aa8 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index d3e56935b0..e2412c6609 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index 7317b25b83..acaa34f4f3 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index d494d4b78d..9ba8b7dbb7 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 4c6c04b337..30161f7140 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 59aff3c94c..9d253aa840 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index d629781ebf..880519cc0f 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 0fd9ec58d8..7319788164 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index e42ffa7077..b4f8b2a61d 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 1dd248a9a5..95616faf5e 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index ef2dcdd6ea..93dc3f59eb 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index ccacc29603..1b562bd4ea 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index 95be40f105..ac1dac5c41 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index cbe48f0670..0b7076710e 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 9009922015..03e36e2e55 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index ed234cbf6f..d5f9fbbd37 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index c0339815f0..fc6e07f6b6 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index e313cba3d1..42379c46ba 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index 70fed8d450..bde85f85d5 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 492015e7f7..48248c28d4 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 77b8119e76..798dac1750 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index 6044e246fd..f2723f95ca 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index 66375ae5e5..f9475416a9 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 76b7831fc1..5ab15d9769 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index d396a0a0ca..20e7d80820 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index e6410375c1..df4d1c1701 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.6-SNAPSHOT + 2.5.14.1 struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 672b126da8..2f9c4a1fe6 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ 4.0.0 struts2-parent - 2.6-SNAPSHOT + 2.5.14.1 pom Struts 2 http://struts.apache.org/ @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/struts.git scm:git:https://gitbox.apache.org/repos/asf/struts.git https://github.com/apache/struts/ - HEAD + STRUTS_2_5_14_1 From 9b9bd212edfb33ffa68b00e814f85112842c91d1 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 29 Nov 2017 08:35:58 +0100 Subject: [PATCH 0288/2288] [maven-release-plugin] prepare for next development iteration --- apps/pom.xml | 2 +- apps/rest-showcase/pom.xml | 4 ++-- apps/showcase/pom.xml | 2 +- assembly/pom.xml | 2 +- bom/pom.xml | 8 ++------ bundles/admin/pom.xml | 2 +- bundles/demo/pom.xml | 2 +- bundles/pom.xml | 2 +- core/pom.xml | 2 +- plugins/bean-validation/pom.xml | 2 +- plugins/cdi/pom.xml | 2 +- plugins/config-browser/pom.xml | 2 +- plugins/convention/pom.xml | 2 +- plugins/dwr/pom.xml | 2 +- plugins/embeddedjsp/pom.xml | 2 +- plugins/gxp/pom.xml | 2 +- plugins/jasperreports/pom.xml | 2 +- plugins/javatemplates/pom.xml | 2 +- plugins/jfreechart/pom.xml | 2 +- plugins/json/pom.xml | 2 +- plugins/junit/pom.xml | 2 +- plugins/osgi/pom.xml | 2 +- plugins/oval/pom.xml | 2 +- plugins/pell-multipart/pom.xml | 2 +- plugins/plexus/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/portlet-tiles/pom.xml | 2 +- plugins/portlet/pom.xml | 2 +- plugins/rest/pom.xml | 2 +- plugins/sitegraph/pom.xml | 2 +- plugins/sitemesh/pom.xml | 2 +- plugins/spring/pom.xml | 2 +- plugins/testng/pom.xml | 2 +- plugins/tiles/pom.xml | 2 +- pom.xml | 4 ++-- 35 files changed, 38 insertions(+), 42 deletions(-) diff --git a/apps/pom.xml b/apps/pom.xml index ad2bb01a53..1a7d12c960 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT struts2-apps pom diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml index d895174893..1ac32652a0 100644 --- a/apps/rest-showcase/pom.xml +++ b/apps/rest-showcase/pom.xml @@ -24,12 +24,12 @@ org.apache.struts struts2-apps - 2.5.14.1 + 2.6-SNAPSHOT struts2-rest-showcase war - 2.5.14.1 + 2.6-SNAPSHOT Struts 2 Rest Showcase Webapp Struts 2 Rest Showcase Example diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 0f2f5e0181..67921e43b6 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-apps - 2.5.14.1 + 2.6-SNAPSHOT struts2-showcase diff --git a/assembly/pom.xml b/assembly/pom.xml index 9144add51d..9db215a0cc 100644 --- a/assembly/pom.xml +++ b/assembly/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT struts2-assembly diff --git a/bom/pom.xml b/bom/pom.xml index 8a1be1397c..577932df94 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -30,7 +30,7 @@ struts2-bom - 2.5.14.1 + 2.6-SNAPSHOT pom Struts 2 Bill of Materials @@ -45,7 +45,7 @@ - 2.5.14.1 + 2.6-SNAPSHOT true true @@ -179,8 +179,4 @@ - - - STRUTS_2_5_14_1 - diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml index 95e15bf75d..206625c178 100644 --- a/bundles/admin/pom.xml +++ b/bundles/admin/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14.1 + 2.6-SNAPSHOT struts2-osgi-admin-bundle diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml index 880a3598bd..ef08df400e 100644 --- a/bundles/demo/pom.xml +++ b/bundles/demo/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-osgi-bundles - 2.5.14.1 + 2.6-SNAPSHOT struts2-osgi-demo-bundle diff --git a/bundles/pom.xml b/bundles/pom.xml index 8d0c8c9ee0..b85b571fe9 100755 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT struts2-osgi-bundles diff --git a/core/pom.xml b/core/pom.xml index d8dcdd7aa8..0c97b09589 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT struts2-core jar diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/pom.xml index e2412c6609..d3e56935b0 100644 --- a/plugins/bean-validation/pom.xml +++ b/plugins/bean-validation/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT 4.0.0 diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml index acaa34f4f3..7317b25b83 100644 --- a/plugins/cdi/pom.xml +++ b/plugins/cdi/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-cdi-plugin diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml index 9ba8b7dbb7..d494d4b78d 100644 --- a/plugins/config-browser/pom.xml +++ b/plugins/config-browser/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-config-browser-plugin diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml index 30161f7140..4c6c04b337 100644 --- a/plugins/convention/pom.xml +++ b/plugins/convention/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-convention-plugin diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml index 9d253aa840..59aff3c94c 100644 --- a/plugins/dwr/pom.xml +++ b/plugins/dwr/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-dwr-plugin diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml index 880519cc0f..d629781ebf 100644 --- a/plugins/embeddedjsp/pom.xml +++ b/plugins/embeddedjsp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-embeddedjsp-plugin diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml index 7319788164..0fd9ec58d8 100644 --- a/plugins/gxp/pom.xml +++ b/plugins/gxp/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-gxp-plugin diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml index b4f8b2a61d..e42ffa7077 100644 --- a/plugins/jasperreports/pom.xml +++ b/plugins/jasperreports/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-jasperreports-plugin diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml index 95616faf5e..1dd248a9a5 100644 --- a/plugins/javatemplates/pom.xml +++ b/plugins/javatemplates/pom.xml @@ -25,7 +25,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-javatemplates-plugin diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml index 93dc3f59eb..ef2dcdd6ea 100644 --- a/plugins/jfreechart/pom.xml +++ b/plugins/jfreechart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-jfreechart-plugin diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index 1b562bd4ea..ccacc29603 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-json-plugin diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml index ac1dac5c41..95be40f105 100644 --- a/plugins/junit/pom.xml +++ b/plugins/junit/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-junit-plugin diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml index 0b7076710e..cbe48f0670 100644 --- a/plugins/osgi/pom.xml +++ b/plugins/osgi/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-osgi-plugin diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml index 03e36e2e55..9009922015 100644 --- a/plugins/oval/pom.xml +++ b/plugins/oval/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-oval-plugin diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml index d5f9fbbd37..ed234cbf6f 100644 --- a/plugins/pell-multipart/pom.xml +++ b/plugins/pell-multipart/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-pell-multipart-plugin diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml index fc6e07f6b6..c0339815f0 100644 --- a/plugins/plexus/pom.xml +++ b/plugins/plexus/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-plexus-plugin diff --git a/plugins/pom.xml b/plugins/pom.xml index 42379c46ba..e313cba3d1 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT struts2-plugins diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml index bde85f85d5..70fed8d450 100644 --- a/plugins/portlet-tiles/pom.xml +++ b/plugins/portlet-tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-portlet-tiles-plugin diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml index 48248c28d4..492015e7f7 100644 --- a/plugins/portlet/pom.xml +++ b/plugins/portlet/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-portlet-plugin diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 798dac1750..77b8119e76 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-rest-plugin diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml index f2723f95ca..6044e246fd 100644 --- a/plugins/sitegraph/pom.xml +++ b/plugins/sitegraph/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-sitegraph-plugin diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml index f9475416a9..66375ae5e5 100644 --- a/plugins/sitemesh/pom.xml +++ b/plugins/sitemesh/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-sitemesh-plugin diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml index 5ab15d9769..76b7831fc1 100644 --- a/plugins/spring/pom.xml +++ b/plugins/spring/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-spring-plugin diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml index 20e7d80820..d396a0a0ca 100644 --- a/plugins/testng/pom.xml +++ b/plugins/testng/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-testng-plugin diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml index df4d1c1701..e6410375c1 100644 --- a/plugins/tiles/pom.xml +++ b/plugins/tiles/pom.xml @@ -24,7 +24,7 @@ org.apache.struts struts2-plugins - 2.5.14.1 + 2.6-SNAPSHOT struts2-tiles-plugin diff --git a/pom.xml b/pom.xml index 2f9c4a1fe6..672b126da8 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ 4.0.0 struts2-parent - 2.5.14.1 + 2.6-SNAPSHOT pom Struts 2 http://struts.apache.org/ @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/struts.git scm:git:https://gitbox.apache.org/repos/asf/struts.git https://github.com/apache/struts/ - STRUTS_2_5_14_1 + HEAD From e717e469a4ad74edd689073cb1fb5afb818f1521 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 4 Dec 2017 08:29:12 +0100 Subject: [PATCH 0289/2288] Uses the latest Spring version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 672b126da8..73267690ec 100644 --- a/pom.xml +++ b/pom.xml @@ -97,7 +97,7 @@ UTF-8 - 4.1.9.RELEASE + 4.3.13.RELEASE 3.1.15 5.2 3.0.7 From 6c3316a14a15a5a24fca5666d1d22900c25fd530 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 4 Dec 2017 08:29:29 +0100 Subject: [PATCH 0290/2288] Fixes test --- .../apache/struts2/interceptor/FileUploadInterceptorTest.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java index 9876fdf8e0..9b6753572a 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/FileUploadInterceptorTest.java @@ -224,10 +224,8 @@ public void testNoMultipartRequest() throws Exception { public void testInvalidContentTypeMultipartRequest() throws Exception { MockHttpServletRequest req = new MockHttpServletRequest(); - req.setCharacterEncoding("text/html"); - req.setContentType("text/xml"); // not a multipart contentype + req.setContentType("multipart/form-data"); // not a multipart contentype req.setMethod("post"); - req.addHeader("Content-type", "multipart/form-data"); MyFileupAction action = container.inject(MyFileupAction.class); MockActionInvocation mai = new MockActionInvocation(); From 705887272356956587b23335c8bf2334e73d6cce Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 4 Dec 2017 08:29:44 +0100 Subject: [PATCH 0291/2288] Adds missing dependency --- plugins/json/pom.xml | 6 ++++++ plugins/rest/pom.xml | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml index ccacc29603..c84fdff03f 100644 --- a/plugins/json/pom.xml +++ b/plugins/json/pom.xml @@ -89,6 +89,12 @@ test + + org.springframework + spring-web + test + + org.easytesting fest-assert diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml index 77b8119e76..06fa959ed1 100644 --- a/plugins/rest/pom.xml +++ b/plugins/rest/pom.xml @@ -68,6 +68,12 @@ true + + org.springframework + spring-web + true + + org.springframework spring-core From bfa119c7dbd70aff48f0c6f2f0f52abf2bcf44a8 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 4 Dec 2017 08:29:54 +0100 Subject: [PATCH 0292/2288] Uses proper date format --- .../apache/struts2/rest/DefaultHttpHeadersTest.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java index 9cc1ac652d..f23d014d5b 100644 --- a/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java +++ b/plugins/rest/src/test/java/org/apache/struts2/rest/DefaultHttpHeadersTest.java @@ -30,19 +30,28 @@ import static javax.servlet.http.HttpServletResponse.*; public class DefaultHttpHeadersTest extends TestCase { + + private static final String DATE_FORMAT = "EEE, dd MMM yyyy HH:mm:ss zzz"; + private static final TimeZone GMT = TimeZone.getTimeZone("GMT"); + private MockHttpServletResponse mockResponse; private MockHttpServletRequest mockRequest; + private SimpleDateFormat dateFormat; @Override public void setUp() { mockResponse = new MockHttpServletResponse(); mockRequest = new MockHttpServletRequest(); + + dateFormat = new SimpleDateFormat(DATE_FORMAT, Locale.US); + dateFormat.setTimeZone(GMT); } @Override public void tearDown() { mockRequest = null; mockRequest = null; + dateFormat = null; } public void testApply() { @@ -59,7 +68,7 @@ public void testApply() { assertEquals(SC_CREATED, mockResponse.getStatus()); assertEquals("http://localhost/foo/bar/44.xhtml", mockResponse.getHeader("Location")); assertEquals("asdf", mockResponse.getHeader("ETag")); - assertEquals(String.valueOf(now.getTime()), mockResponse.getHeader("Last-Modified")); + assertEquals(dateFormat.format(now), mockResponse.getHeader("Last-Modified")); } From 94758b699cfea1bb8bfba777dcc383b4dcd41436 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 12 Dec 2017 00:26:44 +0330 Subject: [PATCH 0293/2288] WW-4901 Decouples Struts from URL.openConnection implementation of container --- .../xwork2/util/fs/JarEntryRevision.java | 21 ++--- .../util/fs/StrutsJarURLConnection.java | 93 +++++++++++++++++++ 2 files changed, 99 insertions(+), 15 deletions(-) create mode 100644 core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java index 3356fbb5a8..fbe503858c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java @@ -23,7 +23,6 @@ import org.apache.logging.log4j.LogManager; import java.io.IOException; -import java.net.JarURLConnection; import java.net.URL; /** @@ -37,11 +36,9 @@ public class JarEntryRevision extends Revision { private long lastModified; public static Revision build(URL fileUrl, FileManager fileManager) { - // File within a Jar - // Find separator index of jar filename and filename within jar - JarURLConnection conn = null; + StrutsJarURLConnection conn = null; try { - conn = (JarURLConnection) fileUrl.openConnection(); + conn = new StrutsJarURLConnection(fileUrl); conn.setUseCaches(false); URL url = fileManager.normalizeToFileProtocol(fileUrl); if (url != null) { @@ -55,10 +52,7 @@ public static Revision build(URL fileUrl, FileManager fileManager) { } finally { if(null != conn) { - try { - conn.getInputStream().close(); - } catch (IOException ignored) { - } + conn.disconnect(); } } } @@ -72,20 +66,17 @@ private JarEntryRevision(URL jarFileURL, long lastModified) { } public boolean needsReloading() { - JarURLConnection conn = null; + StrutsJarURLConnection conn = null; long lastLastModified = lastModified; try { - conn = (JarURLConnection) jarFileURL.openConnection(); + conn = new StrutsJarURLConnection(jarFileURL); conn.setUseCaches(false); lastLastModified = conn.getJarEntry().getTime(); } catch (IOException ignored) { } finally { if(null != conn) { - try { - conn.getInputStream().close(); - } catch (IOException ignored) { - } + conn.disconnect(); } } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java new file mode 100644 index 0000000000..5a59a6205b --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java @@ -0,0 +1,93 @@ +/* + * 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.fs; + +import java.io.IOException; +import java.io.InputStream; +import java.net.JarURLConnection; +import java.net.MalformedURLException; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardCopyOption; +import java.security.AccessController; +import java.security.PrivilegedActionException; +import java.security.PrivilegedExceptionAction; +import java.util.jar.JarFile; + +/** + * WW-4901 Decouples Struts from {@link URL#openConnection()} implementation of container (e.g. IBM WebSphere com.ibm.ws.classloader.Handler$ClassLoaderURLConnection) + * @since 2.5.15 + */ +class StrutsJarURLConnection extends JarURLConnection { + private JarFile jarFile; + + StrutsJarURLConnection(URL url) throws MalformedURLException { + super(url); + } + + @Override + public JarFile getJarFile() throws IOException { + connect(); + return jarFile; + } + + @Override + public void connect() throws IOException { + if (connected) + return; + + try (final InputStream in = getJarFileURL().openConnection().getInputStream()) { + jarFile = AccessController.doPrivileged( + new PrivilegedExceptionAction() { + public JarFile run() throws IOException { + Path tmpFile = Files.createTempFile("jar_cache", null); + try { + Files.copy(in, tmpFile, StandardCopyOption.REPLACE_EXISTING); + JarFile jarFile = new JarFile(tmpFile.toFile(), true, JarFile.OPEN_READ); + tmpFile.toFile().deleteOnExit(); + return jarFile; + } catch (Throwable thr) { + try { + Files.delete(tmpFile); + } catch (IOException ioe) { + thr.addSuppressed(ioe); + } + throw thr; + } finally { + in.close(); + } + } + }); + connected = true; + } catch (PrivilegedActionException pae) { + throw (IOException) pae.getException(); + } + } + + void disconnect() { + if (connected) { + connected = false; + try { + jarFile.close(); + } catch (IOException ignored) { + } + } + } +} From d082aaca2a6d2d3a37b374ad34f4ea8d091d09f1 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 12 Dec 2017 16:24:17 +0330 Subject: [PATCH 0294/2288] WW-4901 Falls back if JarURLConnection was present already --- .../xwork2/util/fs/JarEntryRevision.java | 19 +++++--- .../util/fs/StrutsJarURLConnection.java | 23 ++++++--- .../xwork2/util/fs/JarEntryRevisionTest.java | 47 +++++++++++++++++++ 3 files changed, 76 insertions(+), 13 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java index fbe503858c..dc5f0a7578 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java @@ -23,6 +23,7 @@ import org.apache.logging.log4j.LogManager; import java.io.IOException; +import java.net.JarURLConnection; import java.net.URL; /** @@ -36,9 +37,9 @@ public class JarEntryRevision extends Revision { private long lastModified; public static Revision build(URL fileUrl, FileManager fileManager) { - StrutsJarURLConnection conn = null; + JarURLConnection conn = null; try { - conn = new StrutsJarURLConnection(fileUrl); + conn = StrutsJarURLConnection.openConnection(fileUrl); conn.setUseCaches(false); URL url = fileManager.normalizeToFileProtocol(fileUrl); if (url != null) { @@ -52,7 +53,10 @@ public static Revision build(URL fileUrl, FileManager fileManager) { } finally { if(null != conn) { - conn.disconnect(); + try { + conn.getInputStream().close(); + } catch (IOException ignored) { + } } } } @@ -66,17 +70,20 @@ private JarEntryRevision(URL jarFileURL, long lastModified) { } public boolean needsReloading() { - StrutsJarURLConnection conn = null; + JarURLConnection conn = null; long lastLastModified = lastModified; try { - conn = new StrutsJarURLConnection(jarFileURL); + conn = StrutsJarURLConnection.openConnection(jarFileURL); conn.setUseCaches(false); lastLastModified = conn.getJarEntry().getTime(); } catch (IOException ignored) { } finally { if(null != conn) { - conn.disconnect(); + try { + conn.getInputStream().close(); + } catch (IOException ignored) { + } } } diff --git a/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java b/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java index 5a59a6205b..8c1b71a795 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/fs/StrutsJarURLConnection.java @@ -23,6 +23,7 @@ import java.net.JarURLConnection; import java.net.MalformedURLException; import java.net.URL; +import java.net.URLConnection; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.StandardCopyOption; @@ -32,13 +33,14 @@ import java.util.jar.JarFile; /** - * WW-4901 Decouples Struts from {@link URL#openConnection()} implementation of container (e.g. IBM WebSphere com.ibm.ws.classloader.Handler$ClassLoaderURLConnection) + * WW-4901 Decouples from underlying implementation of {@link URL#openConnection()} + * e.g. from IBM WebSphere com.ibm.ws.classloader.Handler$ClassLoaderURLConnection * @since 2.5.15 */ class StrutsJarURLConnection extends JarURLConnection { private JarFile jarFile; - StrutsJarURLConnection(URL url) throws MalformedURLException { + private StrutsJarURLConnection(URL url) throws MalformedURLException { super(url); } @@ -50,8 +52,9 @@ public JarFile getJarFile() throws IOException { @Override public void connect() throws IOException { - if (connected) + if (connected) { return; + } try (final InputStream in = getJarFileURL().openConnection().getInputStream()) { jarFile = AccessController.doPrivileged( @@ -81,13 +84,19 @@ public JarFile run() throws IOException { } } - void disconnect() { - if (connected) { - connected = false; + + static JarURLConnection openConnection(URL url) throws IOException { + URLConnection conn = url.openConnection(); + if (conn instanceof JarURLConnection) { + return (JarURLConnection) conn; + } else { try { - jarFile.close(); + conn.getInputStream().close(); } catch (IOException ignored) { } } + + StrutsJarURLConnection result = new StrutsJarURLConnection(url); + return result; } } diff --git a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java index 4764d0410e..5fd4215d10 100644 --- a/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.java @@ -24,8 +24,11 @@ import org.apache.commons.io.IOUtils; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStream; import java.net.URL; +import java.net.URLConnection; +import java.net.URLStreamHandler; import java.util.jar.Attributes; import java.util.jar.JarOutputStream; import java.util.jar.Manifest; @@ -69,4 +72,48 @@ public void testNeedsReloading() throws Exception { createJarFile(now + 60000); assertTrue(entry.needsReloading()); } + + public void testNeedsReloadingWithContainerProvidedURLConnection() throws Exception { + long now = System.currentTimeMillis(); + + createJarFile(now); + URL url = new URL(null, + "jar:file:target/JarEntryRevisionTest_testNeedsReloading.jar!/com/opensymphony/xwork2/util/fs/JarEntryRevisionTest.class", + new ContainerProvidedURLStreamHandler()); + Revision entry = JarEntryRevision.build(url, fileManager); + assertFalse(entry.needsReloading()); + + createJarFile(now + 60000); + assertTrue(entry.needsReloading()); + } + + + /** + * WW-4901 Simulating container implementation of {@link URL#openConnection()} + * @since 2.5.15 + */ + private class ContainerProvidedURLStreamHandler extends URLStreamHandler { + + @Override + protected URLConnection openConnection(URL u) throws IOException { + return new ContainerProvidedURLConnection(u); + } + } + + /** + * WW-4901 Simulating container implementation of {@link URLConnection} + * e.g. like IBM WebSphere com.ibm.ws.classloader.Handler$ClassLoaderURLConnection + * @since 2.5.15 + */ + private class ContainerProvidedURLConnection extends URLConnection { + + protected ContainerProvidedURLConnection(URL url) { + super(url); + } + + @Override + public void connect() throws IOException { + throw new IllegalStateException("This is not expected (should not coupled to underlying implementation)"); + } + } } From dda3facc265d4e1c3b1c60fa2bcc4240953ee35c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 13 Dec 2017 12:41:22 +0330 Subject: [PATCH 0295/2288] WW-4900 Makes BackgroundProcess transient --- .../interceptor/BackgroundProcess.java | 16 ++--- .../ExecuteAndWaitInterceptor.java | 6 ++ .../interceptor/BackgroundProcessTest.java | 65 +++++++++++++++++++ .../ExecuteAndWaitInterceptorTest.java | 39 +++++++++++ 4 files changed, 118 insertions(+), 8 deletions(-) create mode 100644 core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java diff --git a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java index 20b330eaea..5210c40720 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java +++ b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java @@ -31,10 +31,11 @@ public class BackgroundProcess implements Serializable { private static final long serialVersionUID = 3884464776311686443L; - protected Object action; - protected ActionInvocation invocation; + //WW-4900 transient since 2.5.15 + transient protected ActionInvocation invocation; + transient protected Exception exception; + protected String result; - protected Exception exception; protected boolean done; /** @@ -44,9 +45,8 @@ public class BackgroundProcess implements Serializable { * @param invocation The action invocation * @param threadPriority The thread priority */ - public BackgroundProcess(String threadName, final ActionInvocation invocation, int threadPriority) { + BackgroundProcess(String threadName, final ActionInvocation invocation, int threadPriority) { this.invocation = invocation; - this.action = invocation.getAction(); try { final Thread t = new Thread(new Runnable() { public void run() { @@ -75,7 +75,7 @@ public void run() { * * @throws Exception any exception thrown will be thrown, in turn, by the ExecuteAndWaitInterceptor */ - protected void beforeInvocation() throws Exception { + private void beforeInvocation() throws Exception { ActionContext.setContext(invocation.getInvocationContext()); } @@ -86,7 +86,7 @@ protected void beforeInvocation() throws Exception { * * @throws Exception any exception thrown will be thrown, in turn, by the ExecuteAndWaitInterceptor */ - protected void afterInvocation() throws Exception { + private void afterInvocation() throws Exception { ActionContext.setContext(null); } @@ -96,7 +96,7 @@ protected void afterInvocation() throws Exception { * @return the action. */ public Object getAction() { - return action; + return invocation.getAction(); } /** diff --git a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java index 2b3e063e04..b49ebcae70 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java +++ b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java @@ -243,6 +243,12 @@ protected String doIntercept(ActionInvocation actionInvocation) throws Exception synchronized (httpSession) { BackgroundProcess bp = (BackgroundProcess) session.get(KEY + name); + //WW-4900 Checks if from a de-serialized session? so background thread missed, let's start a new one. + if (bp != null && bp.getInvocation() == null) { + session.remove(KEY + name); + bp = null; + } + if ((!executeAfterValidationPass || secondTime) && bp == null) { bp = getNewBackgroundProcess(name, actionInvocation, threadPriority); session.put(KEY + name, bp); diff --git a/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java b/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java new file mode 100644 index 0000000000..ceeda9e2ad --- /dev/null +++ b/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java @@ -0,0 +1,65 @@ +/* + * 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 org.apache.struts2.interceptor; + +import com.opensymphony.xwork2.ActionContext; +import com.opensymphony.xwork2.mock.MockActionInvocation; +import org.apache.struts2.StrutsInternalTestCase; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; + +/** + * Test case for BackgroundProcessTest. + */ +public class BackgroundProcessTest extends StrutsInternalTestCase { + + public void testSerializeDeserialize() throws Exception { + MockActionInvocation invocation = new MockActionInvocation(); + invocation.setResultCode("BackgroundProcessTest.testSerializeDeserialize"); + invocation.setInvocationContext(ActionContext.getContext()); + + BackgroundProcess bp = new BackgroundProcess("BackgroundProcessTest.testSerializeDeserialize", invocation + , Thread.MIN_PRIORITY); + + bp.exception = new Exception(); + bp.done = true; + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos); + oos.writeObject(bp); + oos.close(); + assertTrue("should have serialized data", baos.size() > 0); + byte b[] = baos.toByteArray(); + baos.close(); + + ByteArrayInputStream bais = new ByteArrayInputStream(b); + ObjectInputStream ois = new ObjectInputStream(bais); + BackgroundProcess deserializedBp = (BackgroundProcess) ois.readObject(); + ois.close(); + bais.close(); + + assertNull("invocation should not be serialized", deserializedBp.invocation); + assertNull("exception should not be serialized", deserializedBp.exception); + assertEquals(bp.result, deserializedBp.result); + assertEquals(bp.done, deserializedBp.done); + } +} \ No newline at end of file diff --git a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java index 9106a1b6a6..c99cf08251 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptorTest.java @@ -38,6 +38,10 @@ import org.apache.struts2.views.jsp.StrutsMockHttpSession; import javax.servlet.http.HttpSession; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.HashMap; import java.util.Map; @@ -159,6 +163,41 @@ public void testWaitDelayAndJobAlreadyDone2() throws Exception { assertTrue("Job done already after 500 so there should not be such long delay", diff <= 1000); } + public void testFromDeserializedSession() throws Exception { + waitInterceptor.setDelay(0); + waitInterceptor.setDelaySleepInterval(0); + + ActionProxy proxy = buildProxy("action1"); + String result = proxy.execute(); + assertEquals("wait", result); + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos); + oos.writeObject(session);//WW-4900 action1 and invocation are not serializable but we should not fail at this line + oos.close(); + byte b[] = baos.toByteArray(); + baos.close(); + + ByteArrayInputStream bais = new ByteArrayInputStream(b); + ObjectInputStream ois = new ObjectInputStream(bais); + session = (Map) ois.readObject(); + context.put(ActionContext.SESSION, session); + ois.close(); + bais.close(); + + Thread.sleep(1000); + + ActionProxy proxy2 = buildProxy("action1"); + String result2 = proxy2.execute(); + assertEquals("wait", result2);//WW-4900 A new thread should be started when background thread missed + + Thread.sleep(1000); + + ActionProxy proxy3 = buildProxy("action1"); + String result3 = proxy3.execute(); + assertEquals("success", result3); + } + protected ActionProxy buildProxy(String actionName) throws Exception { return actionProxyFactory.createActionProxy("", actionName, null, context); } From 6b131550a649106766f45c83279b036544afc58c Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 13 Dec 2017 13:11:35 +0330 Subject: [PATCH 0296/2288] WW-4900 Reverts BackgroundProcess access modifiers --- .../org/apache/struts2/interceptor/BackgroundProcess.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java index 5210c40720..cc30f8ac43 100644 --- a/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java +++ b/core/src/main/java/org/apache/struts2/interceptor/BackgroundProcess.java @@ -45,7 +45,7 @@ public class BackgroundProcess implements Serializable { * @param invocation The action invocation * @param threadPriority The thread priority */ - BackgroundProcess(String threadName, final ActionInvocation invocation, int threadPriority) { + public BackgroundProcess(String threadName, final ActionInvocation invocation, int threadPriority) { this.invocation = invocation; try { final Thread t = new Thread(new Runnable() { @@ -75,7 +75,7 @@ public void run() { * * @throws Exception any exception thrown will be thrown, in turn, by the ExecuteAndWaitInterceptor */ - private void beforeInvocation() throws Exception { + protected void beforeInvocation() throws Exception { ActionContext.setContext(invocation.getInvocationContext()); } @@ -86,7 +86,7 @@ private void beforeInvocation() throws Exception { * * @throws Exception any exception thrown will be thrown, in turn, by the ExecuteAndWaitInterceptor */ - private void afterInvocation() throws Exception { + protected void afterInvocation() throws Exception { ActionContext.setContext(null); } From a8ecd9bd297670b048dd3d12ee7211d4984db664 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 13 Dec 2017 14:58:54 +0330 Subject: [PATCH 0297/2288] WW-4900 Fixes BackgroundProcessTest via synchronization --- .../interceptor/BackgroundProcessTest.java | 47 +++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java b/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java index ceeda9e2ad..b811b1dd52 100644 --- a/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java +++ b/core/src/test/java/org/apache/struts2/interceptor/BackgroundProcessTest.java @@ -18,6 +18,7 @@ */ package org.apache.struts2.interceptor; +import com.mockobjects.servlet.MockHttpServletRequest; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.mock.MockActionInvocation; import org.apache.struts2.StrutsInternalTestCase; @@ -26,6 +27,9 @@ import java.io.ByteArrayOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; +import java.util.concurrent.Callable; +import java.util.concurrent.Semaphore; +import java.util.concurrent.TimeUnit; /** * Test case for BackgroundProcessTest. @@ -33,21 +37,35 @@ public class BackgroundProcessTest extends StrutsInternalTestCase { public void testSerializeDeserialize() throws Exception { - MockActionInvocation invocation = new MockActionInvocation(); - invocation.setResultCode("BackgroundProcessTest.testSerializeDeserialize"); + final NotSerializableException expectedException = new NotSerializableException(new MockHttpServletRequest()); + final Semaphore lock = new Semaphore(1); + lock.acquire(); + MockActionInvocationWithActionInvoker invocation = new MockActionInvocationWithActionInvoker(new Callable() { + @Override + public String call() throws Exception { + lock.release(); + throw expectedException; + } + }); invocation.setInvocationContext(ActionContext.getContext()); BackgroundProcess bp = new BackgroundProcess("BackgroundProcessTest.testSerializeDeserialize", invocation , Thread.MIN_PRIORITY); + if(!lock.tryAcquire(1500L, TimeUnit.MILLISECONDS)) { + lock.release(); + fail("background thread did not release lock on timeout"); + } + lock.release(); - bp.exception = new Exception(); + bp.result = "BackgroundProcessTest.testSerializeDeserialize"; bp.done = true; + Thread.sleep(1000);//give a chance to background thread to set exception + assertEquals(expectedException, bp.exception); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(baos); oos.writeObject(bp); oos.close(); - assertTrue("should have serialized data", baos.size() > 0); byte b[] = baos.toByteArray(); baos.close(); @@ -62,4 +80,25 @@ public void testSerializeDeserialize() throws Exception { assertEquals(bp.result, deserializedBp.result); assertEquals(bp.done, deserializedBp.done); } + + + private class MockActionInvocationWithActionInvoker extends MockActionInvocation { + private Callable actionInvoker; + + MockActionInvocationWithActionInvoker(Callable actionInvoker){ + this.actionInvoker = actionInvoker; + } + + @Override + public String invokeActionOnly() throws Exception { + return actionInvoker.call(); + } + } + + private class NotSerializableException extends Exception { + private MockHttpServletRequest notSerializableField; + NotSerializableException(MockHttpServletRequest notSerializableField) { + this.notSerializableField = notSerializableField; + } + } } \ No newline at end of file From cf8ba17454a94fd1f6b0d1015ea6aa00ca19afef Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Wed, 13 Dec 2017 13:40:28 +0100 Subject: [PATCH 0298/2288] Kicks Coveralls to build on master --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f534176b8a..7cc25411c0 100644 --- a/README.md +++ b/README.md @@ -20,9 +20,9 @@ The Apache Struts web framework [![Build Status @ Jenkins](https://builds.apache.org/buildStatus/icon?job=Struts-master-JDK7)](https://builds.apache.org/view/S-Z/view/Struts/job/Struts-master-JDK7/) [![Build Status @ Travis](https://travis-ci.org/apache/struts.svg?branch=master)](https://travis-ci.org/apache/struts) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.struts/struts2-core/) -[![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) [![Coverage Status](https://coveralls.io/repos/github/apache/struts/badge.svg)](https://coveralls.io/github/apache/struts) [![Dependencies](https://app.updateimpact.com/badge/713283867011846144/Struts%202.svg?config=test)](https://app.updateimpact.com/latest/713283867011846144/Struts%202) +[![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) The Apache Struts web framework is a free open-source solution for creating Java web applications. From 4738d1d80228f86da880ed207294349566a260a2 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Wed, 13 Dec 2017 19:34:54 +0330 Subject: [PATCH 0299/2288] WW-4873 Makes ActionInvocation not serializable --- .../opensymphony/xwork2/ActionInvocation.java | 20 +------------ .../xwork2/DefaultActionInvocation.java | 23 --------------- .../xwork2/mock/MockActionInvocation.java | 8 ------ .../struts2/util/InvocationSessionStore.java | 4 +-- .../xwork2/DefaultActionInvocationTest.java | 28 ------------------- .../interceptor/TestActionInvocation.java | 8 ------ .../struts2/validators/DWRValidator.java | 1 - .../struts2/json/JSONInterceptorTest.java | 2 -- .../struts2/rest/RestActionInvocation.java | 2 -- .../OldDecorator2NewStrutsDecorator.java | 10 ------- 10 files changed, 3 insertions(+), 103 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java index 908349806b..472f23ea7b 100644 --- a/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/ActionInvocation.java @@ -21,8 +21,6 @@ import com.opensymphony.xwork2.interceptor.PreResultListener; import com.opensymphony.xwork2.util.ValueStack; -import java.io.Serializable; - /** * An {@link ActionInvocation} represents the execution state of an {@link Action}. It holds the Interceptors and the Action instance. * By repeated re-entrant execution of the invoke() method, initially by the {@link ActionProxy}, then by the Interceptors, the @@ -31,7 +29,7 @@ * @author Jason Carreira * @see com.opensymphony.xwork2.ActionProxy */ -public interface ActionInvocation extends Serializable { +public interface ActionInvocation { /** * Get the Action associated with this ActionInvocation. @@ -178,20 +176,4 @@ public interface ActionInvocation extends Serializable { void init(ActionProxy proxy) ; - /** - * Prepares instance of ActionInvocation to be serializable, - * which simple means removing all unserializable fields, eg. Container - * - * @return ActionInvocation which can be serialize (eg. into HttpSession) - */ - ActionInvocation serialize(); - - /** - * Performs opposite process to restore back ActionInvocation after deserialisation - * - * @param actionContext current {@link ActionContext} - * @return fully operational ActionInvocation - */ - ActionInvocation deserialize(ActionContext actionContext); - } diff --git a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java index 5777007c1c..6b039d6802 100644 --- a/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/DefaultActionInvocation.java @@ -500,27 +500,4 @@ protected String saveResult(ActionConfig actionConfig, Object methodResult) { } } - /** - * Version ready to be serialize - * - * @return instance without reference to {@link Container} - */ - public ActionInvocation serialize() { - DefaultActionInvocation that = this; - that.container = null; - return that; - } - - /** - * Restoring Container - * - * @param actionContext current {@link ActionContext} - * @return instance which can be used to invoke action - */ - public ActionInvocation deserialize(ActionContext actionContext) { - DefaultActionInvocation that = this; - that.container = actionContext.getContainer(); - return that; - } - } diff --git a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java index 9053273dcb..f37e8a6ae0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java +++ b/core/src/main/java/com/opensymphony/xwork2/mock/MockActionInvocation.java @@ -124,12 +124,4 @@ public ActionEventListener getActionEventListener() { public void init(ActionProxy proxy) { } - public ActionInvocation serialize() { - return this; - } - - public ActionInvocation deserialize(ActionContext actionContext) { - return this; - } - } diff --git a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java index 5f1ad483d5..6eaaf73669 100644 --- a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java +++ b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java @@ -59,7 +59,7 @@ public static ActionInvocation loadInvocation(String key, String token) { ValueStack stack = invocationContext.invocation.getStack(); ActionContext.getContext().setValueStack(stack); - return invocationContext.invocation.deserialize(ActionContext.getContext()); + return invocationContext.invocation; } /** @@ -71,7 +71,7 @@ public static ActionInvocation loadInvocation(String key, String token) { * @param invocation the action invocation */ public static void storeInvocation(String key, String token, ActionInvocation invocation) { - InvocationContext invocationContext = new InvocationContext(invocation.serialize(), token); + InvocationContext invocationContext = new InvocationContext(invocation, token); Map invocationMap = getInvocationMap(); invocationMap.put(key, invocationContext); setInvocationMap(invocationMap); diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java index 334839082a..89e5b9645e 100644 --- a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java @@ -75,34 +75,6 @@ public void testInvoke() throws Exception { assertTrue(mockInterceptor3.isExecuted()); } - public void testSerialization() throws Exception { - // given - DefaultActionInvocation actionInvocation = new DefaultActionInvocation(new HashMap(), false); - actionInvocation.setContainer(new MockContainer()); - - // when - DefaultActionInvocation serializable = (DefaultActionInvocation) actionInvocation.serialize(); - - // then - assertNull(actionInvocation.container); - assertNull(serializable.container); - } - - public void testDeserialization() throws Exception { - // given - DefaultActionInvocation actionInvocation = new DefaultActionInvocation(new HashMap(), false); - MockContainer mockContainer = new MockContainer(); - ActionContext.getContext().setContainer(mockContainer); - - // when - DefaultActionInvocation deserializable = (DefaultActionInvocation) actionInvocation.deserialize(ActionContext.getContext()); - - // then - assertNotNull(actionInvocation.container); - assertNotNull(deserializable.container); - assertEquals(mockContainer, deserializable.container); - } - public void testInvokingExistingExecuteMethod() throws Exception { // given DefaultActionInvocation dai = new DefaultActionInvocation(new HashMap(), false) { diff --git a/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java b/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java index 34392fbd34..fc37d4a55a 100644 --- a/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java +++ b/core/src/test/java/com/opensymphony/xwork2/spring/interceptor/TestActionInvocation.java @@ -86,12 +86,4 @@ public void setActionEventListener(ActionEventListener listener) { public void init(ActionProxy proxy) { } - public ActionInvocation serialize() { - return this; - } - - public ActionInvocation deserialize(ActionContext actionContext) { - return this; - } - } diff --git a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java index 04c371afb1..b77b59a6bf 100644 --- a/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java +++ b/plugins/dwr/src/main/java/org/apache/struts2/validators/DWRValidator.java @@ -110,7 +110,6 @@ public ValidationAwareSupport doPost(String namespace, String actionName, Map pa } public static class ValidatorActionInvocation extends DefaultActionInvocation { - private static final long serialVersionUID = -7645433725470191275L; protected ValidatorActionInvocation(Map extraContext, boolean pushAction) throws Exception { super(extraContext, pushAction); diff --git a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java index 01e3a11c55..dd8492799a 100644 --- a/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java +++ b/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java @@ -556,8 +556,6 @@ protected void setUp() throws Exception { class MockActionInvocationEx extends MockActionInvocation { - private static final long serialVersionUID = 3057703805130170757L; - private boolean invoked; @Override diff --git a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java index e018591c68..0857a780e6 100644 --- a/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java +++ b/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionInvocation.java @@ -46,8 +46,6 @@ */ public class RestActionInvocation extends DefaultActionInvocation { - private static final long serialVersionUID = 3485701178946428716L; - private static final Logger LOG = LogManager.getLogger(RestActionInvocation.class); private ContentTypeHandlerManager handlerSelector; diff --git a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java index f7b35de2d6..b172eb4fb5 100644 --- a/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java +++ b/plugins/sitemesh/src/main/java/org/apache/struts2/sitemesh/OldDecorator2NewStrutsDecorator.java @@ -140,8 +140,6 @@ protected String getEncoding() { static class DummyActionInvocation implements ActionInvocation { - private static final long serialVersionUID = -4808072199157363028L; - ActionSupport action; public DummyActionInvocation(ActionSupport action) { @@ -196,14 +194,6 @@ public void setActionEventListener(ActionEventListener listener) { public void init(ActionProxy proxy) { } - public ActionInvocation serialize() { - return null; - } - - public ActionInvocation deserialize(ActionContext actionContext) { - return null; - } - } } From 2941416a1832393a25a9bb823f5763fc7851da23 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Thu, 14 Dec 2017 11:05:05 +0330 Subject: [PATCH 0300/2288] WW-4873 Makes InvocationSessionStore$InvocationContext transient --- .../struts2/util/InvocationSessionStore.java | 15 ++++--- .../util/InvocationSessionStoreTest.java | 45 +++++++++++++++++-- 2 files changed, 51 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java index 6eaaf73669..15662de383 100644 --- a/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java +++ b/core/src/main/java/org/apache/struts2/util/InvocationSessionStore.java @@ -20,7 +20,6 @@ import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; -import com.opensymphony.xwork2.util.ValueStack; import java.io.Serializable; import java.util.HashMap; @@ -56,10 +55,14 @@ public static ActionInvocation loadInvocation(String key, String token) { return null; } - ValueStack stack = invocationContext.invocation.getStack(); - ActionContext.getContext().setValueStack(stack); + ActionInvocation savedInvocation = null; + if (invocationContext.invocation != null) { + savedInvocation = invocationContext.invocation; + ActionContext.setContext(savedInvocation.getInvocationContext()); + ActionContext.getContext().setValueStack(savedInvocation.getStack()); + } - return invocationContext.invocation; + return savedInvocation; } /** @@ -109,7 +112,9 @@ private static class InvocationContext implements Serializable { private static final long serialVersionUID = -286697666275777888L; - ActionInvocation invocation; + //WW-4873 transient since 2.5.15 + transient ActionInvocation invocation; + String token; public InvocationContext(ActionInvocation invocation, String token) { diff --git a/core/src/test/java/org/apache/struts2/util/InvocationSessionStoreTest.java b/core/src/test/java/org/apache/struts2/util/InvocationSessionStoreTest.java index f122dc78d5..8b5b8cd0dc 100644 --- a/core/src/test/java/org/apache/struts2/util/InvocationSessionStoreTest.java +++ b/core/src/test/java/org/apache/struts2/util/InvocationSessionStoreTest.java @@ -25,6 +25,10 @@ import com.opensymphony.xwork2.util.ValueStack; import org.apache.struts2.StrutsInternalTestCase; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.HashMap; import java.util.Map; @@ -40,7 +44,7 @@ public class InvocationSessionStoreTest extends StrutsInternalTestCase { private ActionInvocation invocation; - private Map session; + private Map session; private Mock invocationMock; private ValueStack stack; @@ -62,6 +66,40 @@ public void testValueStackReset() { assertEquals(stack, actionContext.getValueStack()); } + public void testActionContextReset() { + ActionContext actionContext = ActionContext.getContext(); + InvocationSessionStore.storeInvocation(INVOCATION_KEY, TOKEN_VALUE, invocation); + + ActionContext actionContext2 = new ActionContext(new HashMap()); + actionContext2.setSession(session); + ActionContext.setContext(actionContext2); + assertEquals(actionContext2, ActionContext.getContext()); + + InvocationSessionStore.loadInvocation(INVOCATION_KEY, TOKEN_VALUE); + assertEquals(actionContext, ActionContext.getContext()); + } + + public void testStoreAndLoadFromDeserializedSession() throws Exception { + InvocationSessionStore.storeInvocation(INVOCATION_KEY, TOKEN_VALUE, invocation); + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(baos); + oos.writeObject(session);//WW-4873 invocation is not serializable but we should not fail at this line + oos.close(); + byte b[] = baos.toByteArray(); + baos.close(); + + ByteArrayInputStream bais = new ByteArrayInputStream(b); + ObjectInputStream ois = new ObjectInputStream(bais); + session = (Map) ois.readObject(); + ActionContext.getContext().setSession(session); + ois.close(); + bais.close(); + + ActionInvocation savedInvocation = InvocationSessionStore.loadInvocation(INVOCATION_KEY, TOKEN_VALUE); + assertNull(savedInvocation);//Currently we don't support invocation restore from serialized session + } + protected void setUp() throws Exception { super.setUp(); stack = ActionContext.getContext().getValueStack(); @@ -69,13 +107,12 @@ protected void setUp() throws Exception { ActionContext actionContext = new ActionContext(stack.getContext()); ActionContext.setContext(actionContext); - session = new HashMap(); + session = new HashMap<>(); actionContext.setSession(session); invocationMock = new Mock(ActionInvocation.class); invocation = (ActionInvocation) invocationMock.proxy(); - invocationMock.matchAndReturn("serialize", invocation); - invocationMock.matchAndReturn("deserialize", actionContext, invocation); + invocationMock.matchAndReturn("getInvocationContext", actionContext); actionContext.setValueStack(stack); invocationMock.matchAndReturn("getStack", stack); From 90784224962b0768a5a6911f4ace0e404d3e689d Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 16 Dec 2017 08:50:11 +0100 Subject: [PATCH 0301/2288] Adds cache to speed up build on Travis --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.travis.yml b/.travis.yml index adda7a1c35..b7fc7f1188 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,3 +14,7 @@ after_success: env: global: secure: DusDFL9cuX+mj64tXQfrYVbUVYnxlXmad4nuIMj0/lgDbwJ6kxYasJmR99bdvwu08gS9D5b7a+m7WJTN0FNATzEiiGDXcM+TiDPlYDh7dcalU4QGiLmMuCCEw1r7hp2XE4BWVgDfFhCsHhStgjE4RXzHIyPowoPXr4ugPf8at6w= + +cache: + directories: + - $HOME/.m2 \ No newline at end of file From 031bd1aceb668c7a910bcec60855c47e35fa37ac Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Sat, 16 Dec 2017 09:07:49 +0100 Subject: [PATCH 0302/2288] Adds empty line to kick Travis build --- .travis.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index b7fc7f1188..14daf858e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,4 +17,5 @@ env: cache: directories: - - $HOME/.m2 \ No newline at end of file + - $HOME/.m2 + \ No newline at end of file From 004b4981a1fb49cab34961965837e29f8d9e6c93 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sat, 16 Dec 2017 19:57:39 +0330 Subject: [PATCH 0303/2288] Increases the coverage of DefaultActionInvocation --- .../xwork2/DefaultActionInvocationTest.java | 107 +++++++++++++++++- .../com/opensymphony/xwork2/SimpleAction.java | 4 + core/src/test/resources/xwork-sample.xml | 11 ++ 3 files changed, 119 insertions(+), 3 deletions(-) diff --git a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java index 89e5b9645e..4e75acda23 100644 --- a/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/DefaultActionInvocationTest.java @@ -23,9 +23,8 @@ import com.opensymphony.xwork2.config.entities.ResultConfig; import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider; import com.opensymphony.xwork2.mock.MockActionProxy; -import com.opensymphony.xwork2.mock.MockContainer; import com.opensymphony.xwork2.mock.MockInterceptor; -import com.opensymphony.xwork2.mock.MockLazyInterceptor; +import com.opensymphony.xwork2.mock.MockResult; import com.opensymphony.xwork2.ognl.OgnlUtil; import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStackFactory; @@ -34,7 +33,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.Map; /** @@ -69,10 +67,22 @@ public void testInvoke() throws Exception { container.inject(defaultActionInvocation); defaultActionInvocation.stack = container.getInstance(ValueStackFactory.class).createValueStack(); + defaultActionInvocation.setResultCode("");//is possible when result is not executed already defaultActionInvocation.invoke(); assertTrue(mockInterceptor1.isExecuted()); assertTrue(mockInterceptor2.isExecuted()); assertTrue(mockInterceptor3.isExecuted()); + assertTrue(defaultActionInvocation.isExecuted()); + try { + defaultActionInvocation.setResultCode(""); + fail("should not possible when result already executed"); + } catch (Exception ignored) { + } + try { + defaultActionInvocation.invoke(); + fail("should not possible when result already executed"); + } catch (Exception ignored) { + } } public void testInvokingExistingExecuteMethod() throws Exception { @@ -312,6 +322,74 @@ public void testInvokeWithLazyParams() throws Exception { assertEquals("this is blah", action.getName()); } + public void testActionEventListener() throws Exception { + ActionProxy actionProxy = actionProxyFactory.createActionProxy("", + "ExceptionFoo", "exceptionMethod", new HashMap()); + DefaultActionInvocation defaultActionInvocation = (DefaultActionInvocation) actionProxy.getInvocation(); + + SimpleActionEventListener actionEventListener = new SimpleActionEventListener("prepared", "exceptionHandled"); + defaultActionInvocation.setActionEventListener(actionEventListener); + defaultActionInvocation.init(actionProxy); + + SimpleAction action = (SimpleAction) defaultActionInvocation.getAction(); + action.setThrowException(true); + + defaultActionInvocation.unknownHandlerManager = new DefaultUnknownHandlerManager() { + @Override + public boolean hasUnknownHandlers() { + return false; + } + }; + + String result = defaultActionInvocation.invoke(); + + // then + assertEquals("prepared", action.getName()); + assertEquals("exceptionHandled", result); + } + + public void testActionChainResult() throws Exception { + ActionProxy actionProxy = actionProxyFactory.createActionProxy("", "Foo", null, + new HashMap()); + DefaultActionInvocation defaultActionInvocation = (DefaultActionInvocation) actionProxy.getInvocation(); + defaultActionInvocation.init(actionProxy); + + SimpleAction action = (SimpleAction) defaultActionInvocation.getAction(); + action.setFoo(1); + action.setBar(2); + + defaultActionInvocation.invoke(); + + // then + assertTrue(defaultActionInvocation.result instanceof ActionChainResult); + Result result = defaultActionInvocation.getResult(); + assertTrue(result instanceof MockResult); + } + + public void testNoResultDefined() throws Exception { + ActionProxy actionProxy = actionProxyFactory.createActionProxy("", "Foo", null, + new HashMap()); + DefaultActionInvocation defaultActionInvocation = (DefaultActionInvocation) actionProxy.getInvocation(); + defaultActionInvocation.init(actionProxy); + + try { + defaultActionInvocation.invoke();//foo==bar so returns error which is not defined + fail("should not possible when result is not defined"); + } catch (Exception ignored) { + } + } + + public void testNullResultPossible() throws Exception { + ActionProxy actionProxy = actionProxyFactory.createActionProxy("", + "NullFoo", "nullMethod", new HashMap()); + DefaultActionInvocation defaultActionInvocation = (DefaultActionInvocation) actionProxy.getInvocation(); + defaultActionInvocation.init(actionProxy); + + String result = defaultActionInvocation.invoke(); + + assertNull(result); + } + @Override protected void setUp() throws Exception { super.setUp(); @@ -322,6 +400,29 @@ protected void setUp() throws Exception { loadConfigurationProviders(configurationProvider); } + + private class SimpleActionEventListener implements ActionEventListener { + + private String name; + private String result; + + SimpleActionEventListener(String name, String result) { + + this.name = name; + this.result = result; + } + + @Override + public Object prepare(Object action, ValueStack stack) { + ((SimpleAction)action).setName(name); + return action; + } + + @Override + public String handleException(Throwable t, ValueStack stack) { + return result; + } + } } class DefaultActionInvocationTester extends DefaultActionInvocation { diff --git a/core/src/test/java/com/opensymphony/xwork2/SimpleAction.java b/core/src/test/java/com/opensymphony/xwork2/SimpleAction.java index 101468a3d5..16b3357b16 100644 --- a/core/src/test/java/com/opensymphony/xwork2/SimpleAction.java +++ b/core/src/test/java/com/opensymphony/xwork2/SimpleAction.java @@ -229,6 +229,10 @@ public String exceptionMethod() throws Exception { return "OK"; } + public String nullMethod() { + return null; + } + @Override public String execute() throws Exception { if (foo == bar) { diff --git a/core/src/test/resources/xwork-sample.xml b/core/src/test/resources/xwork-sample.xml index c776a90816..875c4e5e2e 100644 --- a/core/src/test/resources/xwork-sample.xml +++ b/core/src/test/resources/xwork-sample.xml @@ -47,6 +47,17 @@ + + + + + + + + + + + From fb23b719f222e4c1fcddca694202db9541644c34 Mon Sep 17 00:00:00 2001 From: Stefaan Dutry Date: Wed, 20 Dec 2017 22:08:33 +0100 Subject: [PATCH 0304/2288] used char instead of a single character string --- .../xwork2/config/entities/AllowedMethods.java | 2 +- .../xwork2/util/GlobalLocalizedTextProvider.java | 4 ++-- .../xwork2/util/StrutsLocalizedTextProvider.java | 8 ++++---- .../opensymphony/xwork2/util/finder/ClassFinder.java | 2 +- .../struts2/components/ServletUrlRenderer.java | 12 ++++++------ .../components/template/BaseTemplateEngine.java | 2 +- .../dispatcher/mapper/DefaultActionMapper.java | 10 +++++----- .../multipart/AbstractMultiPartRequest.java | 4 ++-- .../struts2/result/ServletDispatcherResult.java | 4 ++-- .../apache/struts2/result/ServletRedirectResult.java | 2 +- .../java/org/apache/struts2/views/jsp/TagUtils.java | 2 +- .../views/velocity/components/AbstractDirective.java | 2 +- 12 files changed, 27 insertions(+), 27 deletions(-) diff --git a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java index 1e6c64448b..fa645883e0 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/entities/AllowedMethods.java @@ -56,7 +56,7 @@ public static AllowedMethods build(boolean strictMethodInvocation, Set m if (isPattern && !method.startsWith("regex:") && !strictMethodInvocation) { allowedMethods.add(new PatternAllowedMethod(methodPattern.toString(), method)); } else if (method.startsWith("regex:")) { - String pattern = method.substring(method.indexOf(":") + 1); + String pattern = method.substring(method.indexOf(':') + 1); allowedMethods.add(new PatternAllowedMethod(pattern, method)); } else if (method.contains("*") && !method.startsWith("regex:") && !strictMethodInvocation) { String pattern = method.replace("*", defaultRegex); diff --git a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java index 97ca7dcd05..fce1b995c1 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.java @@ -171,8 +171,8 @@ public String findText(Class aClass, String aTextName, Locale locale, String def indexedTextName = aTextName; - while ((i = indexedTextName.indexOf("[", i + 1)) != -1) { - int j = indexedTextName.indexOf("]", i); + while ((i = indexedTextName.indexOf('[', i + 1)) != -1) { + int j = indexedTextName.indexOf(']', i); String a = indexedTextName.substring(0, i); String b = indexedTextName.substring(j); indexedTextName = a + "[*" + b; diff --git a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java index 6366a86910..1dc74b70d9 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.java @@ -232,8 +232,8 @@ public String findText(Class aClass, String aTextName, Locale locale, String def indexedTextName = aTextName; - while ((i = indexedTextName.indexOf("[", i + 1)) != -1) { - int j = indexedTextName.indexOf("]", i); + while ((i = indexedTextName.indexOf('[', i + 1)) != -1) { + int j = indexedTextName.indexOf(']', i); String a = indexedTextName.substring(0, i); String b = indexedTextName.substring(j); indexedTextName = a + "[*" + b; @@ -293,14 +293,14 @@ public String findText(Class aClass, String aTextName, Locale locale, String def } // see if it's a child property - int idx = aTextName.indexOf("."); + int idx = aTextName.indexOf('.'); if (idx != -1) { String newKey = null; String prop = null; if (aTextName.startsWith(XWorkConverter.CONVERSION_ERROR_PROPERTY_PREFIX)) { - idx = aTextName.indexOf(".", XWorkConverter.CONVERSION_ERROR_PROPERTY_PREFIX.length()); + idx = aTextName.indexOf('.', XWorkConverter.CONVERSION_ERROR_PROPERTY_PREFIX.length()); if (idx != -1) { prop = aTextName.substring(XWorkConverter.CONVERSION_ERROR_PROPERTY_PREFIX.length(), idx); diff --git a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java index 678a2baed3..fcbd08e4eb 100644 --- a/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java +++ b/core/src/main/java/com/opensymphony/xwork2/util/finder/ClassFinder.java @@ -189,7 +189,7 @@ public ClassInfo(String name, String superType, ClassFinder classFinder) { } public String getPackageName(){ - return name.indexOf(".") > 0 ? name.substring(0, name.lastIndexOf(".")) : "" ; + return name.indexOf('.') > 0 ? name.substring(0, name.lastIndexOf('.')) : "" ; } public List getConstructors() { diff --git a/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java b/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java index 7a0113b872..b41b4d60ee 100644 --- a/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java +++ b/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java @@ -89,8 +89,8 @@ public void renderUrl(Writer writer, UrlProvider urlComponent) { // We don't include the request parameters cause they would have been // prioritised before this [in start(Writer) method] - if (_value != null && _value.indexOf("?") > 0) { - _value = _value.substring(0, _value.indexOf("?")); + if (_value != null && _value.indexOf('?') > 0) { + _value = _value.substring(0, _value.indexOf('?')); } result = urlHelper.buildUrl(_value, urlComponent.getHttpServletRequest(), urlComponent.getHttpServletResponse(), urlComponent.getParameters(), scheme, urlComponent.isIncludeContext(), urlComponent.isEncode(), urlComponent.isForceAddSchemeHostAndPort(), urlComponent.isEscapeAmp()); } @@ -150,10 +150,10 @@ public void renderFormUrl(Form formComponent) { } Map actionParams = null; - if (action != null && action.indexOf("?") > 0) { - String queryString = action.substring(action.indexOf("?") + 1); + if (action != null && action.indexOf('?') > 0) { + String queryString = action.substring(action.indexOf('?') + 1); actionParams = urlHelper.parseQueryString(queryString, false); - action = action.substring(0, action.indexOf("?")); + action = action.substring(0, action.indexOf('?')); } ActionMapping nameMapping = actionMapper.getMappingFromActionName(action); @@ -322,7 +322,7 @@ protected void mergeRequestParameters(String value, Map paramete // where the parameters specified in value attribute takes priority. if (StringUtils.contains(value, "?")) { - String queryString = value.substring(value.indexOf("?") + 1); + String queryString = value.substring(value.indexOf('?') + 1); mergedParams = urlHelper.parseQueryString(queryString, false); for (Map.Entry entry : contextParameters.entrySet()) { diff --git a/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java b/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java index 7f5deb50c1..050ffb1957 100644 --- a/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java +++ b/core/src/main/java/org/apache/struts2/components/template/BaseTemplateEngine.java @@ -142,7 +142,7 @@ private InputStream createFileInputStream(File propFile) throws FileNotFoundExce protected String getFinalTemplateName(Template template) { String t = template.toString(); - if (t.indexOf(".") <= 0) { + if (t.indexOf('.') <= 0) { return t + "." + getSuffix(); } return t; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java index e4725e7924..224e36a7c1 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/mapper/DefaultActionMapper.java @@ -163,8 +163,8 @@ public void execute(final String key, ActionMapping mapping) { } } if (!allowSlashesInActionNames && !allowActionCrossNamespaceAccess) { - if (actionName.lastIndexOf("/") != -1) { - actionName = actionName.substring(actionName.lastIndexOf("/") + 1); + if (actionName.lastIndexOf('/') != -1) { + actionName = actionName.substring(actionName.lastIndexOf('/') + 1); } } mapping.setName(actionName); @@ -271,7 +271,7 @@ public ActionMapping getMapping(HttpServletRequest request, ConfigurationManager ActionMapping mapping = new ActionMapping(); String uri = RequestUtils.getUri(request); - int indexOfSemicolon = uri.indexOf(";"); + int indexOfSemicolon = uri.indexOf(';'); uri = (indexOfSemicolon > -1) ? uri.substring(0, indexOfSemicolon) : uri; uri = dropExtension(uri, mapping); @@ -291,7 +291,7 @@ protected ActionMapping parseActionName(ActionMapping mapping) { if (allowDynamicMethodCalls) { // handle "name!method" convention. String name = mapping.getName(); - int exclamation = name.lastIndexOf("!"); + int exclamation = name.lastIndexOf('!'); if (exclamation != -1) { mapping.setName(name.substring(0, exclamation)); @@ -341,7 +341,7 @@ public void handleSpecialParameters(HttpServletRequest request, ActionMapping ma */ protected void parseNameAndNamespace(String uri, ActionMapping mapping, ConfigurationManager configManager) { String namespace, name; - int lastSlash = uri.lastIndexOf("/"); + int lastSlash = uri.lastIndexOf('/'); if (lastSlash == -1) { namespace = ""; name = uri; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java index 112621c3ea..700364047b 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java @@ -131,8 +131,8 @@ public List getErrors() { protected String getCanonicalName(final String originalFileName) { String fileName = originalFileName; - int forwardSlash = fileName.lastIndexOf("/"); - int backwardSlash = fileName.lastIndexOf("\\"); + int forwardSlash = fileName.lastIndexOf('/'); + int backwardSlash = fileName.lastIndexOf('\\'); if (forwardSlash != -1 && forwardSlash > backwardSlash) { fileName = fileName.substring(forwardSlash + 1, fileName.length()); } else { diff --git a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java index 136e700cdd..f29a771ed8 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletDispatcherResult.java @@ -137,8 +137,8 @@ public void doExecute(String finalLocation, ActionInvocation invocation) throws //add parameters passed on the location to #parameters // see WW-2120 - if (StringUtils.isNotEmpty(finalLocation) && finalLocation.indexOf("?") > 0) { - String queryString = finalLocation.substring(finalLocation.indexOf("?") + 1); + if (StringUtils.isNotEmpty(finalLocation) && finalLocation.indexOf('?') > 0) { + String queryString = finalLocation.substring(finalLocation.indexOf('?') + 1); HttpParameters parameters = getParameters(invocation); Map queryParams = urlHelper.parseQueryString(queryString, true); if (queryParams != null && !queryParams.isEmpty()) { diff --git a/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java b/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java index 90e94c9759..0879ab06d8 100644 --- a/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java +++ b/core/src/main/java/org/apache/struts2/result/ServletRedirectResult.java @@ -271,7 +271,7 @@ protected boolean isPathUrl(String url) { try { String rawUrl = url; if (url.contains("?")) { - rawUrl = url.substring(0, url.indexOf("?")); + rawUrl = url.substring(0, url.indexOf('?')); } URI uri = URI.create(rawUrl.replaceAll(" ", "%20")); if (uri.isAbsolute()) { diff --git a/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java b/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java index ea212ac655..1484ccfc01 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/TagUtils.java @@ -98,7 +98,7 @@ public static String buildNamespace(ActionMapper mapper, ValueStack stack, HttpS // last part (/foo/bar/baz.xyz -> /foo/bar) String path = RequestUtils.getServletPath(request); - return path.substring(0, path.lastIndexOf("/")); + return path.substring(0, path.lastIndexOf('/')); } } else { return invocation.getProxy().getNamespace(); diff --git a/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java b/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java index 1bed8ef89a..99f0059403 100644 --- a/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java +++ b/core/src/main/java/org/apache/struts2/views/velocity/components/AbstractDirective.java @@ -146,7 +146,7 @@ protected void putProperty(Map propertyMap, InternalContextAdapter contextAdapte // node.value uses the StrutsValueStack to evaluate the directive's value parameter String param = node.value(contextAdapter).toString(); - int idx = param.indexOf("="); + int idx = param.indexOf('='); if (idx != -1) { String property = param.substring(0, idx); From fb8f139b069dd32ccecf9abe6b4c110a666ca860 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Thu, 21 Dec 2017 10:13:36 +0330 Subject: [PATCH 0305/2288] WW-4874 Renames local variable inv to invocation --- .../main/java/org/apache/struts2/dispatcher/Dispatcher.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 1672f9ead4..dd2f76bea1 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java @@ -564,12 +564,12 @@ public void serviceAction(HttpServletRequest request, HttpServletResponse respon ActionProxy proxy; //check if we are probably in an async resuming - ActionInvocation inv = ActionContext.getContext().getActionInvocation(); - if (inv == null || inv.isExecuted()) { + ActionInvocation invocation = ActionContext.getContext().getActionInvocation(); + if (invocation == null || invocation.isExecuted()) { proxy = getContainer().getInstance(ActionProxyFactory.class).createActionProxy(namespace, name, method, extraContext, true, false); } else { - proxy = inv.getProxy(); + proxy = invocation.getProxy(); } request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, proxy.getInvocation().getStack()); From bffa47acf14b47133d8a8dff925fee8acf4823e8 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 24 Dec 2017 12:10:50 +0330 Subject: [PATCH 0306/2288] define constant for timeout result --- .../src/main/java/org/apache/struts2/async/AsyncAction.java | 6 ++++++ .../java/org/apache/struts2/async/DefaultAsyncManager.java | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java index 3baf78fbd7..1edf5d45a6 100644 --- a/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/AsyncAction.java @@ -27,6 +27,12 @@ * @since 2.6 */ public class AsyncAction implements Callable { + + /** + * The action invocation was successful but did not return the result before timeout. + */ + public static final String TIMEOUT = "timeout"; + private Callable callable; private Long timeout; private Executor executor; diff --git a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java index 1e84f27f0e..ed69548fc2 100644 --- a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java @@ -132,7 +132,7 @@ public void onComplete(AsyncEvent asyncEvent) throws IOException { @Override public void onTimeout(AsyncEvent asyncEvent) throws IOException { LOG.debug("Processing timeout for " + asyncEvent.getAsyncContext()); - setAsyncActionResultAndDispatch("timeout"); + setAsyncActionResultAndDispatch(AsyncAction.TIMEOUT); } @Override From 8251dd836f845c360f2c9a9571c517c95a6cbb5e Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Sun, 24 Dec 2017 13:26:15 +0330 Subject: [PATCH 0307/2288] decrease log level for timeout --- .../main/java/org/apache/struts2/async/DefaultAsyncManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java index ed69548fc2..8543590bba 100644 --- a/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java +++ b/plugins/async/src/main/java/org/apache/struts2/async/DefaultAsyncManager.java @@ -106,7 +106,7 @@ private void setAsyncActionResultAndDispatch(Object asyncActionResult) { String log = "Async result [" + asyncActionResult + "] of " + asyncContext; if (asyncCompleted) { - LOG.error(log + " - could not complete result executing due to timeout or network error"); + LOG.debug(log + " - could not complete result executing due to timeout or network error"); } else { LOG.debug(log + " - dispatching request to execute result in container"); asyncContext.dispatch(); From b0270eb16f95e77ee9070bf43ebba0ccbc101e5b Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Mon, 25 Dec 2017 10:54:19 +0330 Subject: [PATCH 0308/2288] add async plugin to dependency management --- pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pom.xml b/pom.xml index d1acf40863..add1d67944 100644 --- a/pom.xml +++ b/pom.xml @@ -532,6 +532,11 @@ struts2-gxp-plugin ${project.version} + + org.apache.struts + struts2-async-plugin + ${project.version} + org.apache.struts struts2-osgi-admin-bundle From aee171c3b8ad401006612c4df44ed540fb2ed7e3 Mon Sep 17 00:00:00 2001 From: Yasser Zamani Date: Tue, 26 Dec 2017 17:10:52 +0330 Subject: [PATCH 0309/2288] add showcase for async plugin --- apps/showcase/pom.xml | 5 + .../struts2/showcase/async/AsyncFilter.java | 53 ++++++++ .../showcase/async/ChatRoomAction.java | 68 ++++++++++ .../src/main/resources/struts-async.xml | 49 ++++++++ apps/showcase/src/main/resources/struts.xml | 2 + .../main/webapp/WEB-INF/decorators/main.jsp | 1 + apps/showcase/src/main/webapp/WEB-INF/web.xml | 25 +++- .../showcase/src/main/webapp/async/index.html | 119 ++++++++++++++++++ .../apache/struts2/showcase/AsyncTest.java | 30 +++++ 9 files changed, 351 insertions(+), 1 deletion(-) create mode 100644 apps/showcase/src/main/java/org/apache/struts2/showcase/async/AsyncFilter.java create mode 100644 apps/showcase/src/main/java/org/apache/struts2/showcase/async/ChatRoomAction.java create mode 100644 apps/showcase/src/main/resources/struts-async.xml create mode 100644 apps/showcase/src/main/webapp/async/index.html create mode 100644 apps/showcase/src/test/java/it/org/apache/struts2/showcase/AsyncTest.java diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml index 7f277124ee..c64fe56934 100644 --- a/apps/showcase/pom.xml +++ b/apps/showcase/pom.xml @@ -89,6 +89,11 @@ struts2-bean-validation-plugin + + org.apache.struts + struts2-async-plugin + + javax.servlet servlet-api diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/async/AsyncFilter.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/async/AsyncFilter.java new file mode 100644 index 0000000000..95d98ca53a --- /dev/null +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/async/AsyncFilter.java @@ -0,0 +1,53 @@ +/* + * 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 org.apache.struts2.showcase.async; + +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; + +/** + * Filters async actions directly to Struts servlet + */ +public class AsyncFilter implements Filter { + @Override + public void init(FilterConfig filterConfig) throws ServletException { + + } + + @Override + public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { + String requestURI = ((HttpServletRequest) servletRequest).getRequestURI(); + if (!requestURI.contains("/async/receiveNewMessages")) { + filterChain.doFilter(servletRequest, servletResponse); // Just continue chain. + } else { + servletRequest.getRequestDispatcher("/async/receiveNewMessages").forward(servletRequest, servletResponse); + } + } + + @Override + public void destroy() { + + } +} diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/async/ChatRoomAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/async/ChatRoomAction.java new file mode 100644 index 0000000000..5877fe6e19 --- /dev/null +++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/async/ChatRoomAction.java @@ -0,0 +1,68 @@ +/* + * 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 org.apache.struts2.showcase.async; + +import com.opensymphony.xwork2.ActionSupport; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.Callable; + +/** + * Example to illustrate the async plugin. + */ +public class ChatRoomAction extends ActionSupport { + private String message; + private Integer lastIndex; + private List newMessages; + + private static final List messages = new ArrayList<>(); + + public void setMessage(String message) { + this.message = message; + } + + public void setLastIndex(Integer lastIndex) { + this.lastIndex = lastIndex; + } + + public List getNewMessages() { + return newMessages; + } + + public Callable receiveNewMessages() throws Exception { + return new Callable() { + @Override + public String call() throws Exception { + while (lastIndex >= messages.size()) { + Thread.sleep(3000); + } + newMessages = messages.subList(lastIndex, messages.size()); + return SUCCESS; + } + }; + } + + public String sendMessage() { + synchronized (messages) { + messages.add(message); + } + return SUCCESS; + } +} diff --git a/apps/showcase/src/main/resources/struts-async.xml b/apps/showcase/src/main/resources/struts-async.xml new file mode 100644 index 0000000000..faa38656c2 --- /dev/null +++ b/apps/showcase/src/main/resources/struts-async.xml @@ -0,0 +1,49 @@ + + + + + + + + + + newMessages + + + newMessages + + + + + + newMessages + + + newMessages + + + + + + diff --git a/apps/showcase/src/main/resources/struts.xml b/apps/showcase/src/main/resources/struts.xml index 46611f9cd3..ee7dbcee34 100644 --- a/apps/showcase/src/main/resources/struts.xml +++ b/apps/showcase/src/main/resources/struts.xml @@ -74,6 +74,8 @@ + + diff --git a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp index 727b28c5ba..bcbe361134 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp @@ -235,6 +235,7 @@
  • Token
  • Model Driven
  • +
  • Async