WW-3929 adds new errorPosition attribute

git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1423607 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Lukasz Lenart
2012-12-18 19:53:12 +00:00
parent 6368033118
commit fdc6b27e68
47 changed files with 482 additions and 10 deletions
@@ -51,7 +51,7 @@ import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
/**
* UIBean is the standard superclass of all Struts UI componentns.
* UIBean is the standard superclass of all Struts UI components.
* It defines common Struts and html properties all UI components should present for usage.
*
* <!-- START SNIPPET: templateRelatedAttributes -->
@@ -156,6 +156,12 @@ import java.util.concurrent.ConcurrentHashMap;
* <td>xhtml</td>
* <td>String</td>
* <td>define required label position of form element (left/right), default to right</td>
* </tr>
* <tr>
* <td>errorPosition</td>
* <td>xhtml</td>
* <td>String</td>
* <td>define error position of form element (top|bottom), default to top</td>
* </tr>
* <tr>
* <td>name</td>
@@ -454,6 +460,7 @@ public abstract class UIBean extends Component {
protected String labelPosition;
protected String labelSeparator;
protected String requiredposition;
protected String errorPosition;
protected String name;
protected String required;
protected String tabindex;
@@ -666,6 +673,10 @@ public abstract class UIBean extends Component {
addParameter("requiredposition", findString(requiredposition));
}
if (errorPosition != null) {
addParameter("errorposition", findString(errorPosition));
}
if (required != null) {
addParameter("required", findValue(required, Boolean.class));
}
@@ -1070,6 +1081,11 @@ public abstract class UIBean extends Component {
this.requiredposition = requiredposition;
}
@StrutsTagAttribute(description="Define error position of form element (top|bottom)")
public void setErrorPosition(String errorPosition) {
this.errorPosition = errorPosition;
}
@StrutsTagAttribute(description="The name to set for element")
public void setName(String name) {
this.name = name;
@@ -1245,4 +1261,4 @@ public abstract class UIBean extends Component {
return standardAttributes;
}
}
}
@@ -46,6 +46,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
protected String labelSeparator;
protected String labelPosition;
protected String requiredposition;
protected String errorPosition;
protected String name;
protected String required;
protected String tabindex;
@@ -97,6 +98,7 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
uiBean.setLabelSeparator(labelSeparator);
uiBean.setLabelposition(labelPosition);
uiBean.setRequiredposition(requiredposition);
uiBean.setErrorPosition(errorPosition);
uiBean.setName(name);
uiBean.setRequired(required);
uiBean.setTabindex(tabindex);
@@ -171,6 +173,10 @@ public abstract class AbstractUITag extends ComponentTagSupport implements Dynam
this.requiredposition = requiredPosition;
}
public void setErrorPosition(String errorPosition) {
this.errorPosition = errorPosition;
}
public void setName(String name) {
this.name = name;
}
@@ -27,4 +27,20 @@ ${parameters.after?if_exists}<#t/>
<#else>
</span> <#rt/>
</#if>
</div>
<#if parameters.errorposition?default("top") == 'bottom'>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#if hasFieldErrors>
<div <#rt/><#if parameters.id??>id="wwerr_${parameters.id}"<#rt/></#if> class="wwerr">
<#list fieldErrors[parameters.name] as error>
<div<#rt/>
<#if parameters.id??>
errorFor="${parameters.id}"<#rt/>
</#if>
class="errorMessage">
${error?html}
</div><#t/>
</#list>
</div><#t/>
</#if>
</#if>
</div>
@@ -27,6 +27,7 @@
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<div <#rt/><#if parameters.id??>id="wwgrp_${parameters.id}"<#rt/></#if> class="wwgrp">
<#if parameters.errorposition?default("top") == 'top'>
<#if hasFieldErrors>
<div <#rt/><#if parameters.id??>id="wwerr_${parameters.id}"<#rt/></#if> class="wwerr">
<#list fieldErrors[parameters.name] as error>
@@ -40,6 +41,7 @@
</#list>
</div><#t/>
</#if>
</#if>
<#if parameters.label??>
<#if parameters.labelposition?default("top") == 'top'>
@@ -23,3 +23,16 @@
${parameters.after?if_exists}<#t/>
</td><#lt/>
</tr>
<#if parameters.errorposition?default("top") == 'bottom'>
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<tr errorFor="${parameters.id}">
<td align="center" valign="top" colspan="2"><#rt/>
<span class="errorMessage">${error?html}</span><#t/>
</td><#lt/>
</tr>
</#list>
</#if>
</#if>
@@ -25,19 +25,17 @@
This will be done if ActionSupport is used.
-->
<#assign hasFieldErrors = parameters.name?? && fieldErrors?? && fieldErrors[parameters.name]??/>
<#if parameters.errorposition?default("top") == 'top'>
<#if hasFieldErrors>
<#list fieldErrors[parameters.name] as error>
<tr errorFor="${parameters.id}">
<#if parameters.labelposition?default("") == 'top'>
<td align="left" valign="top" colspan="2"><#rt/>
<#else>
<td align="center" valign="top" colspan="2"><#rt/>
</#if>
<span class="errorMessage">${error?html}</span><#t/>
</td><#lt/>
</tr>
</#list>
</#if>
</#if>
<#--
if the label position is top,
then give the label it's own row in the table
+8
View File
@@ -105,6 +105,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">Whether to encode parameters</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">escapeAmp</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">escape</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">escape</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -113,6 +113,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Comma delimmited list of topics that will published after the request(if the request fails)</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">errorText</td>
<td align="left" valign="top">false</td>
@@ -153,6 +153,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Comma delimmited list of topics that will published after the request(if the request fails)</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">forceValidOption</td>
<td align="left" valign="top">false</td>
@@ -121,6 +121,14 @@ Please do not edit it directly.
<td align="left" valign="top">Date</td>
<td align="left" valign="top">Last available date in the calendar set</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">formatLength</td>
<td align="left" valign="top">false</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Comma delimmited list of topics that will published after the request(if the request fails)</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">errorText</td>
<td align="left" valign="top">false</td>
@@ -121,6 +121,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Comma delimmited list of topics that will published after the request(if the request fails)</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">errorText</td>
<td align="left" valign="top">false</td>
@@ -121,6 +121,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">If doLayout is false, the tab container's height equals the height of the currently selected tab</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top"><strong>true</strong></td>
@@ -89,6 +89,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -113,6 +113,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Comma delimmited list of topics that will published after the request(if the request fails).Only valid if 'href' is set</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">expandIconSrcMinus</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">fieldValue</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -89,6 +89,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Decide if an empty option is to be inserted. Default false.</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">headerKey</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -345,6 +345,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">Decides of an empty option is to be inserted in the second list</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">formName</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">escape</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -89,6 +89,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -105,6 +105,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">HTML form enctype attribute</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">focusElement</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -129,6 +129,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">the label used for the down button</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">headerKey</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">for</td>
<td align="left" valign="top">false</td>
@@ -481,6 +481,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">Decides of an empty option is to be inserted in the second list</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">formName</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -97,6 +97,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -89,6 +89,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">Whether or not to add an empty (--) option after the header option</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">headerKey</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -97,6 +97,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -89,6 +89,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
+8
View File
@@ -81,6 +81,14 @@ Please do not edit it directly.
<td align="left" valign="top">String</td>
<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">id</td>
<td align="left" valign="top">false</td>
@@ -113,6 +113,14 @@ Please do not edit it directly.
<td align="left" valign="top">Boolean</td>
<td align="left" valign="top">Whether or not to add an empty (--) option after the header option</td>
</tr>
<tr>
<td align="left" valign="top">errorPosition</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 error position of form element (top|bottom)</td>
</tr>
<tr>
<td align="left" valign="top">headerKey</td>
<td align="left" valign="top">false</td>
@@ -42,8 +42,8 @@ public class TextfieldTest extends AbstractUITagTest {
* @return A Map of PropertyHolders values bound to {@link org.apache.struts2.views.jsp.AbstractUITagTest.PropertyHolder#getName()}
* as key.
*/
protected Map initializedGenericTagTestProperties() {
Map result = super.initializedGenericTagTestProperties();
protected Map<String, PropertyHolder> initializedGenericTagTestProperties() {
Map<String, PropertyHolder> result = super.initializedGenericTagTestProperties();
new PropertyHolder("maxlength", "10").addToMap(result);
new PropertyHolder("readonly", "true", "readonly=\"readonly\"").addToMap(result);
new PropertyHolder("size", "12").addToMap(result);
@@ -120,7 +120,7 @@ public class TextfieldTest extends AbstractUITagTest {
testAction.setFoo("bar");
TextFieldModel model = new TextFieldModel(stack, request, response);
HashMap params = new HashMap();
Map<String, String> params = new HashMap<String, String>();
params.put("name", "myname");
params.put("value", "%{foo}");
params.put("size", "10");
@@ -198,4 +198,87 @@ public class TextfieldTest extends AbstractUITagTest {
verify(TextFieldTag.class.getResource("Textfield-7.txt"));
}
public void testErrorPositionBottom() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setFoo("bar");
TextFieldTag tag = new TextFieldTag();
tag.setPageContext(pageContext);
tag.setId("myId");
tag.setLabel("mylabel");
tag.setName("foo");
tag.setValue("bar");
tag.setTitle("mytitle");
tag.setErrorPosition("bottom");
testAction.addFieldError("foo", "bar error message");
tag.doStartTag();
tag.doEndTag();
verify(TextFieldTag.class.getResource("Textfield-8.txt"));
}
public void testErrorPositionTop() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setFoo("bar");
TextFieldTag tag = new TextFieldTag();
tag.setPageContext(pageContext);
tag.setId("myId");
tag.setLabel("mylabel");
tag.setName("foo");
tag.setValue("bar");
tag.setTitle("mytitle");
tag.setErrorPosition("top");
testAction.addFieldError("foo", "bar error message");
tag.doStartTag();
tag.doEndTag();
verify(TextFieldTag.class.getResource("Textfield-9.txt"));
}
public void testErrorPositionBottomCssXhtmlTheme() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setFoo("bar");
TextFieldTag tag = new TextFieldTag();
tag.setPageContext(pageContext);
tag.setId("myId");
tag.setLabel("mylabel");
tag.setName("foo");
tag.setValue("bar");
tag.setTitle("mytitle");
tag.setErrorPosition("bottom");
tag.setTheme("css_xhtml");
testAction.addFieldError("foo", "bar error message");
tag.doStartTag();
tag.doEndTag();
verify(TextFieldTag.class.getResource("Textfield-10.txt"));
}
public void testErrorPositionTopCssXhtmlTheme() throws Exception {
TestAction testAction = (TestAction) action;
testAction.setFoo("bar");
TextFieldTag tag = new TextFieldTag();
tag.setPageContext(pageContext);
tag.setId("myId");
tag.setLabel("mylabel");
tag.setName("foo");
tag.setValue("bar");
tag.setTitle("mytitle");
tag.setErrorPosition("top");
tag.setTheme("css_xhtml");
testAction.addFieldError("foo", "bar error message");
tag.doStartTag();
tag.doEndTag();
verify(TextFieldTag.class.getResource("Textfield-11.txt"));
}
}
@@ -0,0 +1,12 @@
<div id="wwgrp_myId" class="wwgrp">
<div id="wwlbl_myId" class="wwlbl">
<label for="myId" class="errorLabel">mylabel:</label>
</div>
<br/>
<div id="wwctrl_myId" class="wwctrl">
<input type="text" name="foo" value="bar" id="myId" title="mytitle"/>
</div>
<div id="wwerr_myId" class="wwerr">
<div errorFor="myId" class="errorMessage">barerrormessage</div>
</div>
</div>
@@ -0,0 +1,12 @@
<div id="wwgrp_myId" class="wwgrp">
<div id="wwerr_myId" class="wwerr">
<div errorFor="myId" class="errorMessage">barerrormessage</div>
</div>
<div id="wwlbl_myId" class="wwlbl">
<label for="myId" class="errorLabel">mylabel:</label>
</div>
<br/>
<div id="wwctrl_myId" class="wwctrl">
<input type="text" name="foo" value="bar" id="myId" title="mytitle"/>
</div>
</div>
@@ -0,0 +1,13 @@
<tr>
<td class="tdLabel">
<label for="myId" class="errorLabel">mylabel:</label>
</td>
<td>
<input type="text" name="foo" value="bar" id="myId" title="mytitle"/>
</td>
</tr>
<tr errorFor="myId">
<td align="center" valign="top" colspan="2">
<span class="errorMessage">barerrormessage</span>
</td>
</tr>
@@ -0,0 +1,13 @@
<tr errorFor="myId">
<td align="center" valign="top" colspan="2">
<span class="errorMessage">barerrormessage</span>
</td>
</tr>
<tr>
<td class="tdLabel">
<labelfor="myId" class="errorLabel">mylabel:</label>
</td>
<td>
<input type="text" name="foo" value="bar" id="myId" title="mytitle"/>
</td>
</tr>