Hi all.

I have a very, very strage problem. I use commons-validator to validate my struts pages. I use also velocity to render the pages. If I have a required field and it is empty it writes an error message and deletes the field. But it also deletes other fields in the form. Not all, but some. I have four fields:

name
vorname
email
homepage

If I fill in the form only "vorname", "email" and "homepage" the following things happens:

There ist an error message "name is a mandantory field" and "vorname" AND "homepage" will be deleted in the form. email not!!! Knows anyone the problem, that some field will be deleted an other fields not, if a validation fails??

Manfred

*Validator:*

   <form name="personForm">

     <field property="name" depends="required, mask">
         <arg key="person.name"  position="0"/>
       <var>
         <var-name>mask</var-name>
         <var-value>^[a-zA-Z]*$</var-value>
       </var>
     </field>

     <field property="vorname" depends="required, mask">
         <arg key="person.vorname"  position="0"/>
       <var>
         <var-name>mask</var-name>
         <var-value>^[a-zA-Z]*$</var-value>
       </var>
     </field>

     <field property="email" depends="email">
         <arg key="person.email"/>
     </field>

     <field property="homepage" depends="url">
         <arg key="person.homepage"/>
     </field>
   </form>

*Velocity Template*

<form method="POST" action="$link.setAction('/addperson')">

   <table height="20% border="0" cellspacing="5">
   <tr>
   <td>
#parse ("/velocity-functions/errors.vm") </td>
   </tr>
   </table>

    <table border="0" cellspacing="5">
   <tr>
   </tr>
   <tr>
       <td colspan="4"><b>header</b></td>
   </tr>

   <tr>
       <td>$text.get('person.name') *</td>
<td colspan="3"><input type="text" name="name" value="$!form.bean.name" size="30" maxlength="50"/> </td>
   </tr>
   <tr>
       <td>$text.get('person.vorname') *</td>
<td colspan="3"><input type="text" name="holla' value="$!form.bean.vorname" size="30" maxlength="50"/></td>
   </tr>
<tr>
       <td>$text.get('person.email')</td>
<td colspan="3"><input type="text" name="email" value="$!form.bean.email" size="30" maxlength="50"/></td>
   </tr>
   <tr>
       <td>$text.get('person.homepage') </td>
<td colspan="3"><input type="text" name="homepage' value="$!form.bean.homepage" size="30" maxlength="50"/></td>
   </tr>

   <tr class="normalRow">
       <td colspan="4" align="center">
           <input type="submit" value="Datensatz speichern" name="submit">
       </td>
   </tr>
   </table>
</form>

*app.properties*

person.name=Name
person.vorname=Vorname
person.email=E-Mail Adresse
person.homepage=Homepage

--
===========================================
Dipl.-Inf. Manfred Wolff
Software Engineer
-------------------------------------------
http://www.manfred-wolff.de
http://www.struts-it.org
-------------------------------------------

Die fatale Neigung der Menschen,
vom Nachdenken über eine Sache nachzulassen,
wenn sie nicht länger zweifelhaft ist,
ist die Ursache der Hälfte ihrer Irrtümer.
- John Stuart Mil -
___________________________________________________


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to