You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by bo...@apache.org on 2006/10/07 10:47:49 UTC
svn commit: r453867 - in /myfaces/tobago/trunk:
core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java
theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java
Author: bommel
Date: Sat Oct 7 01:47:48 2006
New Revision: 453867
URL: http://svn.apache.org/viewvc?view=rev&rev=453867
Log:
(TOBAGO-150) InRenderer should set maxlengh of input element if UIComponents has a LengthValidator with a maximum
Modified:
myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java
myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java
Modified: myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java?view=diff&rev=453867&r1=453866&r2=453867
==============================================================================
--- myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java (original)
+++ myfaces/tobago/trunk/core/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlAttributes.java Sat Oct 7 01:47:48 2006
@@ -70,5 +70,6 @@
String ONKEYPRESS = "onkeypress";
String ONKEYUP = "onkeyup";
String CLASS = "class";
+ String MAXLENGTH = "maxlength";
}
Modified: myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java?view=diff&rev=453867&r1=453866&r2=453867
==============================================================================
--- myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java (original)
+++ myfaces/tobago/trunk/theme/scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/InRenderer.java Sat Oct 7 01:47:48 2006
@@ -44,8 +44,11 @@
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.component.UIInput;
+import javax.faces.component.EditableValueHolder;
import javax.faces.context.FacesContext;
import javax.faces.el.MethodBinding;
+import javax.faces.validator.Validator;
+import javax.faces.validator.LengthValidator;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
@@ -100,6 +103,19 @@
}
if (title != null) {
writer.writeAttribute(HtmlAttributes.TITLE, title, null);
+ }
+ int maxLength = 0;
+ if (component instanceof EditableValueHolder) {
+ EditableValueHolder editableValueHolder = (EditableValueHolder) component;
+ for (Validator validator : editableValueHolder.getValidators()) {
+ if (validator instanceof LengthValidator) {
+ LengthValidator lengthValidator = (LengthValidator) validator;
+ maxLength = lengthValidator.getMaximum();
+ }
+ }
+ }
+ if (maxLength > 0) {
+ writer.writeAttribute(HtmlAttributes.MAXLENGTH, Integer.toString(maxLength), null);
}
writer.writeAttribute(HtmlAttributes.READONLY,
ComponentUtil.getBooleanAttribute(component, ATTR_READONLY));