I have two controls in a Form. Both of them are drop-down. One has multiple select enabled.
I want to validate such that if User chooses something in "prerequisiteVO.prerequisiteCourseId" drop-down then he must also choose from drop-down "prerequisiteRole". However since "prerequisiteRole" is a multiple select and is saved as an array of int , what should I say in my "test" condition. <var-value> ((prerequisiteVO.prerequisiteCourseId == 0) or (prerequisiteRole.length > 0)) </var-value> "prerequisiteRole.length" which I am using doesn't work. My prerequisiteRole drop-down is like this 'choose Role' Value = 0 'Role-1' Value = 1 'Role-2' Value = 2 I want to say that aleast one value greater than 1 has been selected. I cannot say prerequisiteRole > 0 or *test* > 0 as it is not an int but an array of int. My validation looks like the following <field property="prerequisiteRole" depends="validwhen"> <msg name="validwhen" key="errors.validwhen.prereq.role"/> <var> <var-name>test</var-name> <var-value>((prerequisiteVO.prerequisiteCourseId == 0) or (prerequisiteRole.length > 0))</var-value> </var> </field> Thanks. Chetan