You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Apache Wiki <wi...@apache.org> on 2005/08/03 14:26:22 UTC

[Jakarta-tapestry Wiki] Update of "CheckingForRequiredValidator" by ScottWalter

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jakarta-tapestry Wiki" for change notification.

The following page has been changed by ScottWalter:
http://wiki.apache.org/jakarta-tapestry/CheckingForRequiredValidator

------------------------------------------------------------------------------
  However, if you are using the new {{{Validation}}} model of Tapestry 4.0 you will want to do this
  {{{
  public void writeSuffix(IMarkupWriter writer, IRequestCycle cycle, IFormComponent component, IValidator validator) {
+                         boolean required = false;
+ 			if(component.getBinding("validators") instanceof ExpressionBinding) {
+ 				ExpressionBinding expressionBinding = (ExpressionBinding) component.getBinding("validators");
+ 				org.apache.tapestry.form.validator.BaseValidator singleValidator = (org.apache.tapestry.form.validator.BaseValidator)expressionBinding.getObject();
+ 	                        if(singleValidator instanceof Required) {
+ 	            	          requiredField = true;
+ 	                        }								
+ 			} else {
- 		ValidatorsBinding vb = (ValidatorsBinding) component.getBinding("validators");
+ 				ValidatorsBinding vb = (ValidatorsBinding) component.getBinding("validators");
- 	        Collection collection = (Collection) vb.getObject();
+ 		                Collection collection = (Collection) vb.getObject();
- 	        for(Iterator it = collection.iterator();it.hasNext();){
+ 		                for(Iterator it = collection.iterator();it.hasNext();){
- 	            Validator validatorObject = (Validator) it.next();
+ 		                    Validator validatorObject = (Validator) it.next();
- 	            if(validatorObject instanceof Required) {
+ 		                    if(validatorObject instanceof Required) {
+ 		            	      requiredField = true;
+ 		                    }
+ 		               }			
+ 			}  
- 			  writer.printRaw("&nbsp");
- 			  writer.begin("span");
- 			  writer.attribute("class", "required-marker");
- 			  writer.beginEmpty("img");
- 			  writer.attribute("src","images/required.jpg");
- 			  writer.attribute("alt","required field");
- 			  writer.attribute("align","middle");
- 			  writer.end();
  
-                           break;
- 	            }
- 	        }
- }
- 
+ 		if(requiredField) {
+ 			writer.printRaw("&nbsp");
+ 			writer.begin("span");
+ 			writer.attribute("class", "required-marker");
+ 			writer.beginEmpty("img");
+ 			writer.attribute("src","images/required.jpg");
+ 			writer.attribute("alt","required field");
+ 			writer.attribute("align","middle");
+ 			writer.end();
+ 		}
+ 		
+ 		if(isInError()) {
+ 			writer.printRaw("&nbsp");
+ 			writer.beginEmpty("img");
+ 			writer.attribute("align","middle");
+ 			writer.attribute("src","images/warning_icon.gif");
+ 		}
  }}}
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org