You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Paul Benedict (JIRA)" <ji...@apache.org> on 2007/11/07 07:23:34 UTC
[jira] Resolved: (STR-1116) ActionForm reset strategy
[ https://issues.apache.org/struts/browse/STR-1116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul Benedict resolved STR-1116.
--------------------------------
Resolution: Fixed
Assignee: Paul Benedict (was: Michael Jouravlev)
Updated to distinguish between a forward, include, and chained request.
> ActionForm reset strategy
> -------------------------
>
> Key: STR-1116
> URL: https://issues.apache.org/struts/browse/STR-1116
> Project: Struts 1
> Issue Type: New Feature
> Components: Core
> Affects Versions: Nightly Build
> Environment: Operating System: All
> Platform: All
> Reporter: Jan Cumps
> Assignee: Paul Benedict
> Priority: Minor
> Fix For: 1.4.0
>
>
> New attribute in <action> element where you can flag if you want the framework
> to call the reset() function of the ActionForm .
> It's very much like the "validate" attribute already present.
> This attribute would default to "true" for backward compatibility.
> Rationale:
> If you use checkboxes, you need to set the corresponding ActionForm property
> to "false" before the bean is populated from the request attributes (in the
> reset() method).
> But when you chain actions , you don't want this to happen (you would loose
> information).You want your bean to keep the info.
> Example:
> traceopen calls tracedetail on success -> show tracedetail.jsp
> tracesave calls tracedetail when validation fails (input attribute) -> show
> tracedetail.jsp
> tracedetail does some common things always needed for tracedetail.jsp (eg.load
> values for <select> tag from model).
> It should receive the ActionForm in the state it was in the calling action.
> <!-- Process a trace open for a new or existing trace -->
> <action path="/trace/traceopen"
> type="org.blabla.TraceOpenAction"
> name="traceForm"
> scope="request"
> reset="true">
> <forward name="success" path="/trace/tracedetail.do"/>
> <forward name="failure" path="/index.jsp"/>
> </action>
>
> <!-- prepare tracedetail.jsp resources -->
> <action path="/trace/tracedetail"
> type="org.blabla.TraceDetailAction"
> name="traceForm"
> scope="request"
> reset="false">
> <forward name="success" path="/trace/tracedetail.jsp"/>
> <forward name="failure" path="/index.jsp"/>
> </action>
>
> <!-- Process a trace save -->
> <action path="/trace/tracesave"
> type="org.blabla.TraceSaveAction"
> name="traceForm"
> scope="request"
> reset="true">
> input="/trace/tracedetail.do">
> <forward name="success" path="/trace/tracelist.do"/>
> <forward name="cancel" path="/trace/tracelist.do"/>
> </action>
> note:
> Can all be done by overriding ActionConfig.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.