portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Spencer <pau...@apache.org>
Subject Re: JetspeedTemplateLink and peid
Date Mon, 18 Mar 2002 18:21:37 GMT
David,
Is their a reason we cannot user peid, instead of js_peid?

Paul Spencer

David Sean Taylor wrote:

> See below:
> 
> 
>>JetspeedTemplateLink is not quite right for the new peid 
>>feature.  It still has forPortlet() taking a portlet name 
>>(not id) and producing a url with "/portlet/<name>" intead of 
>>"/js_peid/<id>".
>>
>>We need some call in there to make take a portlet id and make 
>>a url with "/js_peid/<id>".
>>
>>Do we want to change the definition of forPortlet()?  It's 
>>new, so doing so might not break too much.  We would change 
>>it to encode the new "js_peid" parameter.  It would have to 
>>be passed the peid from the request, which can be found in 
>>the $data.Js_peid.
>>
>>Forms that want to be submitted to just a portlet could 
>>encode their action url as:
>>
>>$jlink.forPortlet("$!data.Js_peid")
>>
>>forPortlet() would, if passed a null or empty parameter, for 
>>the case where there is no peid in the request, just be 
>>ignored, so the $jink would be back to the entire portal 
>>rather than specifying a portlet.
>>
>>
> 
> That all sounds fine.
> Any objections to changing forPortlet to using an id?
> 
> Btw - I don't like that Js_peid notation...
> Don't really have an alternative right now,  but it looks clumsy
> 
> 
> 
>>* * *
>>
>>Also, we would have to assure that whenever a reqest comes in 
>>with a "js_peid", that the rundata's Js_peid() is properly 
>>set with it, and not rely upon an action (such as Maximize) 
>>to set this value.
>>
>>We need to fix JetspeedSessionValidator.doPerform():
>>
>>        String maximizedPortlet = 
>>(String)jdata.getUser().getTemp("portlet");
>>        if (maximizedPortlet != null) {
>>            jdata.setPortlet(maximizedPortlet);
>>            jdata.setScreenTemplate("Maximize");
>>        }
>>
>>        // if a portlet is referenced in the parameters 
>>request, store it
>>        // in the RunData object
>>        String paramPortlet = 
>>jdata.getParameters().getString("portlet");
>>        if (paramPortlet != null && paramPortlet.length() > 0) {
>>            jdata.setPortlet(paramPortlet);
>>        }
>>
>>Are we ok that the user.getTemp("portlet") is reserved here 
>>for maximize? If so, we need to fix it so it sets the 
>>jdata.Js_peid(), which is what Maxmize now uses, and check 
>>the getTemp("js_peid"), which Maximize is also setting.
>>
>>To assure that the Js_peid() is set in the rundata, we also 
>>need another hunk of code like this:
>>
>>        // if a portlet is referenced in the parameters 
>>request, store it
>>        // in the RunData object
>>        String paramPortletID = 
>>jdata.getParameters().getString("js_peid");
>>        if (paramPortletID != null && paramPortletID.length() > 0) {
>>            jdata.setJs_peid(paramPortletID);
>>        }
>>
>>So all the new peid folks will have it set in the rundata.
>>
>>
> 
> Agreed. I will apply your patches and combine them with the code that Im
> adding to support referencing non-default psml pages. All template links
> will now have to consider the profile parameters. Hope to have this
> checked in early this week.
> 
> 
> 
> --
> To unsubscribe, e-mail:   <mailto:jetspeed-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: <mailto:jetspeed-dev-help@jakarta.apache.org>
> 
> 



--
To unsubscribe, e-mail:   <mailto:jetspeed-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:jetspeed-dev-help@jakarta.apache.org>


Mime
View raw message