The optional validation framework is ancient at this point. It was a short-lived, flawed project. I don't recommend using it as is, but maybe you can use pieces of the source code as examples to accomplish some of what you need.
Your best bet is to either reuse validateCompareTo (CompareToValidator) from Tomahawk or write your own validator using that Tomahawk component as a model. You could submit it back as a requiredIf validator to MyFaces. This is the approach I would take. Here's a generic thread on conditional required fields -- one of the few I could find on the subject -- and it also talks about using the compare-to strategy above. http://forums.sun.com/thread.jspa?trange=15&threadID=500322&forumID=427&tstart=0 I see there's also a @RequiredIf annotation mentioned in the ExtVal docs. I don't know if it's also available as a standard non-annotated validator, though. One other remote possibility is to see if a subForm can be configured to be able to do what you need. On Tue, Nov 17, 2009 at 1:51 PM, laredotornado <[email protected]> wrote: > > So you are the author of the optional validation framework? That is > excellent. I was reading the page but am still missing the gist of the > example. How would you say, "If element A contains this value, then apply > this validatino rule to element B?" > > Thanks, - Dave > > > Mike Kienenberger wrote: >> >> required will have to be non-true. I don't know if there's an el >> expression that will work in your case, so you might just have to >> leave it false. >> >> The following validator works against multiple components. >> >> http://myfaces.apache.org/sandbox/validateCompareTo.html >> >> You can either use it as a template for creating your own validator, >> or you might be able to use the comparator attribute on it to >> accomplish what you need. (Force it to compare against a constant >> value of true or false instead of the inputText value). Still not >> sure how that'd interact with <f:validateLongRange> >> >> You might also be able to use pieces of the OptionalValidationFramework. >> >> http://wiki.apache.org/myfaces/OptionalValidationFramework >> >> >> On Tue, Nov 17, 2009 at 12:57 PM, laredotornado <[email protected]> >> wrote: >>> >>> Hi, >>> >>> I'm using MyFaces 1.2.4, Tomahawk 1.1.9. How do I tell JSF that I only >>> want >>> to apply a validator to a text field if a checkbox on the page is >>> checked? >>> Right now I have this text field ... >>> >>> <h:inputText id="domeTourNumAdults" value="#{domeTour.numAdults}" >>> required="true" >>> size="60" >>> maxlength="60" >>> styleClass="textFields >>> numAdultsField"> >>> <f:validateLongRange minimum="0"/> >>> </h:inputText> >>> >>> but if a certain checkbox is not checked, I don't care if this field is >>> left >>> blank. Your thoughts are appreciated, - Dave >>> -- >>> View this message in context: >>> http://old.nabble.com/Only-want-to-validate-a-text-field-if-checkbox-is-checked-...-how--tp26394554p26394554.html >>> Sent from the MyFaces - Users mailing list archive at Nabble.com. >>> >>> >> >> > > -- > View this message in context: > http://old.nabble.com/Only-want-to-validate-a-text-field-if-checkbox-is-checked-...-how--tp26394554p26395396.html > Sent from the MyFaces - Users mailing list archive at Nabble.com. > >

