Compare commits

...

38 Commits

Author SHA1 Message Date
Lukasz Lenart 26e1535b58 [maven-release-plugin] prepare release STRUTS_2_5_27 2021-10-19 09:54:17 +02:00
Yasser Zamani a96dd31be6 Merge pull request #493 from apache/WW-5136-class-deprecated
[WW-5136] Makes class attribute deprecated
2021-07-01 11:43:46 +04:30
Lukasz Lenart fe45511712 WW-5136 Makes class attribute deprecated 2021-06-27 09:48:43 +02:00
Lukasz Lenart 90ea4d8aa1 Merge pull request #490 from apache/WW-5132-labelposition
[WW-5132] [WW-5123] labelposition
2021-06-27 09:17:10 +02:00
Lukasz Lenart d04ed76f1b WW-5135 Upgrades Xstream to version 1.4.17 2021-06-20 20:52:21 +02:00
Lukasz Lenart f1824b5393 WW-5132 Marks old labelposition as Deprecated 2021-06-18 07:02:20 +02:00
Lukasz Lenart 675deff599 WW-5123 Adds right option to TLD for Checkbox tag 2021-06-14 20:28:24 +02:00
Lukasz Lenart 256cd14bf0 WW-5123 Makes labelpostion deprecated 2021-06-14 20:27:48 +02:00
Lukasz Lenart 620b8c3a0c Merge pull request #484 from apache/ww_5125_2_5
[WW-5125] use .get(...) instead of [...] for fieldErrors
2021-05-02 12:05:10 +02:00
Yasser Zamani 20e4529e35 [WW-5125] use .get(...) instead of [...] for fieldErrors
All [ occurrences in all ftl files reviewed. Only fieldErrors had used [...] which replaced by .get(...) to fix WW-5125 as well as aligning with other ftl files conduct.
2021-04-25 14:56:47 +04:30
Lukasz Lenart 8a26c0d753 WW-5118 Upgrades OGNL to ver 3.1.29 to fix Long conversion 2021-04-06 07:20:24 +02:00
Lukasz Lenart b2580e1d76 WW-5122 Upgrades Xstream to version 1.4.16 2021-03-28 10:11:49 +02:00
Lukasz Lenart a65b8d5d51 [WW-5117] Reorders stack (#475)
* Moves action on top just before the tag
* Moves pushes out of try-finally block
2021-03-25 17:26:13 +04:30
Yasser Zamani 7e912a2985 Merge pull request #479 from davoustp/contention-in-singleton-injection-2.5.x
[WW-5121] Fix: remove contention during Scope.SINGLETON injection
2021-03-23 20:31:28 +04:30
Lukasz Lenart 1b9563d366 Merge pull request #477 from davoustp/contention-in-localized-resources-2.5.x
[WW-5119] Fix: remove contention during localized text lookup (JDK 1.7+)
2021-03-22 10:40:43 +01:00
Pascal Davoust ce8b75de58 [WW-5121] Fix: remove contention during Scope.SINGLETON injection 2021-03-22 09:40:02 +01:00
Pascal Davoust 280f25d2fe Update AbstractLocalizedTextProvider.java
Applied code review comments from JCgH4164838Gh792C124B5 into account
2021-03-22 08:50:59 +01:00
Pascal Davoust 69669d6cf7 Fix: remove contention during localized text lookup (JDK 1.7+) 2021-03-15 11:56:41 +01:00
Lukasz Lenart 39d70e3944 Merge pull request #472 from Marcono1234/struts-2-5-x
2.5.x backport: WW-5116 Fix wrong regex range
2021-02-08 20:06:27 +01:00
Marcono1234 cb5e55b06c WW-5116 Fix wrong regex range 2021-02-08 17:10:49 +01:00
Lukasz Lenart ea23ce295a [maven-release-plugin] prepare for next development iteration 2020-11-25 17:32:09 +01:00
Lukasz Lenart 4cf9093cc5 [maven-release-plugin] prepare release STRUTS_2_5_26 2020-11-25 17:31:54 +01:00
Lukasz Lenart 46bae3ce68 Reverts version to 2.5.26-SNAPSHOT 2020-11-25 17:13:51 +01:00
Lukasz Lenart dfa8fb3e4c Fixes translating id in Form tag 2020-11-25 17:12:57 +01:00
Lukasz Lenart a2df8f9890 [maven-release-plugin] prepare for next development iteration 2020-11-24 08:22:00 +01:00
Lukasz Lenart 7253edeada [maven-release-plugin] prepare release STRUTS_2_5_26 2020-11-24 08:16:43 +01:00
Lukasz Lenart 2efe3cec7a Adds additional excludes packages and uses strict SMI declaration 2020-11-24 07:51:43 +01:00
Lukasz Lenart 4506d5716d Reverts version to 2.5.26-SNAPSHOT 2020-11-24 07:49:59 +01:00
Lukasz Lenart 83aff6e470 [maven-release-plugin] prepare for next development iteration 2020-11-21 08:40:22 +01:00
Lukasz Lenart 3138dc7fbd [maven-release-plugin] prepare release STRUTS_2_5_26 2020-11-21 08:40:09 +01:00
Lukasz Lenart 4566734662 Merge pull request #446 from apache/WW-5096-fix-static
[WW-5096] Fix StaticParametersInterceptor param overwrite
2020-11-20 07:47:20 +01:00
Lukasz Lenart d591b7e3b9 WW-5096 Adds tests to cover overwrite 2020-11-18 09:34:49 +01:00
Lukasz Lenart 9c45d6b025 WW-5096 Fixes params overwriting 2020-11-14 21:50:14 +01:00
Lukasz Lenart 482af41673 Adds some additional excluded packages 2020-11-13 19:37:02 +01:00
Lukasz Lenart 0a75d8e8fa Avoids recursion in tags 2020-11-11 07:31:36 +01:00
Lukasz Lenart 1d18e8f9a8 WW-5095 Sets ActionMapping when preparing a test nv 2020-11-11 07:27:40 +01:00
Lukasz Lenart f6365e7363 Uses proper tools labels 2020-11-05 08:08:44 +01:00
Lukasz Lenart 84aeb77011 [maven-release-plugin] prepare for next development iteration 2020-09-17 13:37:00 +02:00
104 changed files with 798 additions and 260 deletions
Vendored
+2 -2
View File
@@ -9,8 +9,8 @@ pipeline {
disableConcurrentBuilds()
}
tools {
jdk 'JDK 1.7 (latest)'
maven 'Maven 3 (latest)'
jdk 'jdk_1.7_latest'
maven 'maven_3_latest'
}
triggers {
pollSCM 'H/15 * * * *'
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-apps</artifactId>
<packaging>pom</packaging>
+2 -2
View File
@@ -24,12 +24,12 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-rest-showcase</artifactId>
<packaging>war</packaging>
<version>2.5.25</version>
<version>2.5.27</version>
<name>Struts 2 Rest Showcase Webapp</name>
<description>Struts 2 Rest Showcase Example</description>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-showcase</artifactId>
@@ -22,12 +22,12 @@ ${parameters.after!}<#t/>
</td><#lt/>
</tr>
<#if (parameters.errorposition!"top") == 'bottom'>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if hasFieldErrors>
<tr errorFor="${parameters.id}">
<td class="tdErrorMessage" colspan="2"><#rt/>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<div class="errorMessage">${error?html}</div><#t/>
</#list>
</#if>
@@ -21,29 +21,29 @@
<#--
Always include elements to show errors. They may be filled later via AJAX.
-->
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if (parameters.errorposition!"top") == 'top'>
<tr errorFor="${parameters.id}">
<td class="tdErrorMessage" colspan="2" data-error-for-fieldname="${parameters.name}"><#rt/>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<div class="errorMessage">${error?html}</div><#t/>
</#list>
</#if>
</td><#lt/>
</tr>
</#if>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelpos = parameters.labelPosition/>
</#if>
<#--
if the label position is top,
then give the label it's own row in the table
-->
<tr>
<#if (labelpos!"") == 'top'>
<#if (labelPos!"") == 'top'>
<td class="tdLabelTop" colspan="2"><#rt/>
<#else>
<td class="tdLabel"><#rt/>
@@ -72,7 +72,7 @@ ${parameters.labelseparator!":"?html}<#t/>
</#if>
</td><#lt/>
<#-- add the extra row -->
<#if (labelpos!"") == 'top'>
<#if (labelPos!"") == 'top'>
</tr>
<tr>
</#if>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-assembly</artifactId>
+3 -3
View File
@@ -30,7 +30,7 @@
</parent>
<artifactId>struts2-bom</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
<packaging>pom</packaging>
<name>Struts 2 Bill of Materials</name>
@@ -45,7 +45,7 @@
</licenses>
<properties>
<struts-version.version>2.5.25</struts-version.version>
<struts-version.version>2.5.27</struts-version.version>
<maven.site.skip>true</maven.site.skip>
<maven.site.deploy.skip>true</maven.site.deploy.skip>
</properties>
@@ -181,7 +181,7 @@
</dependencyManagement>
<scm>
<tag>STRUTS_2_5_25</tag>
<tag>STRUTS_2_5_27</tag>
<connection>scm:git:https://gitbox.apache.org/repos/asf/struts.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/struts.git</developerConnection>
<url>https://github.com/apache/struts/</url>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-bundles</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-osgi-admin-bundle</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-bundles</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-osgi-demo-bundle</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-osgi-bundles</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-core</artifactId>
<packaging>jar</packaging>
@@ -44,15 +44,17 @@ public enum Scope {
@Override
<T> InternalFactory<? extends T> scopeFactory(Class<T> type, String name, final InternalFactory<? extends T> factory) {
return new InternalFactory<T>() {
T instance;
volatile T instance;
public T create(InternalContext context) {
synchronized (context.getContainer()) {
if (instance == null) {
instance = InitializableFactory.wrapIfNeeded(factory).create(context);
if (instance == null) {
synchronized (context.getContainer()) {
if (instance == null) {
instance = InitializableFactory.wrapIfNeeded(factory).create(context);
}
}
return instance;
}
return instance;
}
@Override
@@ -227,21 +227,13 @@ public class StaticParametersInterceptor extends AbstractInterceptor {
protected void addParametersToContext(ActionContext ac, Map<String, ?> newParams) {
HttpParameters previousParams = ac.getParameters();
HttpParameters.Builder combinedParams = HttpParameters.create();
HttpParameters.Builder combinedParams;
if (overwrite) {
if (previousParams != null) {
combinedParams = combinedParams.withParent(previousParams);
}
if (newParams != null) {
combinedParams = combinedParams.withExtraParams(newParams);
}
combinedParams = HttpParameters.create().withParent( previousParams);
combinedParams = combinedParams.withExtraParams(newParams);
} else {
if (newParams != null) {
combinedParams = combinedParams.withExtraParams(newParams);
}
if (previousParams != null) {
combinedParams = combinedParams.withParent(previousParams);
}
combinedParams = HttpParameters.create(newParams);
combinedParams = combinedParams.withExtraParams(previousParams);
}
ac.setParameters(combinedParams.build());
}
@@ -31,8 +31,6 @@ 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;
@@ -61,7 +59,7 @@ abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider {
private final ConcurrentMap<MessageFormatKey, MessageFormat> messageFormats = new ConcurrentHashMap<>();
private final ConcurrentMap<Integer, List<String>> classLoaderMap = new ConcurrentHashMap<>();
private final Set<String> missingBundles = Collections.synchronizedSet(new HashSet<String>());
private final ConcurrentMap<String, Boolean> missingBundles = new ConcurrentHashMap<>();
private final ConcurrentMap<Integer, ClassLoader> delegatedClassLoaderMap = new ConcurrentHashMap<>();
/**
@@ -390,7 +388,7 @@ abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider {
ClassLoader classLoader = getCurrentThreadContextClassLoader();
String key = createMissesKey(String.valueOf(classLoader.hashCode()), aBundleName, locale);
if (missingBundles.contains(key)) {
if (missingBundles.containsKey(key)) {
return null;
}
@@ -413,11 +411,11 @@ abstract class AbstractLocalizedTextProvider implements LocalizedTextProvider {
}
} catch (MissingResourceException e) {
LOG.debug("Missing resource bundle [{}]!", aBundleName, e);
missingBundles.add(key);
missingBundles.putIfAbsent(key, Boolean.TRUE);
}
} else {
LOG.debug("Missing resource bundle [{}]!", aBundleName);
missingBundles.add(key);
missingBundles.putIfAbsent(key, Boolean.TRUE);
}
}
return bundle;
@@ -83,4 +83,21 @@ public class Checkbox extends UIBean {
this.fieldValue = fieldValue;
}
/**
* Deprecated since 2.5.27
* @deprecated use {@link #setLabelPosition(String)} instead
*/
@Deprecated
@Override
@StrutsTagAttribute(description="(Deprecated) Define label position of form element (top/left), also 'right' is supported when using 'xhtml' theme")
public void setLabelposition(String labelPosition) {
super.setLabelPosition(labelPosition);
}
@Override
@StrutsTagAttribute(description="Define label position of form element (top/left), also 'right' is supported when using 'xhtml' theme")
public void setLabelPosition(String labelPosition) {
super.setLabelPosition(labelPosition);
}
}
@@ -300,7 +300,7 @@ public class Component {
* expression otherwise.
*/
protected String completeExpressionIfAltSyntax(String expr) {
if (altSyntax()) {
if (altSyntax() && !ComponentUtils.containsExpression(expr)) {
return "%{" + expr + "}";
}
return expr;
@@ -382,6 +382,15 @@ public class Component {
}
}
/**
* Detects if altSyntax is enabled and then checks if expression contains %{...}
* @param expr a string to examined
* @return true if altSyntax is enabled and expr contains %{...}
*/
protected boolean recursion(String expr) {
return ComponentUtils.altSyntax(stack) && ComponentUtils.containsExpression(expr);
}
/**
* Renders an action URL by consulting the {@link org.apache.struts2.dispatcher.mapper.ActionMapper}.
* @param action the action
@@ -221,7 +221,7 @@ public class Form extends ClosingUIBean {
@Override
protected void populateComponentHtmlId(Form form) {
if (id != null) {
addParameter("id", escape(id));
super.populateComponentHtmlId(null);
}
// if no id given, it will be tried to generate it from the action attribute
@@ -637,7 +637,7 @@ public abstract class UIBean extends Component {
public void evaluateParams() {
String templateDir = getTemplateDir();
String theme = getTheme();
addParameter("templateDir", templateDir);
addParameter("theme", theme);
addParameter("template", template != null ? findString(template) : getDefaultTemplate());
@@ -679,7 +679,9 @@ public abstract class UIBean extends Component {
}
if (labelPosition != null) {
addParameter("labelposition", findString(labelPosition));
String labelPosition = findString(this.labelPosition);
addParameter("labelposition", labelPosition);
addParameter("labelPosition", labelPosition);
}
if (requiredPosition != null) {
@@ -689,7 +691,7 @@ public abstract class UIBean extends Component {
if (errorPosition != null) {
addParameter("errorposition", findString(errorPosition));
}
if (requiredLabel != null) {
addParameter("required", findValue(requiredLabel, Boolean.class));
}
@@ -795,8 +797,11 @@ public abstract class UIBean extends Component {
addParameter("nameValue", findValue(value, valueClazz));
} else if (name != null) {
String expr = completeExpressionIfAltSyntax(name);
addParameter("nameValue", findValue(expr, valueClazz));
if (recursion(name)) {
addParameter("nameValue", expr);
} else {
addParameter("nameValue", findValue(expr, valueClazz));
}
}
} else {
if (value != null) {
@@ -1002,7 +1007,7 @@ public abstract class UIBean extends Component {
} else {
tryId = generatedId;
}
//fix for https://issues.apache.org/jira/browse/WW-4299
//do not assign value to id if tryId is null
if (tryId != null) {
@@ -1021,9 +1026,7 @@ public abstract class UIBean extends Component {
@StrutsTagAttribute(description="HTML id attribute")
public void setId(String id) {
if (id != null) {
this.id = findString(id);
}
this.id = id;
}
@StrutsTagAttribute(description="The template directory.")
@@ -1050,7 +1053,8 @@ public abstract class UIBean extends Component {
this.cssClass = cssClass;
}
@StrutsTagAttribute(description="The css class to use for element - it's an alias of cssClass attribute.")
@Deprecated
@StrutsTagAttribute(description="(Deprecated) The css class to use for element - it's an alias of cssClass attribute.")
public void setClass(String cssClass) {
this.cssClass = cssClass;
}
@@ -1095,11 +1099,21 @@ public abstract class UIBean extends Component {
this.labelSeparator = labelseparator;
}
@StrutsTagAttribute(description="Define label position of form element (top/left)")
/**
* Deprecated since 2.5.27
* @deprecated use {@link #setLabelPosition(String)} instead
*/
@StrutsTagAttribute(description="(Deprecated) Define label position of form element (top/left)")
@Deprecated
public void setLabelposition(String labelPosition) {
this.labelPosition = labelPosition;
}
@StrutsTagAttribute(description="Define label position of form element (top/left)")
public void setLabelPosition(String labelPosition) {
this.labelPosition = labelPosition;
}
@StrutsTagAttribute(description="Define required position of required form element (left|right)")
public void setRequiredPosition(String requiredPosition) {
this.requiredPosition = requiredPosition;
@@ -1109,7 +1123,7 @@ public abstract class UIBean extends Component {
public void setErrorPosition(String errorPosition) {
this.errorPosition = errorPosition;
}
@StrutsTagAttribute(description="The name to set for element")
public void setName(String name) {
this.name = name;
@@ -1241,8 +1255,8 @@ public abstract class UIBean extends Component {
this.tooltipIconPath = tooltipIconPath;
}
public void setDynamicAttributes(Map<String, Object> tagDynamicAttributes) {
for (Map.Entry<String, Object> entry : tagDynamicAttributes.entrySet()) {
public void setDynamicAttributes(Map<String, String> tagDynamicAttributes) {
for (Map.Entry<String, String> entry : tagDynamicAttributes.entrySet()) {
String key = entry.getKey();
if (!isValidTagAttribute(key)) {
@@ -64,7 +64,7 @@ public class FreemarkerTemplateEngine extends BaseTemplateEngine {
public void setFreemarkerManager(FreemarkerManager mgr) {
this.freemarkerManager = mgr;
}
public void renderTemplate(TemplateRenderingContext templateContext) throws Exception {
// get the various items required from the stack
ValueStack stack = templateContext.getStack();
@@ -121,6 +121,10 @@ public class FreemarkerTemplateEngine extends BaseTemplateEngine {
ActionInvocation ai = ActionContext.getContext().getActionInvocation();
Object action = (ai == null) ? null : ai.getAction();
if (action == null) {
LOG.warn("Rendering tag {} out of Action scope, accessing directly JSPs is not recommended! " +
"Please read https://struts.apache.org/security/#never-expose-jsp-files-directly", templateName);
}
SimpleHash model = freemarkerManager.buildTemplateModel(stack, action, servletContext, req, res, config.getObjectWrapper());
model.put("tag", templateContext.getTag());
@@ -144,15 +148,20 @@ public class FreemarkerTemplateEngine extends BaseTemplateEngine {
}
};
LOG.debug("Puts action on the top of ValueStack, just before the tag");
action = stack.pop();
stack.push(templateContext.getTag());
stack.push(action);
try {
stack.push(templateContext.getTag());
template.process(model, writer);
} finally {
stack.pop();
stack.pop(); // removes action
stack.pop(); // removes tag
stack.push(action); // puts back action
}
}
protected String getSuffix() {
return "ftl";
}
}
}
@@ -192,7 +192,11 @@ public class HttpParameters implements Map<String, Parameter>, Cloneable {
for (Map.Entry<String, Object> entry : requestParameterMap.entrySet()) {
String name = entry.getKey();
Object value = entry.getValue();
parameters.put(name, new Parameter.Request(name, value));
if (value instanceof Parameter) {
parameters.put(name, (Parameter) value);
} else {
parameters.put(name, new Parameter.Request(name, value));
}
}
return new HttpParameters(parameters);
@@ -149,7 +149,7 @@ public class PostbackResult extends StrutsResultSupport {
} else {
String location = getLocation();
// Do not prepend if the URL is a FQN
if (!location.matches("^([a-zA-z]+:)?//.*")) {
if (!location.matches("^([a-zA-Z]+:)?//.*")) {
// If the URL is relative to the servlet context, prepend the servlet context path
if (prependServletContext && (request.getContextPath() != null) && (request.getContextPath().length() > 0)) {
location = request.getContextPath() + location;
@@ -18,9 +18,7 @@
*/
package org.apache.struts2.views.jsp.ui;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.struts2.components.UIBean;
import org.apache.struts2.util.ComponentUtils;
import org.apache.struts2.views.jsp.ComponentTagSupport;
import javax.servlet.jsp.JspException;
@@ -40,7 +38,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
protected String disabled;
protected String label;
protected String labelSeparator;
protected String labelposition;
protected String labelPosition;
protected String requiredPosition;
protected String errorPosition;
protected String name;
@@ -78,7 +76,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
protected String tooltipIconPath;
// dynamic attributes.
protected Map<String, Object> dynamicAttributes = new HashMap<>();
protected Map<String, String> dynamicAttributes = new HashMap<>();
protected void populateParams() {
super.populateParams();
@@ -92,7 +90,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
uiBean.setDisabled(disabled);
uiBean.setLabel(label);
uiBean.setLabelSeparator(labelSeparator);
uiBean.setLabelposition(labelposition);
uiBean.setLabelPosition(labelPosition);
uiBean.setRequiredPosition(requiredPosition);
uiBean.setErrorPosition(errorPosition);
uiBean.setName(name);
@@ -137,6 +135,10 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
this.cssClass = cssClass;
}
/**
* @deprecated Use {@link #setCssClass(String)} instead
*/
@Deprecated
public void setClass(String cssClass) {
this.cssClass = cssClass;
}
@@ -169,8 +171,17 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
this.label = label;
}
/**
* Deprecated since 2.5.27
* @deprecated use {@link #setLabelPosition(String)} instead
*/
@Deprecated
public void setLabelposition(String labelPosition) {
this.labelposition = labelPosition;
this.labelPosition = labelPosition;
}
public void setLabelPosition(String labelPosition) {
this.labelPosition = labelPosition;
}
public void setRequiredPosition(String requiredPosition) {
@@ -302,11 +313,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
}
public void setDynamicAttribute(String uri, String localName, Object value) throws JspException {
if (ComponentUtils.altSyntax(getStack()) && ComponentUtils.isExpression(value.toString())) {
dynamicAttributes.put(localName, String.valueOf(ObjectUtils.defaultIfNull(findValue(value.toString()), value)));
} else {
dynamicAttributes.put(localName, value);
}
dynamicAttributes.put(localName, String.valueOf(value));
}
}
@@ -18,13 +18,12 @@
*/
package org.apache.struts2.views.jsp.ui;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.opensymphony.xwork2.util.ValueStack;
import org.apache.struts2.components.Checkbox;
import org.apache.struts2.components.Component;
import com.opensymphony.xwork2.util.ValueStack;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @see Checkbox
+13 -1
View File
@@ -73,7 +73,19 @@
com.opensymphony.xwork2.inject.,
com.opensymphony.xwork2.ognl.,
com.opensymphony.xwork2.security.,
com.opensymphony.xwork2.util." />
com.opensymphony.xwork2.util.,
org.apache.tomcat.,
org.apache.catalina.core.,
com.ibm.websphere.,
org.apache.geronimo.,
org.apache.openejb.,
org.apache.tomee.,
org.eclipse.jetty.,
org.mortbay.jetty.,
org.glassfish.,
org.jboss.as.,
org.wildfly.,
weblogic.," />
<bean class="com.opensymphony.xwork2.ObjectFactory" name="struts"/>
<bean type="com.opensymphony.xwork2.factory.ResultFactory" name="struts" class="org.apache.struts2.factory.StrutsResultFactory" />
@@ -24,16 +24,16 @@
#set ($hasFieldErrors = $fieldErrors.get($parameters.name))
#foreach ($error in $fieldErrors.get($parameters.name))
<tr errorFor="$parameters.id">
#if ($parameters.labelposition == 'top')<td align="left" valign="top" colspan="2">#else<td align="center" valign="top" colspan="2">#end<span class="errorMessage">$!struts.htmlEncode($error)</span></td>
#if ($parameters.labelPosition == 'top')<td align="left" valign="top" colspan="2">#else<td align="center" valign="top" colspan="2">#end<span class="errorMessage">$!struts.htmlEncode($error)</span></td>
</tr>
#end
#end
## if the label position is top,
## then give the label it's own row in the table
<tr>
#if ($parameters.labelposition && $parameters.labelposition == 'top')<td align="left" valign="top" colspan="2">#else<td align="right" valign="top">#end#if ($parameters.label)<label #if ($parameters.id) for="$!struts.htmlEncode($parameters.id)"#end#if ($hasFieldErrors) class="errorLabel"#else class="label"#end>#if ($parameters.required)<span class="required">*</span>#end$!struts.htmlEncode($parameters.label):</label>#end</td>
#if ($parameters.labelPosition && $parameters.labelPosition == 'top')<td align="left" valign="top" colspan="2">#else<td align="right" valign="top">#end#if ($parameters.label)<label #if ($parameters.id) for="$!struts.htmlEncode($parameters.id)"#end#if ($hasFieldErrors) class="errorLabel"#else class="label"#end>#if ($parameters.required)<span class="required">*</span>#end$!struts.htmlEncode($parameters.label):</label>#end</td>
## add the extra row
#if ($parameters.labelposition && $parameters.labelposition == 'top')
#if ($parameters.labelPosition && $parameters.labelPosition == 'top')
</tr>
<tr>
#end
@@ -23,12 +23,12 @@ NOTE: The 'header' stuff that follows is in this one file for checkbox due to th
that for checkboxes we do not want the label field to show up as checkboxes handle their own
lables
-->
<#assign hasFieldErrors = fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = fieldErrors?? && fieldErrors.get(parameters.name)??/>
<div <#rt/><#if parameters.id??>id="wwgrp_${parameters.id}"<#rt/></#if> class="wwgrp">
<#if hasFieldErrors>
<div <#rt/><#if parameters.id??>id="wwerr_${parameters.id}"<#rt/></#if> class="wwerr">
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<div<#rt/>
<#if parameters.id??>
errorFor="${parameters.id}"<#rt/>
@@ -39,12 +39,12 @@ lables
</#list>
</div><#t/>
</#if>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"") == 'left'>
<#if (labelPos!"") == 'left'>
<span <#rt/>
<#if parameters.id??>id="wwlbl_${parameters.id}"<#rt/></#if> class="wwlbl">
<label<#t/>
@@ -60,7 +60,7 @@ lables
</span>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
@@ -72,14 +72,14 @@ lables
</#if>
<#include "/${parameters.templateDir}/simple/checkbox.ftl" />
<#if (labelpos!"") != 'left'>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"") != 'left'>
<#if (labelPos!"top") == 'top'>
</div> <#rt/>
<#else>
</span> <#rt/>
</#if>
<#if parameters.label??>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
@@ -98,7 +98,7 @@ lables
</#if>
</#if>
<#if parameters.label??>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
</div> <#rt/>
<#else>
</span> <#rt/>
@@ -20,21 +20,21 @@
-->
${parameters.after!}<#t/>
<#lt/>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
</div> <#rt/>
<#else>
</span> <#rt/>
</#if>
<#if (parameters.errorposition!"top") == 'bottom'>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if hasFieldErrors>
<div <#rt/><#if parameters.id??>id="wwerr_${parameters.id}"<#rt/></#if> class="wwerr">
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<div<#rt/>
<#if parameters.id??>
errorFor="${parameters.id}"<#rt/>
@@ -46,4 +46,4 @@ ${parameters.after!}<#t/>
</div><#t/>
</#if>
</#if>
</div>
</div>
@@ -22,13 +22,13 @@
Only show message if errors are available.
This will be done if ActionSupport is used.
-->
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<div <#rt/><#if parameters.id??>id="wwgrp_${parameters.id}"<#rt/></#if> class="wwgrp">
<#if (parameters.errorposition!"top") == 'top'>
<#if hasFieldErrors>
<div <#rt/><#if parameters.id??>id="wwerr_${parameters.id}"<#rt/></#if> class="wwerr">
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<div<#rt/>
<#if parameters.id??>
errorFor="${parameters.id}"<#rt/>
@@ -41,13 +41,13 @@
</#if>
</#if>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if parameters.label??>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
@@ -69,7 +69,7 @@
${parameters.label?html}${parameters.labelseparator!":"?html}
<#include "/${parameters.templateDir}/xhtml/tooltip.ftl" />
</label><#t/>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
</div> <br /><#rt/>
<#else>
</span> <#rt/>
@@ -19,15 +19,14 @@
*/
-->
<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader-core.ftl">
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
</#if>
<#if parameters.id??>id="wwctrl_${parameters.id}"<#rt/></#if> class="wwctrl">
@@ -18,12 +18,12 @@
* under the License.
*/
-->
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
@@ -34,7 +34,7 @@
</#if>
><#t/>
<#include "/${parameters.templateDir}/simple/reset.ftl" />
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
</div> <#t/>
<#else>
</span> <#t/>
@@ -19,12 +19,12 @@
*/
-->
<#include "/${parameters.templateDir}/simple/submit-close.ftl" />
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
</div> <#t/>
<#else>
</span> <#t/>
@@ -18,12 +18,12 @@
* under the License.
*/
-->
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"top") == 'top'>
<#if (labelPos!"top") == 'top'>
<div <#rt/>
<#else>
<span <#rt/>
@@ -18,7 +18,7 @@
* under the License.
*/
-->
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if parameters.cssClass?has_content && !(hasFieldErrors && parameters.cssErrorClass??)>
class="${parameters.cssClass?html}"<#rt/>
<#elseif parameters.cssClass?has_content && (hasFieldErrors && parameters.cssErrorClass??)>
@@ -29,4 +29,4 @@
</#if>
${aKey}="${value?html}"<#rt/>
</#list><#rt/>
</#if><#rt/>
</#if><#rt/>
@@ -29,7 +29,7 @@
<#list eKeys as eKey><#t/>
<#if (eKey = fieldErrorFieldName)><#t/>
<#assign haveMatchedErrorField=true><#t/>
<#assign eValue = fieldErrors[fieldErrorFieldName]><#t/>
<#assign eValue = fieldErrors.get(fieldErrorFieldName)><#t/>
<#if (haveMatchedErrorField && (!doneStartUlTag))><#t/>
<ul<#rt/>
<#if parameters.id?has_content>
@@ -69,7 +69,7 @@
</#if>
>
<#list eKeys as eKey><#t/>
<#assign eValue = fieldErrors[eKey]><#t/>
<#assign eValue = fieldErrors.get(eKey)><#t/>
<#list eValue as eEachValue><#t/>
<li><span><#if parameters.escape>${eEachValue!?html}<#else>${eEachValue!}</#if></span></li>
</#list><#t/>
@@ -18,9 +18,9 @@
* under the License.
*/
-->
<#assign hasFieldErrors = fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<tr<#rt/>
<#if parameters.id??>
errorFor="${parameters.id}"<#rt/>
@@ -32,12 +32,12 @@
</tr>
</#list>
</#if>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#if (labelpos!"") == 'top'>
<#if (labelPos!"") == 'top'>
<tr>
<td colspan="2">
<#if parameters.label??> <label<#t/>
@@ -71,7 +71,7 @@ ${parameters.label?html}<#t/>
<#else>
<tr>
<td class="tdCheckboxLabel">
<#if (labelpos!"") == 'left'>
<#if (labelPos!"") == 'left'>
<#if parameters.label??> <label<#t/>
<#if parameters.id??>
for="${parameters.id?html}"<#rt/>
@@ -96,7 +96,7 @@ ${parameters.label?html}<#t/>
</label><#t/>
</#if>
</#if>
<#if (labelpos!"") == 'right'>
<#if (labelPos!"") == 'right'>
<#if parameters.required!false>
<span class="required">*</span><#t/>
</#if>
@@ -107,10 +107,10 @@ ${parameters.label?html}<#t/>
</td>
<td class="tdCheckboxInput">
<#if (labelpos!"") != 'top'>
<#if (labelPos!"") != 'top'>
<#include "/${parameters.templateDir}/simple/checkbox.ftl" />
</#if>
<#if (labelpos!"") != 'top' && (labelpos!"") != 'left'>
</#if>
<#if (labelPos!"") != 'top' && (labelPos!"") != 'left'>
<#if parameters.label??> <label<#t/>
<#if parameters.id??>
for="${parameters.id?html}"<#rt/>
@@ -22,9 +22,9 @@ ${parameters.after!}<#t/>
</td><#lt/>
</tr>
<#if (parameters.errorposition!"top") == 'bottom'>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<tr errorFor="${parameters.id}">
<td class="tdErrorMessage" colspan="2"><#rt/>
<span class="errorMessage">${error?html}</span><#t/>
@@ -22,10 +22,10 @@
Only show message if errors are available.
This will be done if ActionSupport is used.
-->
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors.get(parameters.name)??/>
<#if (parameters.errorposition!"top") == 'top'>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<#list fieldErrors.get(parameters.name) as error>
<tr errorFor="${parameters.id}">
<td class="tdErrorMessage" colspan="2"><#rt/>
<span class="errorMessage">${error?html}</span><#t/>
@@ -34,17 +34,17 @@
</#list>
</#if>
</#if>
<#if !parameters.labelposition?? && (parameters.form.labelposition)??>
<#assign labelpos = parameters.form.labelposition/>
<#elseif parameters.labelposition??>
<#assign labelpos = parameters.labelposition/>
<#if !parameters.labelPosition?? && (parameters.form.labelPosition)??>
<#assign labelPos = parameters.form.labelPosition/>
<#elseif parameters.labelPosition??>
<#assign labelPos = parameters.labelPosition/>
</#if>
<#--
if the label position is top,
then give the label it's own row in the table
-->
<tr>
<#if (labelpos!"") == 'top'>
<#if (labelPos!"") == 'top'>
<td class="tdLabelTop" colspan="2"><#rt/>
<#else>
<td class="tdLabel"><#rt/>
@@ -73,7 +73,7 @@ ${parameters.labelseparator!":"?html}<#t/>
</#if>
</td><#lt/>
<#-- add the extra row -->
<#if (labelpos!"") == 'top'>
<#if (labelPos!"") == 'top'>
</tr>
<tr>
</#if>
+10 -2
View File
@@ -63,7 +63,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -193,6 +193,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -207,7 +215,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">method</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left), also 'right' is supported when using 'xhtml' theme</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left), also 'right' is supported when using 'xhtml' theme</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -153,6 +153,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -167,7 +175,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -417,6 +417,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -431,7 +439,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -145,6 +145,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -159,7 +167,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -55,7 +55,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -63,7 +63,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -169,6 +169,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -183,7 +191,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">method</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
@@ -87,7 +87,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -193,6 +193,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -207,7 +215,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">leftTitle</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
@@ -183,7 +183,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -553,6 +553,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -567,7 +575,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">leftDownLabel</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">maxLength</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
+10 -2
View File
@@ -55,7 +55,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Supply a reset button text apart from reset value. Will have no effect for <i>input</i> type reset, since button text will always be the value parameter.</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">method</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -153,6 +153,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -167,7 +175,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
+10 -2
View File
@@ -55,7 +55,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">method</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cols</td>
@@ -137,6 +137,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -151,7 +159,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">maxLength</td>
+10 -2
View File
@@ -47,7 +47,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -143,7 +151,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">name</td>
+10 -2
View File
@@ -71,7 +71,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">The css class to use for element - it's an alias of cssClass attribute.</td>
<td align="left" valign="top">(Deprecated) The css class to use for element - it's an alias of cssClass attribute.</td>
</tr>
<tr>
<td align="left" valign="top">cssClass</td>
@@ -177,6 +177,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Label expression used for rendering an element specific label</td>
</tr>
<tr>
<td align="left" valign="top">labelPosition</td>
<td align="left" valign="top">false</td>
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">labelSeparator</td>
<td align="left" valign="top">false</td>
@@ -191,7 +199,7 @@ Please do not edit it directly.
<td align="left" valign="top"></td>
<td align="left" valign="top">false</td>
<td align="left" valign="top">String</td>
<td align="left" valign="top">Define label position of form element (top/left)</td>
<td align="left" valign="top">(Deprecated) Define label position of form element (top/left)</td>
</tr>
<tr>
<td align="left" valign="top">list</td>
@@ -28,6 +28,7 @@ import com.opensymphony.xwork2.mock.MockActionInvocation;
import com.opensymphony.xwork2.mock.MockActionProxy;
import org.apache.struts2.dispatcher.HttpParameters;
import java.util.HashMap;
import java.util.Map;
/**
@@ -139,6 +140,51 @@ public class StaticParametersInterceptorTest extends XWorkTestCase {
assertEquals(0, ActionContext.getContext().getParameters().keySet().size());
}
public void testOverwrite() throws Exception {
MockActionInvocation mai = new MockActionInvocation();
MockActionProxy map = new MockActionProxy();
ActionConfig ac = new ActionConfig.Builder("", "", "")
.addParam("name", "${hero}")
.build();
map.setConfig(ac);
mai.setProxy(map);
mai.setAction(new SimpleFooAction());
Map<String, String> existingParams = new HashMap<>();
existingParams.put("name", "Akash");
ActionContext.getContext().setParameters(HttpParameters.create(existingParams).build());
int before = ActionContext.getContext().getValueStack().size();
interceptor.setOverwrite("true");
interceptor.intercept(mai);
assertEquals(before, ActionContext.getContext().getValueStack().size());
assertEquals("${hero}", ActionContext.getContext().getParameters().get("name").toString());
}
public void testNoOverwrite() throws Exception {
MockActionInvocation mai = new MockActionInvocation();
MockActionProxy map = new MockActionProxy();
ActionConfig ac = new ActionConfig.Builder("", "", "")
.addParam("name", "${hero}")
.build();
map.setConfig(ac);
mai.setProxy(map);
mai.setAction(new SimpleFooAction());
mai.setInvocationContext(ActionContext.getContext());
Map<String, String> existingParams = new HashMap<>();
existingParams.put("name", "Akash");
ActionContext.getContext().setParameters(HttpParameters.create(existingParams).build());
int before = ActionContext.getContext().getValueStack().size();
interceptor.setOverwrite("false");
interceptor.intercept(mai);
assertEquals(before, ActionContext.getContext().getValueStack().size());
assertEquals("Akash", ActionContext.getContext().getParameters().get("name").toString());
}
public void testFewParametersParse() throws Exception {
MockActionInvocation mai = new MockActionInvocation();
MockActionProxy map = new MockActionProxy();
@@ -49,6 +49,7 @@ public class TestAction extends ActionSupport {
private List list3;
private SomeEnum status = SomeEnum.COMPLETED;
private Float floatNumber;
private Long id;
private final Map<String, String> texts = new HashMap<String, String>();
@@ -213,7 +214,7 @@ public class TestAction extends ActionSupport {
public void setStatus(SomeEnum status) {
this.status = status;
}
public List<SomeEnum> getStatusList() {
return Arrays.asList(SomeEnum.values());
}
@@ -225,4 +226,13 @@ public class TestAction extends ActionSupport {
public void setFloatNumber(Float floatNumber) {
this.floatNumber = floatNumber;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
@@ -280,6 +280,27 @@ public class UIBeanTest extends StrutsInternalTestCase {
assertEquals(value, txtFld.getParameters().get("nameValue"));
}
public void testValueParameterRecursion() {
ValueStack stack = ActionContext.getContext().getValueStack();
MockHttpServletRequest req = new MockHttpServletRequest();
MockHttpServletResponse res = new MockHttpServletResponse();
stack.push(new Object() {
public String getMyValue() {
return "%{myBad}";
}
public String getMyBad() {
throw new IllegalStateException("Recursion detected!");
}
});
TextField txtFld = new TextField(stack, req, res);
txtFld.setName("%{myValue}");
txtFld.evaluateParams();
assertEquals("%{myBad}", txtFld.getParameters().get("nameValue"));
}
public void testSetClass() {
String cssClass = "insertCssClassHere";
ValueStack stack = ActionContext.getContext().getValueStack();
@@ -189,6 +189,21 @@ public class StrutsUtilTest extends StrutsInternalTestCase {
assertEquals(obj1, "try: bar");
}
public void testTranslateVariablesRecursion() throws Exception {
stack.push(new Object() {
public String getFoo() {
return "%{bar}";
}
public String getBar() {
return "bar";
}
});
String obj1 = strutsUtil.translateVariables("try: %{foo}");
assertNotNull(obj1);
assertEquals("try: %{bar}", obj1);
}
// === Junit Hook
protected void setUp() throws Exception {
@@ -186,6 +186,25 @@ public class FormTagTest extends AbstractUITagTest {
verify(FormTag.class.getResource("Formtag-1.txt"));
}
public void testFormId() throws Exception {
request.setupGetServletPath("/testAction");
TestAction testAction = (TestAction) action;
testAction.setFoo("bar");
FormTag tag = new FormTag();
tag.setPageContext(pageContext);
tag.setMethod("post");
tag.setAction("myAction");
tag.setId("myid-%{foo}");
tag.doStartTag();
tag.doEndTag();
verify(FormTag.class.getResource("Formtag-29.txt"));
}
public void testFormNoNameOrId() throws Exception {
request.setupGetServletPath("/testAction");
@@ -18,15 +18,14 @@
*/
package org.apache.struts2.views.jsp.ui;
import java.util.HashMap;
import java.util.Map;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.mock.MockActionInvocation;
import org.apache.struts2.TestAction;
import org.apache.struts2.views.jsp.AbstractUITagTest;
import java.util.HashMap;
import java.util.Map;
/**
*/
public class HiddenTest extends AbstractUITagTest {
public void testSimple() throws Exception {
@@ -62,13 +61,57 @@ public class HiddenTest extends AbstractUITagTest {
verify(TextFieldTag.class.getResource("Hidden-2.txt"));
}
public void testDynamicAttributesWithActionInvocation() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setId(27357L);
MockActionInvocation ai = new MockActionInvocation();
ai.setAction(action);
ActionContext.getContext().setActionInvocation(ai);
HiddenTag tag = new HiddenTag();
tag.setPageContext(pageContext);
tag.setId("einszwei");
tag.setName("first");
tag.setValue("%{id}");
tag.setDynamicAttribute("", "data-wuffmiauww", "%{id}");
tag.doStartTag();
tag.doEndTag();
assertSame(stack.pop(), testAction);
assertNotSame(stack.pop(), tag);
verify(TextFieldTag.class.getResource("Hidden-3.txt"));
}
public void testDynamicAttributesWithStack() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setId(27357L);
HiddenTag tag = new HiddenTag();
tag.setPageContext(pageContext);
tag.setId("einszwei");
tag.setName("first");
tag.setValue("%{id}");
tag.setDynamicAttribute("", "data-wuffmiauww", "%{id}");
tag.doStartTag();
tag.doEndTag();
assertSame(stack.pop(), testAction);
assertNotSame(stack.pop(), tag);
verify(TextFieldTag.class.getResource("Hidden-3.txt"));
}
/**
* Initialize a map of {@link org.apache.struts2.views.jsp.AbstractUITagTest.PropertyHolder} for generic tag
* property testing. Will be used when calling {@link #verifyGenericProperties(org.apache.struts2.views.jsp.ui.AbstractUITag,
* String, String[])} as properties to verify.<br> This implementation extends testdata from AbstractUITag.
*
* @return A Map of PropertyHolders values bound to {@link org.apache.struts2.views.jsp.AbstractUITagTest.PropertyHolder#getName()}
* as key.
* as key.
*/
protected Map initializedGenericTagTestProperties() {
Map result = new HashMap();
@@ -145,7 +145,23 @@ public class TextfieldTest extends AbstractUITagTest {
verify(TextFieldTag.class.getResource("Textfield-1.txt"));
}
public void testWW5125() throws Exception {
TestAction testAction = (TestAction) action;
for(String fieldName : new String[] {"clone", "size", "clear", "values", "hashCode", "isEmpty", "keySet", "entrySet"}) {
testAction.addFieldError(fieldName, fieldName + " error");
TextFieldTag tag = new TextFieldTag();
tag.setPageContext(pageContext);
tag.setName(fieldName);
tag.doStartTag();
tag.doEndTag();
}
verify(TextFieldTag.class.getResource("Textfield-WW-5125.txt"));
}
public void testSimple_recursionTest() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setFoo("%{1+1}");
@@ -0,0 +1,3 @@
<form id="myid-bar" name="myid-bar" action="myAction" method="post">
<table class="wwFormTable"></table>
</form>
@@ -0,0 +1,5 @@
<tr style="display:none;">
<td colspan="2">
<input type="hidden" name="first" value="27357" id="einszwei" data-wuffmiauww="27357"/>
</td>
</tr>
@@ -0,0 +1,80 @@
<tr errorFor="clone">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">clone error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="clone" value="" id="clone"/></td>
</tr>
<tr errorFor="size">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">size error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="size" value="" id="size"/></td>
</tr>
<tr errorFor="clear">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">clear error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="clear" value="" id="clear"/></td>
</tr>
<tr errorFor="values">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">values error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="values" value="" id="values"/></td>
</tr>
<tr errorFor="hashCode">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">hashCode error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="hashCode" value="" id="hashCode"/></td>
</tr>
<tr errorFor="isEmpty">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">isEmpty error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="isEmpty" value="" id="isEmpty"/></td>
</tr>
<tr errorFor="keySet">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">keySet error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="keySet" value="" id="keySet"/></td>
</tr>
<tr errorFor="entrySet">
<td class="tdErrorMessage" colspan="2"><span class="errorMessage">entrySet error</span></td>
</tr>
<tr>
<td class="tdLabel"></td>
<td
class="tdInput"
><input type="text" name="entrySet" value="" id="entrySet"/></td>
</tr>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<modelVersion>4.0.0</modelVersion>
+1 -1
View File
@@ -25,7 +25,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-cdi-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-config-browser-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-convention-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-dwr-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-embeddedjsp-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-gxp-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-jasperreports-plugin</artifactId>
+1 -1
View File
@@ -25,7 +25,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-javatemplates-plugin</artifactId>
@@ -46,7 +46,7 @@ import java.util.Stack;
public abstract class AbstractTest extends TestCase {
private Map<String, String> scriptingAttrs = new HashMap<String, String>();
private Map<String, String> commonAttrs = new HashMap<String, String>();
private Map<String, Object> dynamicAttrs = new HashMap<String, Object>();
private Map<String, String> dynamicAttrs = new HashMap<String, String>();
protected SimpleTheme theme;
@@ -180,7 +180,7 @@ public abstract class AbstractTest extends TestCase {
}
protected void assertDynamicAttrs(String str) {
for (Map.Entry<String, Object> entry : dynamicAttrs.entrySet()) {
for (Map.Entry<String, String> entry : dynamicAttrs.entrySet()) {
String substr = entry.getKey() + "=\"" + entry.getValue() + "\"";
assertTrue("String [" + substr + "] was not found in [" + str + "]", str.indexOf(substr) >= 0);
}
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-jfreechart-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-json-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-junit-plugin</artifactId>
@@ -165,6 +165,8 @@ public abstract class StrutsJUnit4TestCase<T> extends XWorkJUnit4TestCase {
ServletActionContext.setRequest(request);
ServletActionContext.setResponse(response);
ServletActionContext.getContext().put(ServletActionContext.ACTION_MAPPING, mapping);
return proxy;
}
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-osgi-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-oval-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-pell-multipart-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-plexus-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-plugins</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-portlet-tiles-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-portlet-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-rest-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-sitegraph-plugin</artifactId>
+1 -1
View File
@@ -24,7 +24,7 @@
<parent>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId>
<version>2.5.25</version>
<version>2.5.27</version>
</parent>
<artifactId>struts2-sitemesh-plugin</artifactId>

Some files were not shown because too many files have changed in this diff Show More