I have tried out the suggestion in the post (*) http://article.gmane.org/gmane.comp.java.tapestry.user/38761/match=required+validator
to implement client side 'required' validation on a Checkbox compponent (in Tapestry 4.0.2). In (*), a validator with a custom javascript to validate a required checkbox was given. When I test it, the javascript does the validation never get rendered. After some debugging, I noticed that in the method renderComponent of Checkbox.java, it does not call getValidatableFieldSupport().renderContributions(this, writer, cycle); It is in the method getValidatableFieldSupport().renderContributions() that the javascript that does the validation is rendered. After adding getValidatableFieldSupport().renderContributions(this, writer, cycle); into the method renderComponent of Checkbox.java, the client side validation works. Also if I add renderDelegatePrefix(writer, cycle); and renderDelegateSuffix(writer, cycle); to the method renderComponent of Checkbox.java. the custom required validator also works when the validation is done on the server. Here is the modified renderComponent method of Checkbox.java : protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle) { // New renderDelegatePrefix(writer, cycle); writer.beginEmpty("input"); writer.attribute("type", "checkbox"); writer.attribute("name", getName()); if (isDisabled()) writer.attribute("disabled", "disabled"); if (getValue()) writer.attribute("checked", "checked"); renderIdAttribute(writer, cycle); // New getValidatableFieldSupport().renderContributions(this, writer, cycle); renderInformalParameters(writer, cycle); writer.closeTag(); // New renderDelegateSuffix(writer, cycle); } Components like TextField and TextArea have renderDelegatePrefix(writer, cycle); getValidatableFieldSupport().renderContributions(this, writer, cycle); renderDelegateSuffix(writer, cycle) in their renderComponent methods. Shouldn't Checkbox be the same ? Shing Home page : http://uk.geocities.com/matmsh/index.html ___________________________________________________________ The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]