You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by ni...@apache.org on 2005/10/05 03:43:43 UTC

svn commit: r294968 [2/2] - in /struts/apps/trunk/examples/src: java/org/apache/struts/webapp/validator/ webapp/WEB-INF/ webapp/WEB-INF/validator/ webapp/validator/

Modified: struts/apps/trunk/examples/src/webapp/WEB-INF/validator/validation.xml
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/WEB-INF/validator/validation.xml?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/WEB-INF/validator/validation.xml (original)
+++ struts/apps/trunk/examples/src/webapp/WEB-INF/validator/validation.xml Tue Oct  4 18:43:15 2005
@@ -16,10 +16,12 @@
 
   <!-- ========================= Default Formset ========================= -->
   <formset>
+
     <constant>
       <constant-name>zip</constant-name>
       <constant-value>^\d{5}(-\d{4})?$</constant-value>
     </constant>
+
     <form name="registrationForm">
       <field property="firstName" depends="required,mask,minlength">
         <arg key="registrationForm.firstname.displayname" position="0"/>
@@ -81,6 +83,7 @@
         <arg key="registrationForm.email.displayname" />
       </field>
     </form>
+
     <form name="multiRegistrationForm">
       <field property="firstName" depends="required,mask" page="1">
         <arg key="registrationForm.firstname.displayname" />
@@ -132,372 +135,13 @@
         <arg key="registrationForm.email.displayname" />
       </field>
     </form>
-    <form name="typeForm">
-      <field property="name" depends="required,byte">
-        <arg key="typeForm.name.displayname" />
-      </field>
-      <field property="byte" depends="required,byte">
-        <arg key="typeForm.byte.displayname" />
-      </field>
-      <field property="short" depends="required,short">
-        <arg key="typeForm.short.displayname" />
-      </field>
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>10</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>20</var-value>
-        </var>
-      </field>
-      <field property="long" depends="required,long">
-        <arg key="typeForm.long.displayname" />
-      </field>
-      <field property="float" depends="required,float">
-        <arg key="typeForm.float.displayname" />
-      </field>
-      <field property="floatRange" depends="required,float,floatRange">
-        <arg key="typeForm.floatRange.displayname" />
-        <arg name="floatRange" key="${var:min}" resource="false" position="1" />
-        <arg name="floatRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>-2.17</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>3.14</var-value>
-        </var>
-      </field>
-      <field property="double" depends="required,double">
-        <arg key="typeForm.double.displayname" />
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>MM/dd/yyyy</var-value>
-        </var>
-      </field>
-      <field property="creditCard" depends="required,creditCard">
-        <arg key="typeForm.creditCard.displayname" />
-      </field>
-      <field property="value" indexedListProperty="nameList" depends="required">
-        <arg key="typeForm.nested.name.displayname" />
-      </field>
-    </form>
-    <form name="jsTypeForm">
-      <field property="name" depends="required,byte">
-        <arg key="typeForm.name.displayname" />
-      </field>
-      <field property="byte" depends="required,byte">
-        <arg key="typeForm.byte.displayname" />
-      </field>
-      <field property="short" depends="required,short">
-        <arg key="typeForm.short.displayname" />
-      </field>
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>10</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>20</var-value>
-        </var>
-      </field>
-      <field property="float" depends="required,float">
-        <arg key="typeForm.float.displayname" />
-      </field>
-      <field property="floatRange" depends="required,float,floatRange">
-        <arg key="typeForm.floatRange.displayname" />
-        <arg name="floatRange" key="${var:min}" resource="false" position="1" />
-        <arg name="floatRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>-2.17</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>3.14</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>MM/dd/yyyy</var-value>
-        </var>
-      </field>
-      <field property="creditCard" depends="required,creditCard">
-        <arg key="typeForm.creditCard.displayname" />
-      </field>
-      <field property="satisfaction" depends="required">
-        <arg key="typeForm.option.satisfaction" />
-      </field>
-      <field property="osList" depends="required">
-        <arg key="typeForm.option.os.list" />
-      </field>
-      <field property="overallSatisfaction" depends="required">
-        <arg key="typeForm.radio.overall.satisfaction" />
-      </field>
-      <field property="wouldRecommend" depends="required">
-        <arg key="typeForm.checkbox.wouldrecommend" />
-      </field>
-      <field property="usedLanguages" depends="required">
-        <arg key="typeForm.checkbox.used.languages" />
-      </field>
-    </form>
- 
-  
-    <!-- ================== i18nForm Form   ============================ -->
-    <form name="i18nForm">
-      <field property="name" depends="required,minlength,maxlength">
-        <msg name="required"  key="msg.required"      bundle="i18nExample" />
-        <msg name="minlength" key="msg.minlength"     bundle="i18nExample" />
-        <msg name="maxlength" key="msg.maxlength"     bundle="i18nExample" />
-        <arg                  key="label.name"        bundle="i18nExample" />
-        <arg name="minlength" key="name.minlength"    bundle="i18nVariables" />
-        <arg name="maxlength" key="name.maxlength"    bundle="i18nVariables" />
-        <var resource="true" bundle="i18nVariables">
-            <var-name>minlength</var-name>
-            <var-value>name.minlength</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>maxlength</var-name>
-            <var-value>name.maxlength</var-value>
-        </var>
-      </field>
-      <field property="zip" depends="required,minlength,maxlength,validwhen">
-        <msg name="required"  key="msg.required"      bundle="i18nExample" />
-        <msg name="minlength" key="msg.zip.minlength" bundle="i18nExample" />
-        <msg name="maxlength" key="msg.zip.maxlength" bundle="i18nExample" />
-        <msg name="validwhen" key="msg.zip.validwhen" bundle="i18nExample" />
-        <arg                  key="label.zip"         bundle="i18nExample" />
-        <arg                  key="zip.minlength"     bundle="i18nVariables" />
-        <arg name="validwhen" key="zip.maxlength"     bundle="i18nVariables" />
-        <var resource="true" bundle="i18nVariables">
-            <var-name>minlength</var-name>
-            <var-value>zip.minlength</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>maxlength</var-name>
-            <var-value>zip.maxlength</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>test</var-name>
-            <var-value>zip.validwhen</var-value>
-        </var>
-      </field>
-      <field property="phone" depends="required,mask">
-        <msg name="required"  key="msg.required"      bundle="i18nExample" />
-        <msg name="mask"      key="msg.phone"         bundle="i18nExample" />
-        <arg                  key="label.phone"       bundle="i18nExample" />
-        <arg name="mask"      key="phone.display"     bundle="i18nVariables" />
-        <var resource="true" bundle="i18nVariables">
-            <var-name>mask</var-name>
-            <var-value>phone.regexp</var-value>
-        </var>
-      </field>
-      <field property="dob" depends="required,date">
-        <msg name="required"  key="msg.required"      bundle="i18nExample"/>
-        <msg name="date"      key="msg.date"          bundle="i18nExample"/>
-        <arg                  key="label.dob"         bundle="i18nExample" />
-        <arg name="date"      key="dob.display"       bundle="i18nVariables"/>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>datePattern</var-name>
-            <var-value>dob.format</var-value>
-        </var>
-      </field>
-      <field property="age" depends="required,integer,intRange">
-        <msg name="required"  key="msg.required"      bundle="i18nExample"/>
-        <msg name="integer"   key="msg.integer"       bundle="i18nExample"/>
-        <msg name="intRange"  key="msg.range"         bundle="i18nExample"/>
-        <arg                  key="label.age"         bundle="i18nExample" />
-        <arg name="intRange"  key="age.minimum"       bundle="i18nVariables"/>
-        <arg name="intRange"  key="age.maximum"       bundle="i18nVariables"/>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>min</var-name>
-            <var-value>age.minimum</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>max</var-name>
-            <var-value>age.maximum</var-value>
-        </var>
-      </field>
-      <field property="doe" depends="required,date">
-        <msg name="required"  key="msg.required"      bundle="i18nExample"/>
-        <msg name="date"      key="msg.date"          bundle="i18nExample"/>
-        <arg                  key="label.doe"         bundle="i18nExample" />
-        <arg name="date"      key="doe.display"       bundle="i18nVariables"/>
-        <var resource="true"  bundle="i18nVariables">
-            <var-name>datePatternStrict</var-name>
-            <var-value>doe.format</var-value>
-        </var>
-      </field>
-
-      <field property="emplno" depends="required,long,longRange">
-        <msg name="required"  key="msg.required"      bundle="i18nExample"/>
-        <msg name="long"      key="msg.long"          bundle="i18nExample"/>
-        <msg name="longRange" key="msg.range"         bundle="i18nExample"/>
-        <arg                  key="label.emplno"      bundle="i18nExample" />
-        <arg name="longRange" key="emplno.minimum"    bundle="i18nVariables"/>
-        <arg name="longRange" key="emplno.maximum"    bundle="i18nVariables"/>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>min</var-name>
-            <var-value>emplno.minimum</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>max</var-name>
-            <var-value>emplno.maximum</var-value>
-        </var>
-      </field>
-
-      <field property="salary" depends="required,long,doubleRange">
-        <msg name="required"    key="msg.required"    bundle="i18nExample"/>
-        <msg name="long"        key="msg.long"        bundle="i18nExample"/>
-        <msg name="doubleRange" key="msg.range"       bundle="i18nExample"/>
-        <arg                    key="label.salary"    bundle="i18nExample" />
-        <arg name="doubleRange" key="salary.minimum"  bundle="i18nVariables"/>
-        <arg name="doubleRange" key="salary.maximum"  bundle="i18nVariables"/>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>min</var-name>
-            <var-value>salary.minimum</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>max</var-name>
-            <var-value>salary.maximum</var-value>
-        </var>
-      </field>
-
-      <field property="hours" depends="required,float,floatRange">
-        <msg name="required"   key="msg.required"    bundle="i18nExample"/>
-        <msg name="float"      key="msg.float"       bundle="i18nExample"/>
-        <msg name="floatRange" key="msg.range"       bundle="i18nExample"/>
-        <arg                   key="label.hours"     bundle="i18nExample" />
-        <arg name="floatRange" key="hours.minimum"   bundle="i18nVariables"/>
-        <arg name="floatRange" key="hours.maximum"   bundle="i18nVariables"/>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>min</var-name>
-            <var-value>hours.minimum</var-value>
-        </var>
-        <var resource="true" bundle="i18nVariables">
-            <var-name>max</var-name>
-            <var-value>hours.maximum</var-value>
-        </var>
-      </field>
-
-    </form>
-
-    <!-- *********** Bundles Examples Form *********** -->
-    <form name="bundlesForm">
-      <field property="name" depends="required">
-        <msg name="required" key="You have forgotten to enter the name." resource="false" />
-      </field>
-      <field property="address" depends="required">
-        <arg key="bundlesForm.error.address" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="phone" depends="required">
-        <arg key="bundlesForm.error.phone"         bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="dob" depends="required">
-        <arg key="bundlesForm.error.dob"           bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-      </field>
-      <field property="age" depends="required,integer,intRange">
-        <arg key="bundlesForm.error.age" bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-        <msg name="integer" key="bundlesForm.errors.integer" bundle="other"/>
-        <msg name="intRange" key="Age must be betweem 18 and 65 years." resource="false" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>18</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>65</var-value>
-        </var>
-      </field>
-    </form>
- 
-    <!-- *********** validwhen Examples Form *********** -->
-    <form name="validWhenForm">
-
-      <!-- validwhen: simple validation -->
-      <field property="lastName" depends="validwhen">
-        <arg key="validWhenForm.lastName" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>((firstName == null) or (*this* != null))</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: both fields validation -->
-      <field property="fieldA" depends="validwhen">
-        <msg name="validwhen" key="validWhenForm.error.both" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( ((fieldB == null) and (*this* == null)) or ((fieldB != null) and (*this* != null)) )</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: numeric compare validation -->
-      <field property="max" depends="required,integer,validwhen">
-        <arg key="validWhenForm.max" />
-        <msg name="validwhen" key="validWhenForm.error.numeric" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>(*this* &gt; min)</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: address validation -->
-      <field property="address1" depends="validwhen">
-        <arg key="validWhenForm.address1" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address2 == null) and
-                     ( (city == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="city" depends="validwhen">
-        <arg key="validWhenForm.city" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="zip" depends="validwhen">
-        <arg key="validWhenForm.zip" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (city == null) )))</var-value>
-        </var>
-      </field>
-    </form>
+  </formset>
 
   <!-- ========================= fr Formset ========================= -->
-  </formset>
   <formset language="fr">
+
     <form name="registrationForm">
+
       <field property="lastName" depends="required,mask">
         <msg name="mask" key="registrationForm.lastname.maskmsg" />
         <arg key="registrationForm.lastname.displayname" />
@@ -506,21 +150,19 @@
           <var-value>^\w+$</var-value>
         </var>
       </field>
+
       <field property="cityStateZip.stateProv">
         <arg  key="registrationForm.stateprov.displayname" />
       </field>
+
       <field property="phone">
         <arg key="registrationForm.phone.displayname" />
       </field>
+
     </form>
+
     <form name="multiRegistrationForm">
-      <field property="firstName" depends="required,mask" page="1">
-        <arg key="registrationForm.firstname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-      </field>
+
       <field property="lastName" depends="required,mask" page="1">
         <msg name="mask" key="registrationForm.lastname.maskmsg" />
         <arg key="registrationForm.lastname.displayname" />
@@ -529,230 +171,35 @@
           <var-value>^\w+$</var-value>
         </var>
       </field>
-      <field property="addr" depends="required" page="1">
-        <arg key="registrationForm.addr.displayname" />
-      </field>
-      <field property="cityStateZip.city" depends="required,mask" page="1">
-        <arg key="registrationForm.city.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
+
       <field property="cityStateZip.stateProv" page="2">
         <arg key="registrationForm.stateprov.displayname" />
       </field>
-      <field property="cityStateZip.zipPostal[1]" depends="required,mask" page="2">
-        <arg key="registrationForm.zippostal.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>${zip}</var-value>
-        </var>
-      </field>
+
       <field property="phone" page="2">
         <arg key="registrationForm.phone.displayname" />
       </field>
-      <field property="email" depends="required,email" page="2">
-        <arg key="registrationForm.email.displayname" />
-      </field>
-    </form>
-    <form name="typeForm">
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>50</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>60</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>dd.MM.yyyy</var-value>
-        </var>
-      </field>
-    </form>
-    <form name="jsTypeForm">
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>100</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>200</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>dd.MM.yyyy</var-value>
-        </var>
-      </field>
-    </form>
- 
-    <!-- *********** Bundles Examples Form *********** -->
-    <form name="bundlesForm">
-      <field property="name" depends="required">
-        <msg name="required" key="You have forgotten to enter the name." resource="false" />
-      </field>
-      <field property="address" depends="required">
-        <arg key="bundlesForm.error.address" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="phone" depends="required">
-        <arg key="bundlesForm.error.phone"         bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="dob" depends="required">
-        <arg key="bundlesForm.error.dob"           bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-      </field>
-      <field property="age" depends="required,integer,intRange">
-        <arg key="bundlesForm.error.age" bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-        <msg name="integer" key="bundlesForm.errors.integer" bundle="other"/>
-        <msg name="intRange" key="Age must be betweem 18 and 65 years." resource="false" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>18</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>65</var-value>
-        </var>
-      </field>
-    </form>
-
-    <!-- *********** validwhen Examples Form *********** -->
-    <form name="validWhenForm">
-
-      <!-- validwhen: simple validation -->
-      <field property="lastName" depends="validwhen">
-        <arg key="validWhenForm.lastName" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>((firstName == null) or (*this* != null))</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: both fields validation -->
-      <field property="fieldA" depends="validwhen">
-        <msg name="validwhen" key="validWhenForm.error.both" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( ((fieldB == null) and (*this* == null)) or ((fieldB != null) and (*this* != null)) )</var-value>
-        </var>
-      </field>
 
-      <!-- validwhen: numeric compare validation -->
-      <field property="max" depends="required,integer,validwhen">
-        <arg key="validWhenForm.max" />
-        <msg name="validwhen" key="validWhenForm.error.numeric" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>(*this* &gt; min)</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: address validation -->
-      <field property="address1" depends="validwhen">
-        <arg key="validWhenForm.address1" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address2 == null) and
-                     ( (city == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="city" depends="validwhen">
-        <arg key="validWhenForm.city" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="zip" depends="validwhen">
-        <arg key="validWhenForm.zip" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (city == null) )))</var-value>
-        </var>
-      </field>
     </form>
 
   </formset>
 
   <!-- ========================= ja Formset ========================= -->
   <formset language="ja">
+
     <constant>
       <constant-name>zip</constant-name>
       <constant-value>^\d{3}-\d{4}$</constant-value>
     </constant>
+
     <constant>
       <constant-name>phone</constant-name>
       <constant-value>^[0][1-9]((\d{2,3}-?)|(-\d{2,3})|(\d-\d{1,2})|(\d{2}-\d))\d-\d{4}$</constant-value>
     </constant>
+
     <form name="registrationForm">
-      <field property="firstName" depends="required,mask,minlength">
-        <arg key="registrationForm.firstname.displayname" />
-        <arg name="minlength" key="${var:minlength}" resource="false" position="1" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-        <var>
-          <var-name>minlength</var-name>
-          <var-value>5</var-value>
-        </var>
-      </field>
-      <field property="lastName" depends="required,mask,maxlength">
-        <msg name="mask" key="registrationForm.lastname.maskmsg" />
-        <arg key="registrationForm.lastname.displayname" />
-        <arg name="maxlength" key="${var:maxlength}" resource="false" position="1" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-        <var>
-          <var-name>maxlength</var-name>
-          <var-value>10</var-value>
-        </var>
-      </field>
-      <field property="addr" depends="required">
-        <arg key="registrationForm.addr.displayname" />
-      </field>
-      <field property="cityStateZip.city" depends="required,mask">
-        <arg key="registrationForm.city.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
-      <field property="cityStateZip.stateProv" depends="required,mask">
-        <arg key="registrationForm.stateprov.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
+
+      <!-- ${zip} constant is different in this locale -->
       <field property="cityStateZip.zipPostal[1]" depends="required,mask">
         <arg key="registrationForm.zippostal.displayname" />
         <var>
@@ -760,6 +207,8 @@
           <var-value>${zip}</var-value>
         </var>
       </field>
+
+      <!-- ${phone} constant is different in this locale -->
       <field property="phone" depends="mask">
         <arg key="registrationForm.phone.displayname" />
         <var>
@@ -767,43 +216,12 @@
           <var-value>${phone}</var-value>
         </var>
       </field>
-      <field property="email" depends="required,email">
-        <arg key="registrationForm.email.displayname" />
-      </field>
+
     </form>
+
+
     <form name="multiRegistrationForm">
-      <field property="firstName" depends="required,mask" page="1">
-        <arg key="registrationForm.firstname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-      </field>
-      <field property="lastName" depends="required,mask" page="1">
-        <msg name="mask" key="registrationForm.lastname.maskmsg" />
-        <arg key="registrationForm.lastname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
-      <field property="addr" depends="required" page="1">
-        <arg key="registrationForm.addr.displayname" />
-      </field>
-      <field property="cityStateZip.city" depends="required,mask" page="1">
-        <arg key="registrationForm.city.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
-      <field property="cityStateZip.stateProv" depends="required,mask" page="2">
-        <arg key="registrationForm.stateprov.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
+
       <field property="cityStateZip.zipPostal[1]" depends="required,mask" page="2">
         <arg key="registrationForm.zippostal.displayname" />
         <var>
@@ -811,6 +229,7 @@
           <var-value>${zip}</var-value>
         </var>
       </field>
+
       <field property="phone" depends="mask" page="2">
         <arg key="registrationForm.phone.displayname" />
         <var>
@@ -818,419 +237,11 @@
           <var-value>${phone}</var-value>
         </var>
       </field>
-      <field property="email" depends="required,email" page="2">
-        <arg key="registrationForm.email.displayname" />
-      </field>
-    </form>
-    <form name="typeForm">
-      <field property="name" depends="required,byte">
-        <arg key="typeForm.name.displayname" />
-      </field>
-      <field property="byte" depends="required,byte">
-        <arg key="typeForm.byte.displayname" />
-      </field>
-      <field property="short" depends="required,short">
-        <arg key="typeForm.short.displayname" />
-      </field>
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>400</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>700</var-value>
-        </var>
-      </field>
-      <field property="long" depends="required,long">
-        <arg key="typeForm.long.displayname" />
-      </field>
-      <field property="float" depends="required,float">
-        <arg key="typeForm.float.displayname" />
-      </field>
-      <field property="floatRange" depends="required,float,floatRange">
-        <arg key="typeForm.floatRange.displayname" />
-        <arg name="floatRange" key="${var:min}" resource="false" position="1" />
-        <arg name="floatRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>-2.17</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>3.14</var-value>
-        </var>
-      </field>
-      <field property="double" depends="required,double">
-        <arg key="typeForm.double.displayname" />
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>yyyy/MM/dd</var-value>
-        </var>
-      </field>
-      <field property="creditCard" depends="required,creditCard">
-        <arg key="typeForm.creditCard.displayname" />
-      </field>
-      <field property="value" indexedListProperty="nameList" depends="required">
-        <arg key="typeForm.nested.name.displayname" />
-      </field>
-    </form>
-    <form name="jsTypeForm">
-      <field property="name" depends="required,byte">
-        <arg key="typeForm.name.displayname" />
-      </field>
-      <field property="byte" depends="required,byte">
-        <arg key="typeForm.byte.displayname" />
-      </field>
-      <field property="short" depends="required,short">
-        <arg key="typeForm.short.displayname" />
-      </field>
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>400</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>700</var-value>
-        </var>
-      </field>
-      <field property="float" depends="required,float">
-        <arg key="typeForm.float.displayname" />
-      </field>
-      <field property="floatRange" depends="required,float,floatRange">
-        <arg key="typeForm.floatRange.displayname" />
-        <arg name="floatRange" key="${var:min}" resource="false" position="1" />
-        <arg name="floatRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>-2.17</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>3.14</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>yyyy/MM/dd</var-value>
-        </var>
-      </field>
-      <field property="creditCard" depends="required,creditCard">
-        <arg key="typeForm.creditCard.displayname" />
-      </field>
-    </form>
 
-    <!-- *********** Bundles Examples Form *********** -->
-    <form name="bundlesForm">
-      <field property="name" depends="required">
-        <msg name="required" key="You have forgotten to enter the name." resource="false" />
-      </field>
-      <field property="address" depends="required">
-        <arg key="bundlesForm.error.address" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="phone" depends="required">
-        <arg key="bundlesForm.error.phone"         bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="dob" depends="required">
-        <arg key="bundlesForm.error.dob"           bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-      </field>
-      <field property="age" depends="required,integer,intRange">
-        <arg key="bundlesForm.error.age" bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-        <msg name="integer" key="bundlesForm.errors.integer" bundle="other"/>
-        <msg name="intRange" key="Age must be betweem 18 and 65 years." resource="false" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>18</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>65</var-value>
-        </var>
-      </field>
     </form>
 
-    <!-- *********** validwhen Examples Form *********** -->
-    <form name="validWhenForm">
-
-      <!-- validwhen: simple validation -->
-      <field property="lastName" depends="validwhen">
-        <arg key="validWhenForm.lastName" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>((firstName == null) or (*this* != null))</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: both fields validation -->
-      <field property="fieldA" depends="validwhen">
-        <msg name="validwhen" key="validWhenForm.error.both" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( ((fieldB == null) and (*this* == null)) or ((fieldB != null) and (*this* != null)) )</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: numeric compare validation -->
-      <field property="max" depends="required,integer,validwhen">
-        <arg key="validWhenForm.max" />
-        <msg name="validwhen" key="validWhenForm.error.numeric" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>(*this* &gt; min)</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: address validation -->
-      <field property="address1" depends="validwhen">
-        <arg key="validWhenForm.address1" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address2 == null) and
-                     ( (city == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="city" depends="validwhen">
-        <arg key="validWhenForm.city" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="zip" depends="validwhen">
-        <arg key="validWhenForm.zip" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (city == null) )))</var-value>
-        </var>
-      </field>
-    </form>
   </formset>
 
   <!-- ========================= fr-CA Formset ========================= -->
-  <formset language="fr" country="CA">
-    <form name="registrationForm">
-      <field property="lastName" depends="required,mask">
-        <msg name="mask" key="registrationForm.lastname.maskmsg" />
-        <arg key="registrationForm.lastname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-      </field>
-      <field property="cityStateZip.stateProv">
-        <arg key="registrationForm.stateprov.displayname" />
-      </field>
-      <field property="phone">
-        <arg key="registrationForm.phone.displayname" />
-      </field>
-    </form>
-    <form name="multiRegistrationForm">
-      <field property="firstName" depends="required,mask" page="1">
-        <arg key="registrationForm.firstname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-      </field>
-      <field property="lastName" depends="required,mask" page="1">
-        <msg name="mask" key="registrationForm.lastname.maskmsg" />
-        <arg key="registrationForm.lastname.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^\w+$</var-value>
-        </var>
-      </field>
-      <field property="addr" depends="required" page="1">
-        <arg key="registrationForm.addr.displayname" />
-      </field>
-      <field property="cityStateZip.city" depends="required,mask" page="1">
-        <arg key="registrationForm.city.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>^[a-zA-Z]*$</var-value>
-        </var>
-      </field>
-      <field property="cityStateZip.stateProv" page="2">
-        <arg key="registrationForm.stateprov.displayname" />
-      </field>
-      <field property="cityStateZip.zipPostal[1]" depends="required,mask" page="2">
-        <arg key="registrationForm.zippostal.displayname" />
-        <var>
-          <var-name>mask</var-name>
-          <var-value>${zip}</var-value>
-        </var>
-      </field>
-      <field property="phone" page="2">
-        <arg key="registrationForm.phone.displayname" />
-      </field>
-      <field property="email" depends="required,email" page="2">
-        <arg key="registrationForm.email.displayname" />
-      </field>
-    </form>
-    <form name="typeForm">
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>50</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>60</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>dd.MM.yyyy</var-value>
-        </var>
-      </field>
-    </form>
-    <form name="jsTypeForm">
-      <field property="integer" depends="required,integer,intRange">
-        <arg key="typeForm.integer.displayname" />
-        <arg name="intRange" key="${var:min}" resource="false" position="1" />
-        <arg name="intRange" key="${var:max}" resource="false" position="2" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>100</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>200</var-value>
-        </var>
-      </field>
-      <field property="date" depends="required,date">
-        <arg key="typeForm.date.displayname" />
-        <var>
-          <var-name>datePatternStrict</var-name>
-          <var-value>MM-dd-yyyy</var-value>
-        </var>
-      </field>
-    </form>
-    <!-- *********** Bundles Examples Form *********** -->
-    <form name="bundlesForm">
-      <field property="name" depends="required">
-        <msg name="required" key="You have forgotten to enter the name." resource="false" />
-      </field>
-      <field property="address" depends="required">
-        <arg key="bundlesForm.error.address" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="phone" depends="required">
-        <arg key="bundlesForm.error.phone"         bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" bundle="other" />
-      </field>
-      <field property="dob" depends="required">
-        <arg key="bundlesForm.error.dob"           bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-      </field>
-      <field property="age" depends="required,integer,intRange">
-        <arg key="bundlesForm.error.age" bundle="different" />
-        <msg name="required" key="bundlesForm.errors.required" />
-        <msg name="integer" key="bundlesForm.errors.integer" bundle="other"/>
-        <msg name="intRange" key="Age must be betweem 18 and 65 years." resource="false" />
-        <var>
-          <var-name>min</var-name>
-          <var-value>18</var-value>
-        </var>
-        <var>
-          <var-name>max</var-name>
-          <var-value>65</var-value>
-        </var>
-      </field>
-    </form>
- 
-    <!-- *********** validwhen Examples Form *********** -->
-    <form name="validWhenForm">
-
-      <!-- validwhen: simple validation -->
-      <field property="lastName" depends="validwhen">
-        <arg key="validWhenForm.lastName" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>((firstName == null) or (*this* != null))</var-value>
-        </var>
-      </field>
 
-      <!-- validwhen: both fields validation -->
-      <field property="fieldA" depends="validwhen">
-        <msg name="validwhen" key="validWhenForm.error.both" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( ((fieldB == null) and (*this* == null)) or ((fieldB != null) and (*this* != null)) )</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: numeric compare validation -->
-      <field property="max" depends="required,integer,validwhen">
-        <arg key="validWhenForm.max" />
-        <msg name="validwhen" key="validWhenForm.error.numeric" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>(*this* &gt; min)</var-value>
-        </var>
-      </field>
-
-      <!-- validwhen: address validation -->
-      <field property="address1" depends="validwhen">
-        <arg key="validWhenForm.address1" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address2 == null) and
-                     ( (city == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="city" depends="validwhen">
-        <arg key="validWhenForm.city" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (zip == null) )))</var-value>
-        </var>
-      </field>
-      <field property="zip" depends="validwhen">
-        <arg key="validWhenForm.zip" />
-        <var>
-          <var-name>test</var-name>
-          <var-value>( (*this* != null) or 
-                     ( (address1 == null) and
-                     ( (address2 == null) and
-                       (city == null) )))</var-value>
-        </var>
-      </field>
-    </form>
-
-  </formset>
 </form-validation>

Modified: struts/apps/trunk/examples/src/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/WEB-INF/web.xml?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/WEB-INF/web.xml (original)
+++ struts/apps/trunk/examples/src/webapp/WEB-INF/web.xml Tue Oct  4 18:43:15 2005
@@ -10,24 +10,36 @@
   <servlet>
     <servlet-name>action</servlet-name>
     <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
+
+    <!-- Default -->
     <init-param>
       <param-name>config</param-name>
       <param-value>/WEB-INF/struts-config.xml</param-value>
     </init-param>
 
-    <!-- module configurations -->
+    <!-- Exercise module -->
     <init-param>
       <param-name>config/exercise</param-name>
       <param-value>/WEB-INF/exercise/struts-config.xml</param-value>
     </init-param>
+
+    <!-- File Upload module -->
     <init-param>
       <param-name>config/upload</param-name>
       <param-value>/WEB-INF/upload/struts-config.xml</param-value>
     </init-param>
+
+    <!-- Validator module -->
     <init-param>
       <param-name>config/validator</param-name>
-      <param-value>/WEB-INF/validator/struts-config.xml</param-value>
+      <param-value>/WEB-INF/validator/struts-config.xml,
+                   /WEB-INF/validator/struts-config-bundles.xml,
+                   /WEB-INF/validator/struts-config-i18nVariables.xml,
+                   /WEB-INF/validator/struts-config-type.xml,
+                   /WEB-INF/validator/struts-config-validwhen.xml
+      </param-value>
     </init-param>
+
     <init-param>
       <param-name>debug</param-name>
       <param-value>2</param-value>

Modified: struts/apps/trunk/examples/src/webapp/validator/bundleExamples.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/bundleExamples.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/bundleExamples.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/bundleExamples.jsp Tue Oct  4 18:43:15 2005
@@ -7,7 +7,8 @@
   <body bgcolor="white">
 
     <p><strong><bean:message key="bundlesExamples.description"/></strong></p>
-    <p><i><bean:message key="file.location" arg0="validation.xml" arg1="/webapps/struts-examples/WEB-INF/validator"/></i></h2>
+    <p><html:link action="showStrutsConfigBundles" target="_blank">struts-config-bundles.xml</html:link> &nbsp;
+       <html:link action="showValidationBundles" target="_blank">validation-bundles.xml</html:link></p>
 
     <html:form action="validateBundleExamples">
       <table border="0">

Modified: struts/apps/trunk/examples/src/webapp/validator/bundleExamplesJS.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/bundleExamplesJS.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/bundleExamplesJS.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/bundleExamplesJS.jsp Tue Oct  4 18:43:15 2005
@@ -7,7 +7,8 @@
   <body bgcolor="white">
 
     <p><strong><bean:message key="javascript.bundlesExamples.description"/></strong></p>
-    <p><i><bean:message key="file.location" arg0="validation.xml" arg1="/webapps/struts-examples/WEB-INF/validator"/></i></h2>
+    <p><html:link action="showStrutsConfigBundles" target="_blank">struts-config-bundles.xml</html:link> &nbsp;
+       <html:link action="showValidationBundles" target="_blank">validation-bundles.xml</html:link></p>
 
     <html:errors prefix="html.li.open" suffix="html.li.close"/>
 

Modified: struts/apps/trunk/examples/src/webapp/validator/i18nExample.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/i18nExample.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/i18nExample.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/i18nExample.jsp Tue Oct  4 18:43:15 2005
@@ -9,22 +9,23 @@
     <h2><strong><bean:message key="standard.desc" bundle="i18nExample"/></strong></h2>
     <p><bean:message key="long.desc" bundle="i18nExample"/></p>
 
-    <hr />
-
-     <table border="0" width="80%">
+     <table border="0" width="95%">
        <tr><td align="left">
+          <html:link action="/welcome"><bean:message key="label.back" bundle="i18nExample"/></html:link> &nbsp;
+          <html:link action="showStrutsConfigI18nExample" target="_blank">struts-config-i18nVariables.xml</html:link> &nbsp;
+          <html:link action="showValidationI18nExample" target="_blank">validation-i18nVariables.xml</html:link>
+       </td>
+       <td align="right">
           <table border="0"><tr>
             <td><b><bean:message key="label.current" bundle="i18nExample"/></b>: <strong><bean:message key="current.locale" bundle="i18nExample"/></strong></td>
             <td>&nbsp;</td>
             <td><html:link action="/switchI18nExample?language=en&country=US"><bean:message key="locale.en_us" bundle="i18nExample"/></html:link></td>
             <td><html:link action="/switchI18nExample?language=en&country=GB"><bean:message key="locale.en_gb" bundle="i18nExample"/></html:link></td>
+            <td><html:link action="/switchI18nExample?language=fr"><bean:message key="locale.fr" bundle="i18nExample"/></html:link></td>
+            <td><html:link action="/switchI18nExample?language=jp"><bean:message key="locale.jp" bundle="i18nExample"/></html:link></td>
           </tr></table>
-       </td>
-       <td align="right">
-          <html:link action="/welcome"><bean:message key="label.back" bundle="i18nExample"/></html:link>
        </td></tr>
      </table>
-         
     <hr />
     <h2><bean:message key="form.heading" bundle="i18nExample"/></h2>
 

Modified: struts/apps/trunk/examples/src/webapp/validator/i18nExampleJS.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/i18nExampleJS.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/i18nExampleJS.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/i18nExampleJS.jsp Tue Oct  4 18:43:15 2005
@@ -9,19 +9,21 @@
     <h2><strong><bean:message key="javascript.desc" bundle="i18nExample"/></strong></h2>
     <p><bean:message key="long.desc" bundle="i18nExample"/></p>
 
-    <hr />
-
-     <table border="0" width="80%">
-       <tr><td alig="left">
+     <table border="0" width="95%">
+       <tr><td align="left">
+          <html:link action="/welcome"><bean:message key="label.back" bundle="i18nExample"/></html:link> &nbsp;
+          <html:link action="showStrutsConfigI18nExample" target="_blank">struts-config-i18nVariables.xml</html:link> &nbsp;
+          <html:link action="showValidationI18nExample" target="_blank">validation-i18nVariables.xml</html:link>
+       </td>
+       <td align="right">
           <table border="0"><tr>
             <td><b><bean:message key="label.current" bundle="i18nExample"/></b>: <strong><bean:message key="current.locale" bundle="i18nExample"/></strong></td>
             <td>&nbsp;</td>
             <td><html:link action="/switchJsI18nExample?language=en&country=US"><bean:message key="locale.en_us" bundle="i18nExample"/></html:link></td>
             <td><html:link action="/switchJsI18nExample?language=en&country=GB"><bean:message key="locale.en_gb" bundle="i18nExample"/></html:link></td>
+            <td><html:link action="/switchJsI18nExample?language=fr"><bean:message key="locale.fr" bundle="i18nExample"/></html:link></td>
+            <td><html:link action="/switchJsI18nExample?language=jp"><bean:message key="locale.jp" bundle="i18nExample"/></html:link></td>
           </tr></table>
-       </td>
-       <td align="right">
-          <html:link action="/welcome"><bean:message key="label.back" bundle="i18nExample"/></html:link>
        </td></tr>
      </table>
 

Modified: struts/apps/trunk/examples/src/webapp/validator/jsRegistration.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/jsRegistration.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/jsRegistration.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/jsRegistration.jsp Tue Oct  4 18:43:15 2005
@@ -9,6 +9,8 @@
 <html:base/>
 </head>
 <body bgcolor="white">
+<p><html:link action="showStrutsConfig" target="_blank">struts-config.xml</html:link> &nbsp;
+   <html:link action="showValidation" target="_blank">validation.xml</html:link></p>
 
 <logic:messagesPresent>
    <bean:message key="errors.header"/>

Modified: struts/apps/trunk/examples/src/webapp/validator/jsType.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/jsType.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/jsType.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/jsType.jsp Tue Oct  4 18:43:15 2005
@@ -11,6 +11,9 @@
     <html:base />
   </head>
   <body>
+    <p><html:link action="showStrutsConfigType" target="_blank">struts-config-type.xml</html:link> &nbsp;
+       <html:link action="showValidationType" target="_blank">validation-type.xml</html:link></p>
+
     <logic:messagesPresent>
       <bean:message key="errors.header" />
       <ul>

Modified: struts/apps/trunk/examples/src/webapp/validator/multiRegistration1.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/multiRegistration1.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/multiRegistration1.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/multiRegistration1.jsp Tue Oct  4 18:43:15 2005
@@ -9,6 +9,8 @@
 <html:base/>
 </head>
 <body bgcolor="white">
+<p><html:link action="showStrutsConfig" target="_blank">struts-config.xml</html:link> &nbsp;
+   <html:link action="showValidation" target="_blank">validation.xml</html:link></p>
 
 <logic:messagesPresent>
    <bean:message key="errors.header"/>

Modified: struts/apps/trunk/examples/src/webapp/validator/multiRegistration2.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/multiRegistration2.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/multiRegistration2.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/multiRegistration2.jsp Tue Oct  4 18:43:15 2005
@@ -9,6 +9,8 @@
 <html:base/>
 </head>
 <body bgcolor="white">
+<p><html:link action="showStrutsConfig" target="_blank">struts-config.xml</html:link> &nbsp;
+   <html:link action="showValidation" target="_blank">validation.xml</html:link></p>
 
 <logic:messagesPresent>
    <bean:message key="errors.header"/>

Modified: struts/apps/trunk/examples/src/webapp/validator/registration.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/registration.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/registration.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/registration.jsp Tue Oct  4 18:43:15 2005
@@ -9,6 +9,8 @@
 <html:base/>
 </head>
 <body bgcolor="white">
+<p><html:link action="showStrutsConfig" target="_blank">struts-config.xml</html:link> &nbsp;
+   <html:link action="showValidation" target="_blank">validation.xml</html:link></p>
 
 <logic:messagesPresent>
    <bean:message key="errors.header"/>

Added: struts/apps/trunk/examples/src/webapp/validator/showFile.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/showFile.jsp?rev=294968&view=auto
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/showFile.jsp (added)
+++ struts/apps/trunk/examples/src/webapp/validator/showFile.jsp Tue Oct  4 18:43:15 2005
@@ -0,0 +1,16 @@
+<%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %><%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %><%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %><%@ taglib uri="http://struts.apache.org/tags-nested" prefix="nested" %>
+<html:html>
+  <head>
+    <title><bean:write name="fileName" scope="request" /></title>
+    <html:base />
+  </head>
+  <body bgcolor="white">
+
+    <h2>File: <i><bean:write name="fileName" scope="request" /></i></h2>
+    <hr />
+    <pre>
+        <bean:write name="fileContents" scope="request" filter="true"/>
+    </pre>
+    <hr />
+  </body>
+</html:html>

Propchange: struts/apps/trunk/examples/src/webapp/validator/showFile.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/apps/trunk/examples/src/webapp/validator/showFile.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: struts/apps/trunk/examples/src/webapp/validator/type.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/type.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/type.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/type.jsp Tue Oct  4 18:43:15 2005
@@ -7,6 +7,9 @@
     <html:base />
   </head>
   <body bgcolor="white">
+    <p><html:link action="showStrutsConfigType" target="_blank">struts-config-type.xml</html:link> &nbsp;
+       <html:link action="showValidationType" target="_blank">validation-type.xml</html:link></p>
+
     <logic:messagesPresent>
       <bean:message key="errors.header" />
       <ul>

Modified: struts/apps/trunk/examples/src/webapp/validator/validWhenExamples.jsp
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/examples/src/webapp/validator/validWhenExamples.jsp?rev=294968&r1=294967&r2=294968&view=diff
==============================================================================
--- struts/apps/trunk/examples/src/webapp/validator/validWhenExamples.jsp (original)
+++ struts/apps/trunk/examples/src/webapp/validator/validWhenExamples.jsp Tue Oct  4 18:43:15 2005
@@ -6,8 +6,9 @@
   </head>
   <body bgcolor="white">
 
-    <h2><bean:message key="validWhenExamples.description"/></h2>
-    <p><i><bean:message key="file.location" arg0="validation.xml" arg1="/webapps/struts-examples/WEB-INF/validator"/></i></h2>
+    <h2><strong><bean:message key="validWhenExamples.description"/></strong></h2>
+    <p><html:link action="showStrutsConfigValidwhen" target="_blank">struts-config-validwhen.xml</html:link> &nbsp;
+    <html:link action="showValidationValidwhen" target="_blank">validation-validwhen.xml</html:link></p>
 
     <html:form action="validateValidWhenExamples">
       <table border="0">



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