husted 2002/12/27 01:53:39
Modified: doc/userGuide dev_validator.xml
Log:
Conform line-length. No content changes.
Revision Changes Path
1.17 +236 -171 jakarta-struts/doc/userGuide/dev_validator.xml
Index: dev_validator.xml
===================================================================
RCS file: /home/cvs/jakarta-struts/doc/userGuide/dev_validator.xml,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- dev_validator.xml 24 Dec 2002 01:50:07 -0000 1.16
+++ dev_validator.xml 27 Dec 2002 09:53:39 -0000 1.17
@@ -1,13 +1,20 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<document url="./resources.xml">
+
+<!--
+// ======================================================================== 78
+-->
+
<properties>
<author>David Winterfeldt</author>
<author>James Turner</author>
<author>Rob Leland</author>
<title>The Struts User's Guide - Validator Guide</title>
</properties>
-<body>
-<chapter name="Struts Validator Guide">
+
+<body>
+
+<chapter name="Struts Validator Guide">
<section href="validator" name="Struts Validator">
@@ -17,219 +24,277 @@
<p>
Cover basic functionality as documented on David's web site.
-<a href="http://home.earthlink.net/~dwinterfeldt/">Validation Framework for Struts
</a>
+<a href="http://home.earthlink.net/~dwinterfeldt/">Validation Framework for
+Struts </a>
</p>
<p>
-Changes in the validator behavior and deprecation of functionality from original
validator
+Changes in the validator behavior and deprecation of functionality from
+original validator
</p>
+
<ul>
-<li>
- The validator xml files now <strong>validates against the DTD stored in the
commons-validator.jar </strong>!
-</li>
-<li>
- The default validator-rules.xml now ignores blank fields for all the basic
validation types.
- If you require a field to be present then to your applications validator.xml
- field definition add "required" to the depends attribute.
-</li>
-<li>
- The Javascript Tag has new attributes defined.
-</li>
-<li>
- Deprecation of range() methods in both JavaScript and Java
-</li>
-<li>
- Deprecation of StrutsValidator & StrutsValidatorUtil
-</li>
+
+ <li>
+ The validator xml files now <strong>validates against the DTD stored in the
+ commons-validator.jar </strong>!
+ </li>
+
+ <li>
+ The default validator-rules.xml now ignores blank fields for all the basic
+ validation types.
+ If you require a field to be present then to your applications validator.xml
+ field definition add "required" to the depends attribute.
+ </li>
+
+ <li>
+ The Javascript Tag has new attributes defined.
+ </li>
+
+ <li>
+ Deprecation of <code>range</code> methods in both JavaScript and Java
+ </li>
+
+ <li>
+ Deprecation of StrutsValidator & StrutsValidatorUtil
+ </li>
+
</ul>
+
<p>
Struts 1.1 has also added additional functionality over the original validator
contributed by David Winterfeldt.
</p>
<ul>
+
<li>
- Conditionally required fields
+Conditionally required fields
</li>
+
<li>
- intRange() & floatRange() methods in both JavaScript and Java
+<code>intRange</code> & <code>floatRange</code> methods in both JavaScript
+and Java
</li>
+
</ul>
+
</section>
+
<section href="validator-bugs" name="Known Bugs">
-<p> Current know bugs can be found by clicking:
-<a
href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Struts&version=1.1+Beta+1&version=1.1+Beta+2&version=Nightly+Build&version=Unknown&component=Validator+Framework&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time">
-Validation Bugs</a> </p>
-<p>Since validation also relies on the commons-validator those bugs can be found
-<a
href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Commons&version=&component=Validator&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time">
-here</a></p>
+
+ <p>
+ Current know bugs can be found by clicking:
+ <a
href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Struts&version=1.1+Beta+1&version=1.1+Beta+2&version=Nightly+Build&version=Unknown&component=Validator+Framework&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time">
+ Validation Bugs</a>
+ </p>
+
+ <p>
+ Since validation also relies on the commons-validator those bugs can be found
+ <a
href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Commons&version=&component=Validator&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time">
+ here</a>
+ </p>
+
</section>
+
<section href="validator-changes" name="Changes and deprecations">
-<p> <strong>Validating against the DTD in the commons-validator.jar. </strong></p>
-<p> Struts no longer maintains a separate dtd for validator-rules.xml and
validator.xml.
+ <p>
+ <strong>Validating against the DTD in the commons-validator.jar.</strong>
+ </p>
+
+ <p>
+ Struts no longer maintains a separate dtd for validator-rules.xml and
+ validator.xml.
Additionally, commons-validator now maintains a unified validator.dtd.
Change all validator.xml DTD references to:
-<ol><pre>
- <!DOCTYPE form-validation PUBLIC
- "-//Apache Software Foundation//DTD Commons Validator Rules Configuration
1.0//EN"
- "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
-</pre></ol>
+ </p>
+
+<pre><small><![CDATA[
+<!DOCTYPE form-validation PUBLIC
+"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN"
+"http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
+]]></small></pre>
-</p>
</section>
-<section href="validator-new" name="New features">
-<p> <strong>Conditionally required fields. </strong></p>
-<p>
-The most fundamental change is the ability to conditionally
-require validator fields based on the value of other fields.
-It allows you to define logic like "only validate this field if field X is non-
-null and field Y equals "male".
-</p>
-<p>
-The syntax looks like this:
-</p>
+<section href="validator-new" name="New features">
-<p>
-If you have this in your struts-config.xml
-</p>
+ <p>
+ <strong>Conditionally required fields.</strong>
+ </p>
+
+ <p>
+ The most fundamental change is the ability to conditionally require
+ validator fields based on the value of other fields.
+ It allows you to define logic like "only validate this field if field X is
+ non-null and field Y equals 'male'".
+ </p>
+
+ <p>
+ The syntax looks like this:
+ </p>
+
+ <p>
+ If you have this in your struts-config.xml
+ </p>
-<ol>
<pre><![CDATA[
-<form-bean name="dependentlistForm"
- type="org.apache.struts.webapp.validator.forms.ValidatorForm">
- <form-property name="dependents"
- type="org.apache.struts.webapp.validator.Dependent[]"
- initial="{'','','','','','','','','','',''}"/>
- <form-property name="insureDependents"
- type="java.lang.Boolean"
- initial="false"/>
+<form-bean
+ name="dependentlistForm"
+ type="org.apache.struts.webapp.validator.forms.ValidatorForm">
+ <form-property
+ name="dependents"
+ type="org.apache.struts.webapp.validator.Dependent[]"
+ initial="{'','','','','','','','','','',''}"/>
+ <form-property
+ name="insureDependents"
+ type="java.lang.Boolean"
+ initial="false"/>
</form-bean>
]]></pre>
-</ol>
-<p>
-Where dependent is a bean that has properties lastName, firstName, dob,
-coverageType
-</p>
-
-<p>
-You can define a validation:
-</p>
+ <p>
+ Where dependent is a bean that has properties lastName, firstName, dob,
+ coverageType
+ </p>
+
+ <p>
+ You can define a validation:
+ </p>
<pre><![CDATA[
- <form name="dependentlistForm">
- <field property="firstName" indexedListProperty="dependents"
- depends="requiredif">
- <arg0 key="dependentlistForm.firstName.label"/>
- <var>
- <var-name>field[0]</var-name>
- <var-value>lastName</var-value>
- </var>
- <var>
- <var-name>field-indexed[0]</var-name>
- <var-value>true</var-value>
- </var>
- <var>
- <var-name>field-test[0]</var-name>
- <var-value>NOTNULL</var-value>
- </var>
- </field>
- <field property="dob" indexedListProperty="dependents"
- depends="requiredif,date">
- <arg0 key="dependentlistForm.dob.label"/>
- <var>
- <var-name>field[0]</var-name>
- <var-value>lastName</var-value>
- </var>
- <var>
- <var-name>field-indexed[0]</var-name>
- <var-value>true</var-value>
- </var>
- <var>
- <var-name>field-test[0]</var-name>
- <var-value>NOTNULL</var-value>
- </var>
- </field>
-
- <field property="coverageType" indexedListProperty="dependents"
- depends="requiredif">
- <arg0 key="dependentlistForm.coverageType.label"/>
- <var>
- <var-name>field[0]</var-name>
- <var-value>lastName</var-value>
- </var>
- <var>
- <var-name>field-indexed[0]</var-name>
- <var-value>true</var-value>
- </var>
- <var>
- <var-name>field-test[0]</var-name>
- <var-value>NOTNULL</var-value>
- </var>
- <var>
- <var-name>field[1]</var-name>
- <var-value>insureDependents</var-value>
- </var>
- <var>
- <var-name>field-test[1]</var-name>
- <var-value>EQUAL</var-value>
- </var>
- <var>
- <var-name>field-value[1]</var-name>
- <var-value>true</var-value>
- </var>
- <var>
- <var-name>field-join</var-name>
- <var-value>AND</var-value>
- </var>
- </field>
- </form>
-]]></pre>
-<p>
-Which is read as follows:
-The firstName field is only required if the lastName field is non-null. Since
-field-indexed is true, it means that lastName must be a property of the same
-indexed field as firstName. Same thing for dob, except that we validate for
-date if not blank.
-</p>
+<form name="dependentlistForm">
-<p>
-The coverageType is only required if the lastName for the same indexed bean is
-not null, and also if the non-indexed field insureDependents is true.
-</p>
+<field
+ property="firstName" indexedListProperty="dependents"
+ depends="requiredif">
+ <arg0 key="dependentlistForm.firstName.label"/>
+ <var>
+ <var-name>field[0]</var-name>
+ <var-value>lastName</var-value>
+ </var>
+ <var>
+ <var-name>field-indexed[0]</var-name>
+ <var-value>true</var-value>
+ </var>
+ <var>
+ <var-name>field-test[0]</var-name>
+ <var-value>NOTNULL</var-value>
+ </var>
+</field>
+
+<field
+ property="dob"
+ indexedListProperty="dependents"
+ depends="requiredif,date">
+ <arg0 key="dependentlistForm.dob.label"/>
+ <var>
+ <var-name>field[0]</var-name>
+ <var-value>lastName</var-value>
+ </var>
+ <var>
+ <var-name>field-indexed[0]</var-name>
+ <var-value>true</var-value>
+ </var>
+ <var>
+ <var-name>field-test[0]</var-name>
+ <var-value>NOTNULL</var-value>
+ </var>
+</field>
+
+<field
+ property="coverageType"
+ indexedListProperty="dependents"
+ depends="requiredif">
+ <arg0 key="dependentlistForm.coverageType.label"/>
+ <var>
+ <var-name>field[0]</var-name>
+ <var-value>lastName</var-value>
+ </var>
+ <var>
+ <var-name>field-indexed[0]</var-name>
+ <var-value>true</var-value>
+ </var>
+ <var>
+ <var-name>field-test[0]</var-name>
+ <var-value>NOTNULL</var-value>
+ </var>
+ <var>
+ <var-name>field[1]</var-name>
+ <var-value>insureDependents</var-value>
+ </var>
+ <var>
+ <var-name>field-test[1]</var-name>
+ <var-value>EQUAL</var-value>
+ </var>
+ <var>
+ <var-name>field-value[1]</var-name>
+ <var-value>true</var-value>
+ </var>
+ <var>
+ <var-name>field-join</var-name>
+ <var-value>AND</var-value>
+ </var>
+</field>
+
+</form>
+
+]]></pre>
+
+ <p>
+ Which is read as follows:
+ The firstName field is only required if the lastName field is non-null.
+ Since field-indexed is true, it means that lastName must be a property of
+ the same indexed field as firstName.
+ Same thing for dob, except that we validate for date if not blank.
+ </p>
+
+ <p>
+ The coverageType is only required if the lastName for the same indexed
+ bean is not null, and also if the non-indexed field insureDependents is
+ true.
+ </p>
+
+ <p>
+ You can have an arbitrary number of fields by using the [n] syntax,
+ the only restriction is that they must all be AND or OR, you can't mix.
+ </p>
-<p>
-You can have an arbitrary number of fields by using the [n] syntax, the only
-restriction is that they must all be AND or OR, you can't mix.
-</p>
</section>
<section href="tiles" name="Validator API Guide">
-<p>
-A concise
-<a
href="http://jakarta.apache.org/struts/api/org/apache/struts/validator/package-summary.html#package_description">Struts
Validator API Guide</a> is available to help you get started.
-</p>
+ <p>
+ A concise
+ <a
href="http://jakarta.apache.org/struts/api/org/apache/struts/validator/package-summary.html#package_description">
+ Struts Validator API Guide</a> is available to help you get started.
+ </p>
</section>
<section href="resources" name="Validator Resources">
-<p>
-<a href="http://www.strutskickstart.com/">
-<b>DynaForms and the Validator</b></a> by James Turner and Kevin Bedell.
-Sample chapter from
-<a href="http://www.strutskickstart.com/">Struts Kickstart</a>;
-available as a free download (PDF).
-</p>
-<p>
-<a
href="http://www.manning.com/getpage.html?project=husted&filename=chapters.html">
-<b>Validating user input</b></a> by David Winterfeldt and Ted Husted.
-Sample chapter from
-<a
href="http://www.amazon.com/exec/obidos/ISBN=1930110502/hitchhikeguidetoA/">Struts in
Action</a>;
-available as a free download (PDF).
-</p>
+
+ <p>
+ <a href="http://www.strutskickstart.com/">
+ <b>DynaForms and the Validator</b></a> by James Turner and Kevin Bedell.
+ Sample chapter from
+ <a href="http://www.strutskickstart.com/">Struts Kickstart</a>;
+ available as a free download (PDF).
+ </p>
+
+ <p>
+ <a
href="http://www.manning.com/getpage.html?project=husted&filename=chapters.html">
+ <b>Validating user input</b></a> by David Winterfeldt and Ted Husted.
+ Sample chapter from
+ <a href="http://www.amazon.com/exec/obidos/ISBN=1930110502/hitchhikeguidetoA/">
+ Struts in Action</a>;
+ available as a free download (PDF).
+ </p>
+
</section>
-</chapter></body></document>
+
+</chapter>
+</body>
+</document>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>