Forwarding to the previous page

2005-09-07 Thread Tremal Naik
Hi, I have a menu on my application, which is tiled in all the pages.
I have an action of the menu which is common to all the page in which
I am, so the execute() method of the action class associated to it
must return a forward to the page which called it. I know how to map
the  forward of an action to a specific, struts-config hard-coded
page.

How can I deal with this kind of dynamic forwarding? Id est forwarding
the action to the page which called it?

Thanks

-- 
TREMALNAIK

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



RE: Forwarding to the previous page

2005-09-07 Thread Duane Rosengartner
This works very well for me.

 a class=button href=javascript:history.back()Back/a
 

-Original Message-
From: Tremal Naik [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, September 07, 2005 7:24 AM
To: Struts Users Mailing List
Subject: Forwarding to the previous page

Hi, I have a menu on my application, which is tiled in all the pages.
I have an action of the menu which is common to all the page in which I
am, so the execute() method of the action class associated to it must
return a forward to the page which called it. I know how to map the
forward of an action to a specific, struts-config hard-coded page.

How can I deal with this kind of dynamic forwarding? Id est forwarding
the action to the page which called it?

Thanks

--
TREMALNAIK

-
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]



Re: Forwarding to the previous page

2005-09-07 Thread Tremal Naik
2005/9/7, Duane Rosengartner [EMAIL PROTECTED]:
 This works very well for me.
 
  a class=button href=javascript:history.back()Back/a

aehm,probabily I didn't explain well my problem: I don't have to get
back to the previous page from the actual. Look at this code:

public class DisplayAboutAction extends Action
{
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest, HttpServletResponse
httpServletResponse)
{
// do stuff.
ActionForward af = new ActionForward();
af.setPath(previousPagePath);
return af;
}
}

I need to get a value for 'previousPagePath'. 

I'm trying something like :

bean:page id=reqq property=request /
html:link action=next.do paramId=old_page paramName=reqq
paramProperty=servletPath

but I'm using Tiles, so what I have as 'old_page' parameter is not the
action 'previous.do' but '/jsplayout.jsp' instead

thanks,

TREMALNAIK

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



Re: Forwarding to the previous page

2005-09-07 Thread glenn . deschenes
You can always get from where the request is coming from by getting the 
Referer from the Request.
String referer = request.getHeader(REFERER);

I'm not sure that this is want you want. You must beware that the referrer 
can be blank when typing in the URL in the browser, plus the consequences 
of the ActionForm.validate() and errors.

HTH,
Glenn




Tremal Naik [EMAIL PROTECTED] 
07/09/2005 12:22 PM
Please respond to
Struts Users Mailing List user@struts.apache.org


To
Struts Users Mailing List user@struts.apache.org
cc

Subject
Re: Forwarding to the previous page






2005/9/7, Duane Rosengartner [EMAIL PROTECTED]:
 This works very well for me.
 
  a class=button href=javascript:history.back()Back/a

aehm,probabily I didn't explain well my problem: I don't have to get
back to the previous page from the actual. Look at this code:

public class DisplayAboutAction extends Action
{
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest, HttpServletResponse
httpServletResponse)
{
// do stuff.
ActionForward af = new ActionForward();
af.setPath(previousPagePath);
return af;
}
}

I need to get a value for 'previousPagePath'. 

I'm trying something like :

bean:page id=reqq property=request /
html:link action=next.do paramId=old_page paramName=reqq
paramProperty=servletPath

but I'm using Tiles, so what I have as 'old_page' parameter is not the
action 'previous.do' but '/jsplayout.jsp' instead

thanks,

TREMALNAIK

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





Re: Forwarding to the previous page

2005-09-07 Thread Frank W. Zammetti
I don't think there's anything inherently in Struts to do that, however,
it shouldn't be too hard to do on your own... how about this right before
you return your ActionForward from ANY Action:

session.setAttribute(previousPage, mapping.getPath());

That way, assuming everything in your app does go through an Action, which
it generally should, than in any other Action you can get that attribute
and it represents the last Action that executed... you can then return an
appropriate ActionForward to get back to it.

It would probably be a bit nicer to do this in a base Action, but that's
up to you, the theory is the same.

-- 
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com

On Wed, September 7, 2005 12:22 pm, Tremal Naik said:
 2005/9/7, Duane Rosengartner [EMAIL PROTECTED]:
 This works very well for me.

  a class=button href=javascript:history.back()Back/a

 aehm,probabily I didn't explain well my problem: I don't have to get
 back to the previous page from the actual. Look at this code:

 public class DisplayAboutAction extends Action
 {
 public ActionForward execute(ActionMapping actionMapping,
 ActionForm actionForm,
 HttpServletRequest httpServletRequest, HttpServletResponse
 httpServletResponse)
 {
 // do stuff.
 ActionForward af = new ActionForward();
 af.setPath(previousPagePath);
 return af;
 }
 }

 I need to get a value for 'previousPagePath'.

 I'm trying something like :

 bean:page id=reqq property=request /
 html:link action=next.do paramId=old_page paramName=reqq
 paramProperty=servletPath

 but I'm using Tiles, so what I have as 'old_page' parameter is not the
 action 'previous.do' but '/jsplayout.jsp' instead

 thanks,

 TREMALNAIK

 -
 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]



Re: Forwarding to the previous page

2005-09-07 Thread Michael Jouravlev
Consider standard for Struts pre/post actions. You have showForm.do
- JSP - submitForm.do - smthElse.do.

The preceding action for smthElse.do is submitForm.do, so calling it
does not make sense, since it would try to submit a non-existent form.
By the way, your advice would work great with Struts Dialogs, where
each dialog, that is, a web resource, is controlled by one action
only.

Apparently, in standard approach with pre/post actions it makes
sense only to store pre-actions, that is, the rendering actions. In
the case above it would be showForm.do.

Michael.

On 9/7/05, Frank W. Zammetti [EMAIL PROTECTED] wrote:
 I don't think there's anything inherently in Struts to do that, however,
 it shouldn't be too hard to do on your own... how about this right before
 you return your ActionForward from ANY Action:
 
 session.setAttribute(previousPage, mapping.getPath());
 
 That way, assuming everything in your app does go through an Action, which
 it generally should, than in any other Action you can get that attribute
 and it represents the last Action that executed... you can then return an
 appropriate ActionForward to get back to it.
 
 It would probably be a bit nicer to do this in a base Action, but that's
 up to you, the theory is the same.
 
 --
 Frank W. Zammetti
 Founder and Chief Software Architect
 Omnytex Technologies
 http://www.omnytex.com
 
 On Wed, September 7, 2005 12:22 pm, Tremal Naik said:
  2005/9/7, Duane Rosengartner [EMAIL PROTECTED]:
  This works very well for me.
 
   a class=button href=javascript:history.back()Back/a
 
  aehm,probabily I didn't explain well my problem: I don't have to get
  back to the previous page from the actual. Look at this code:
 
  public class DisplayAboutAction extends Action
  {
  public ActionForward execute(ActionMapping actionMapping,
  ActionForm actionForm,
  HttpServletRequest httpServletRequest, HttpServletResponse
  httpServletResponse)
  {
  // do stuff.
  ActionForward af = new ActionForward();
  af.setPath(previousPagePath);
  return af;
  }
  }
 
  I need to get a value for 'previousPagePath'.
 
  I'm trying something like :
 
  bean:page id=reqq property=request /
  html:link action=next.do paramId=old_page paramName=reqq
  paramProperty=servletPath
 
  but I'm using Tiles, so what I have as 'old_page' parameter is not the
  action 'previous.do' but '/jsplayout.jsp' instead
 
  thanks,
 
  TREMALNAIK
 
  -
  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]



Re: Forwarding to the previous page

2005-09-07 Thread Tremal Naik
2005/9/7, Frank W. Zammetti [EMAIL PROTECTED]:
 I don't think there's anything inherently in Struts to do that, however,
 it shouldn't be too hard to do on your own... how about this right before
 you return your ActionForward from ANY Action:
 
 session.setAttribute(previousPage, mapping.getPath());
 

I was thinking of a navigation bean to store in the user session, but
is that 'modifying ANY action' that I was trying to get rid of.

thanks

-- 
TREMALNAIK

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



Re: Forwarding to the previous page

2005-09-07 Thread Frank W. Zammetti
On Wed, September 7, 2005 12:44 pm, Michael Jouravlev said:
 Consider standard for Struts pre/post actions. You have showForm.do
 - JSP - submitForm.do - smthElse.do.

 The preceding action for smthElse.do is submitForm.do, so calling it
 does not make sense, since it would try to submit a non-existent form.
 By the way, your advice would work great with Struts Dialogs, where
 each dialog, that is, a web resource, is controlled by one action
 only.

Yep, your right, fair point.  Maybe the answer, since my other reply was
talking about doing it from a base Action, is to only extend from that
base Action those Actions that should be return to-able ;)  In other
words, have your showForm.do extend BaseAction, and smthElse.do extend
BaseAction, but NOT submitForm.do.  That way you only ever store Actions
that can legitimately be returned to, and in this case if you wound up in
smthElse.do and wanted to return to the previous page, meaning
showForm.do, that's precisely what was last stored in session, NOT
submitForm.do, as you point out would be incorrect.

 Apparently, in standard approach with pre/post actions it makes
 sense only to store pre-actions, that is, the rendering actions. In
 the case above it would be showForm.do.

Exactly, hence my suggestion. :)

 Michael.

Frank

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