Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The folderName specifies which layout folder to render under
    • {0..N} folderName elements are allowed in the path to handle sub-tabs and other such cases
    • The /f/ prefix folder defines that the next path section(s) are folder names
    • The folder section (/f/ prefix and folder parts) are optional and can be left out when manually creating a URL that targets a specific portlet
  • The portletName.subscribeId specifies the targeted portlet
    • Used for all url types when in a targeted WindowState such as max, detached, and exclusive.
    • Used for all action and resource requests
    • portletName is the portlet's fname
    • subscribeId is the ID associated with that particular subscription to the portlet in the user's layout.
    • The /p/ prefix folder defines that the next path section is a portlet
  • The state specifies the style of the page being rendered.
    • normal - Standard portal page, tab with multiple portlets
    • max - One maximized portlet, portal provides chrome, tabs and perhaps other UI elements
    • detached - One detached portlet, portal provides <head> element, all visible content is rendered by the portlet
    • exclusive - One exclusive portlet, portlet renders all of output, binary content is allowed here
    • If the state is not specified then normal will be used when targeting a folder and max will be used when targeting a portlet
  • The render is the type of URL being requested.
    • render - a URL that renders content, also used for a portlet RenderRequest
    • resource - a URL that serves a portlet resource (ResourceRequest)
    • action - a URL that executes a portlet action (ActionRequest), this URL may not render content and must return a 3xx class code.
    • If the type is not specified render is assumed

Syntax Notes

  • If a portletName.subscribeId is specified but the subscribeId does not exist for the current user it is ignored and the following resolution rules are used:
    1. The first instance of the named portlet on the user's layout
    2. A transient portlet loaded by fname if the user has permission to view the portlet
    3. The user ends up at their default tab
  • Partial URLs are valid
    • /uPortal/p/portletName 
      • Targets portletName in maximized mode with a render request
    • /uPortal/p/portletName?someParam=foo
      • Targets portletName in maximized mode with a render request and the portlet parameter someParam=foo
    • /uPortal/p/portletName/detached?someParam=foo
      • Targets portletName in detached mode with a render request and the portlet parameter someParam=foo
    • /uPortal/p/portletName/resource.uP?someParam=foo
      • Targets portletName in maximized mode with resource request and the portlet parameter someParam=foo

...