Ryan, if you want you can post your model, action, relevant struts.xml section and jsp for this and we could see if we could figure it out.

-D

On May 1, 2008, at 10:15 AM, Ryan Withers wrote:

Matt,

Yes this should help, thanks for your patience. As you might know It's not exactly the Person object but my variation on it. So I may be attempting to refer to the id field but not referring to the bean instance to get at the id field correctly. I'm in the middle of a transition from struts 1.x to struts2 so everything is still feeling a bit awkward.

Thanks again for your help,

Ryan

On Thu, May 1, 2008 at 11:54 AM, Matt Raible <[EMAIL PROTECTED]> wrote:
When id=1 comes in on the request (in the URL on a GET, hidden field
on a POST), it will be set on the Action provided there is a setId()
method. For the PersonAction, this works on GET, but not on POST. On
POST, the hidden fields name is "person.id", so it's setting it on the
Person object rather than the Action itself.

Hope this helps,

Matt

On Thu, May 1, 2008 at 10:50 AM, Ryan Withers <[EMAIL PROTECTED]> wrote:
> Matt,
>
> This makes it sound like something I'm doing, and I will double check that > again. Potentially the request parameter isn't being set correctly. Yes
> I'm saying that editPerson.html isn't in all cases being passed the
> id=<value> parameter. In some cases the id is coming across as a request > parameter but I have to admit I need to pay more attention to what links > produce which urls. I am getting the id before I call out to process an > action, when I call out to process any action the id parameter is null for > me and to get around this I'm using the session. If you can provide any > more insight that would be great. If not I can take this offline because
> it's starting to look like I introduced a bug when going through the
> tutorial.
>
> Thanks,
>
> Ryan
>
>
> On Thu, May 1, 2008 at 11:26 AM, Matt Raible <[EMAIL PROTECTED]> wrote: > > You're saying that /editPerson.html?id=1 results in a null value in
> > the hidden field?
> >
> > Matt
> >
> >
> >
> >
> > On Thu, May 1, 2008 at 10:10 AM, Ryan Withers <[EMAIL PROTECTED] >
> wrote:
> > > Matt,
> > >
> > > The id does get set, but when the action methods get performed either
> > > (edit, save, delete) the id is being set back to null.
> > >
> > > Thanks,
> > >
> > > Ryan
> > >
> > >
> > >
> > > On Thu, May 1, 2008 at 11:04 AM, Matt Raible <[EMAIL PROTECTED] >
> wrote:
> > >
> > > >
> > > >
> > > >
> > > > The id should be a hidden field so it's retained on an edit. The
> > > > tutorial shows this:
> > > >
> > > > <s:hidden name="person.id" value="%{person.id}"/>
> > > >
> > > > Matt
> > > >
> > > >
> > > >
> > > >
> > > > On Thu, May 1, 2008 at 9:58 AM, Ryan Withers <[EMAIL PROTECTED] >
> > > wrote:
> > > > > Matt,
> > > > >
> > > > > In the posted example for the Struts 2 project there seems to be
> an
> > > issue
> > > > > with the PersonAction where things are done in terms of the id on
> the
> > > > > action. Trouble is this gets set, and then on a subsequent request
> it
> > > winds
> > > > > up being null. So the call to save always creates a new row in the
> > > table.
> > > > > I solved this by storing the id in the session when the setter setId
> > > gets
> > > > > called. In fact many of the methods in the PersonAction now look
> for
> > > the id
> > > > > being in the session vs. just looking at the instance id variable.
> Am I
> > > > > losing my mind or should the example be updated?
> > > > >
> > > > > Thanks,
> > > > >
> > > > > Ryan
> > > > >
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>

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



Reply via email to