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>
