+1

As mentioned, to refresh the model, we remove the existing model and
push the latest version. For a "refresh" operation, we might expect
the new instance to replace the old instance in the same stack
position.

In RefreshModelBeforeResult, we already have a reference to the old
model ("Item"). Could we just replace one object with another?

            for (Object item : root) {
                if (item == newModel) {
                    needsRefresh = false;
                }
+             else {
+               item = newModel
+             }

 * 
http://svn.opensymphony.com/fisheye/browse/~raw,r=1833/xwork/trunk/src/java/com/opensymphony/xwork2/interceptor/ModelDrivenInterceptor.java

Or would there be side-effects?

HTH, Ted.

On Wed, Jul 16, 2008 at 7:22 PM, Jeromy Evans
<[EMAIL PROTECTED]> wrote:
> Dave Newton wrote:
>>
>> It appears as though ModelDrivenInterceptor could change the stack order
>> when a refresh is necessary; the old model is removed from wherever it was
>> in the stack and the new model is simply pushed.
>>
>>
>
> Is it possible to make it do a replace within the stack?
>
> If not, rather than document it, I'd prefer that it throws an exception
> (stack order changed exception/model not at top of stack exception/something
> like that exception), so the developer's attention is drawn to it.  These
> kinds of things cause apparently intermittent & difficult to isolate
> problems.
> The i18n tag had a similar issue when its closing tag liberally popped
> anything off the top of the stack (now throws)
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
HTH, Ted
http://husted.com/ted/blog/

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

Reply via email to