Hey All,

Is it necessary to use a "business object" behind the intake service in
order to access the invalid 'value' of a field upon redisplaying a form?

My scenario is this, I present an empty form.  The user inputs some invalid
data.  Using intake, I validate the form and redisplay the form with error
message(s).  There error message shows up fine, but setting the "text"
input's value="$GroupVariable.[FieldName]" doesn't redisplay the invalid
data originally input by the user (it's empty).  I'm not currently using a
"business object" behind the scenes, is this necessary?  If not, any ideas
why the original (invalid) data isn't accessible from the intake pull tool?

Thanks,
Mitch

FWIW, here is a snippet from my .vm page showing the form and my
intake.xml...

---------------------form snippet-----------------------------------------
...
#set($CaseNumberGroup = $intake.CaseNumberSearch.Default)
<form name="search" method="post"
action="$link.setPage("CaseNumber.vm").setAction("CaseNumberSearch")">
  ...
  <!-- first field -->
  #if ( $CaseNumberGroup.CaseNumber.isValid() )
    <input type="text" name="$CaseNumberGroup.CaseNumber.Key">
  #else
    <input type="text" name="$CaseNumberGroup.CaseNumber.Key">
    <span class="error">$CaseNumberGroup.CaseNumber.Message</span>
  #end
  ...
  <!-- second field -->
  #if ( $CaseNumberGroup.FromDate.isValid() )
    <input type="text" name="$CaseNumberGroup.FromDate.Key">
  #else
    <!-- *****HERE LIES THE PROBLEM! THE value="" IS ALWAYS EMPTY***** -->
    <input type="text" name="$CaseNumberGroup.FromDate.Key"
value="$CaseNumberGroup.FromDate">
    <span class="error">$CaseNumberGroup.FromDate.Message</span>
  #end
  ...
  <!-- obligatory hidden fields -->
  $intake.declareGroups()
...



----------------intake.xml----------------------------------------------
<?xml version="1.0" encoding="ISO-8859-1"?>

<input-data basePackage="us.costars.formbeans.">

<!-- validation for the CaseNumber search page -->
<group name="CaseNumberSearch" key="caseNumberSearchKey">

  <!-- validate the case number -->
  <field name="CaseNumber" key="CaseNumberKey" type="String">
    <rule name="required" value="true">Case number is required</rule>
    <rule name="minLength" value="7">Must be 7-15 characters long</rule>
    <rule name="maxLength" value="15">Must be 7-15 characters long</rule>
  </field>

  <!-- validate the Form # -->
  <field name="FormNumber" key="FormNumberKey" type="String">
    <rule name="maxLength" value="4">Must be exactly 4 digits</rule>
    <rule name="mask" value="^$|[0-9][0-9][0-9][0-9]">Requires exactly 4
digits</rule>
  </field>

  <!-- validate the from date -->
  <field name="FromDate" key="FromDateKey" type="String">
    <rule name="mask"
value="^$|[0-1][0-9]/?[0-3][0-9]/?[12][90][0-9][0-9]">Invalid date
format</rule>
  </field>

  <!-- validate the to date -->
  <field name="ToDate" key="ToDateKey" type="String">
    <rule name="mask"
value="^$|[0-1][0-9]/?[0-3][0-9]/?[12][90][0-9][0-9]">Invalid date
format</rule>
  </field>

</group><!-- CaseNumberSearch -->


</input-data>

<<attachment: winmail.dat>>

--
To unsubscribe, e-mail:   <mailto:turbine-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:turbine-user-help@;jakarta.apache.org>

Reply via email to