[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jetspeed-user
Subject:    Forward Service Problem
From:       Dmitry Sklyut <Dmitry_Sklyut () orcom ! com>
Date:       2004-01-29 20:20:13
Message-ID: F70424EFE4A5EC45A9ED566A6E641837612875 () sitka ! orcom ! com
[Download RAW message or body]


Hi All,

I have a problem using the Forward service.  Here is the situation:

I have a set of portlets one of them has a detail link that uses
<jetspeed:forward> to forward to a different page.psml and portlet.  Once I
am done with that portlet I would lile to go back to where I came from.
So I declared another forward to the pane that I came from.  The forward to
a portlet works like a champ, but the forward back does not.

Here is my forwards declaration:

	<forward name='highbill'>
	    <page name='default.psml' role='csr'/>
	    <pane id='P-f9a04b6fec-10001'/>
	</forward>
	
	<forward name='billnoticedetail'>
	    <page name='billnoticedetail' role='csr'/>
	    <portlet id='P-fa5ec14b8a-10001' action='controls.Maximize'/>
	</forward>

What I think is happening is <jetspeed:pane> tag on the Home.jsp checks for
the js_peid.  js_peid is the id of the portlet on the "billnoticedetail"
page i.e. <portlet id='P-fa5ec14b8a-10001' action='controls.Maximize'/>.
This messes everything up as all I want is to go to a pane on the default
page.  The tag on the Home.jsp is this <jetspeed:pane name="default"/> and
the code for the tag:

if (data != null && data.getUser() != null)
{
 JetspeedTool jt = new JetspeedTool(data);
 String jspeid = (String) data.getUser().getTemp("js_peid");
 if (jspeid != null)
 {
     data.setMode(JetspeedRunData.MAXIMIZE);
     result = jt.getPortletById(jspeid);
 }
 else 
 {
     result = jt.getPane(this.name);
 }
}

From this code it seems that I will never be able to hit the pane specified
in the forward declaration no matter what I do.  Has anyone had a similar
issue?  How did you resolve it?

Currently I only see one way of doing it is to have a hidden form and have
my "Back" link submit that form.  That form would call a Turbine Action that
will do a Java ForwardService.forwardDynamic() call.  But that seems a
little excessive to me.

Thanks

Dmitry



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic