Many thanks, will give that a go tomorrow. Jon Hawkins
-----Original Message----- From: David Sean Taylor [mailto:[EMAIL PROTECTED] Sent: 06 October 2004 18:43 To: Jetspeed Users List Subject: Re: List of user's portlets Jonathan Hawkins wrote: > > I want to get a list of the portlets by name or id that are in the users > profile, not a list of available portlets but only those that are currently > configured in the portal for that user. > > Any assistance appreciated. Try somethin like this: public void doPerform(RunData data) throws Exception { Profile profile = ((JetspeedRunData) data).getCustomizedProfile(); Portlets portlets = profile.getDocument().getPortlets(); if (portlets == null) { return; } int count = 0; count = traverse(portlets, count); super.doPerform(data); } private int traverse(Portlets portlets, int count) { // First let's add all the Entries in the current level Iterator eItr = portlets.getEntriesIterator(); while(eItr.hasNext()) { Entry entry = (Entry)eItr.next(); Portlet portlet = null; try { portlet = PortletFactory.getPortlet(entry); } catch (Exception e) { log.error("Could not create portlet for entry " + entry.getId(), e); continue; } if (portlet == null) { log.error("Could not create portlet for entry " + entry.getId()); continue; } } //Now if there are child levels, drill down recursively if(portlets.getPortletsCount() > 0) { Iterator pItr = portlets.getPortletsIterator(); while(pItr.hasNext()) { Portlets childPortlets = (Portlets)pItr.next(); count += traverse(childPortlets, count); } } return count; } -- David Sean Taylor Bluesunrise Software [EMAIL PROTECTED] [office] +01 707 773 4646 [mobile] +01 707 529 9194 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.768 / Virus Database: 515 - Release Date: 22/09/2004 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.768 / Virus Database: 515 - Release Date: 22/09/2004 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]