If I understand your question correctly, you can just check for valid combinations of incoming data in your action handling the form. If you don't find a valid combination, create an ActionErrors object, add an ActionError to that ActionErrors collection, save the errors with the Action.saveErrors() method, then return the appropriate action forward (back to the same form, for example). Check out the struts-example web app that comes with Struts and you'll see how to do that fairly easily.
Alternatively, you can add the validation to your form class, which is probably really the appropriate way to do it. But I don't know enough about how to do it to tell you how to proceed. Again though, if you look in the struts-example, there's code that shows how to do this for a couple of different forms. I had attributes that had a number of weird complex validation rules that made it difficult to do that in a straightforward way, so I just did it in the form handler. Learning the XML validation rules set up is the next task
Rick Herrick<br />C#/.NET, Java, Ruby, Agile as hell