You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Jim Reynolds <ji...@gmail.com> on 2005/12/28 00:16:14 UTC

processActionPerform question

I am creating a dynamic 'CrumbTrail' and have a question.

A tactic I came up with is to clone the ActionForm, and store it.
Later on when a crumb is clicked, I pull out the cloned ActionForm,
and call,

 return super.processValidate(request, response, form, mapping);

from my extended RequestProcessor class. While debugging, I can see
the proper values when I pull my ActionForm out in the
RequestProcessor class, and I also get the proper values in my
ActionClass. But for some reason, I do not get my values in the jsp
page that the ActionClass hands off to.

Now I have checked all obvious (redirect=true, etc.) but cannot figure this out.

Has anyone ever ran into a problem, where the form data is good in
requestProcessor, Action class, but is not there in the jsp?

All these forms are "request" scoped objects.

Thanks

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: processActionPerform question

Posted by Michael Jouravlev <jm...@gmail.com>.
ActionForm is referred to via a scoped variable, this is what
<form-bean name = "..." /> is about. I don't know what did you change
in your custom RequestProcessor, but default behavior for
request-scoped ActionForms is that they are disposed when response is
sent to the browser, and a new instance is created on request, this
instance is stored in the request scope (again, and again and again on
each request).

Bottom line: you need to stick your cloned ActionForm into the request
object under the name you specified in struts-config.xml file.
Obviously, you need to do it *after* RequestProcessor created a new
instance and put it into request.

Or you may want to rewrite processActionForm() method so it would use
your cloned instance.

Michael.

On 12/27/05, Jim Reynolds <ji...@gmail.com> wrote:
> I am creating a dynamic 'CrumbTrail' and have a question.
>
> A tactic I came up with is to clone the ActionForm, and store it.
> Later on when a crumb is clicked, I pull out the cloned ActionForm,
> and call,
>
>  return super.processValidate(request, response, form, mapping);
>
> from my extended RequestProcessor class. While debugging, I can see
> the proper values when I pull my ActionForm out in the
> RequestProcessor class, and I also get the proper values in my
> ActionClass. But for some reason, I do not get my values in the jsp
> page that the ActionClass hands off to.
>
> Now I have checked all obvious (redirect=true, etc.) but cannot figure this out.
>
> Has anyone ever ran into a problem, where the form data is good in
> requestProcessor, Action class, but is not there in the jsp?
>
> All these forms are "request" scoped objects.
>
> Thanks
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org