Portal, Express Beta Version 6.1
Operating systems: i5/OS, Linux,Windows |
The <portal-navigation/> tags are used to implement navigation tasks such as generating URLs and traversing the portal navigation model.
The following section provides detailed descriptions of the <portal-navigation/> JSP tags:
<%@ taglib uri="/WEB-INF/tld/portal.tld" prefix="portal" %> <portal-logic:if loggedIn="yes" notScreen="SelfcareUserForm,SelfcareUserConf"> <table border="0" cellpadding="0" > <tr> <td align="<%=bidiAlignRight%>" valign="middle" dir="ltr" nowrap> <% boolean firstItem = true; %> <table border="0" cellpadding="0" <%= bidiDirAttr %> > <tr> <td valign="middle"> <form tabIndex="8" name="wpsFavoritesSelectionForm" method="GET" style="margin-bottom: 0" action='<portal-navigation:url commandParam="favoritesCommand"/>'> <select name="favoritesCommand" onchange="javascript: if (this.options[this.selectedIndex].value.charAt(0) == '@') { window.open(this.options[this.selectedIndex].value.substring(1), '_blank'); this.selectedIndex=0; return false;} else { this.form.submit(); return false; }"> <option value='#' selected><wps:text key='link.favorites.myfavorites' bundle='nls.engine'/> <portal-logic:if pageBookmarkable="true"> <option value='<portal-navigation:url command="AddBookmark" alias="wps.My Favorites"/>'><portal-fmt:text key='link.favorites.add' bundle='nls.engine'/> </portal-logic:if> <portal-navigation:urlGeneration contentNode="wps.Organize Favorites" portletWindowState="Normal" pacCheck="NoCheck"> <option value='<% wpsURL.write(escapeXmlWriter); %>' > <portal-fmt:text key='link.favorites.orgainize' bundle='nls.engine'/> </portal-navigation:urlGeneration> <option value='#'>------------ <portal:favoritesLoop> <% // wpsFavoritesURL is null for folders in the list of favorites if (wpsFavoritesURL != null) { // Check the favorite type. If it is an external URL, add a symbol to the URL // so the JavaScript on the select can detect when to open a new window // wpsFavoritesType may be null. wpsFavoritesType=1 means external URL if ("EXTERNALURL".equals(wpsFavoritesType)) wpsFavoritesURL = "@" + wpsFavoritesURL; //Phone number links are only supported on WML devices... and favorites are not markup-specific. // wpsFavoritesType may be null. wpsFavoritesType=2 means Phone Number if (!"2".equals(wpsFavoritesType)) { %> <option value="<%= wpsFavoritesURL %>"> <% for (int favSpace=1; favSpace < wpsFavoritesLevel.intValue(); favSpace++) {%> <% } %><%= wpsFavoritesTitle %> <% } } else { %> <option value="#" ><% for (int favSpace=1; favSpace < wpsFavoritesLevel.intValue(); favSpace++) {%> <% } %>--<%= wpsFavoritesTitle %>-- <% } %> </portal:favoritesLoop> </select> <noscript> <input type="image" border="0" align="absmiddle" src='<portal-logic:urlFindInTheme file="go.gif"/>'/> <span class="wpsPlaceBarLink" > <portal-fmt:text key="go" bundle="nls.button"/></span> </noscript> </form> </td> </tr> </table> </td> </tr> </table> </portal-logic:if>
(optional) The level on which this navigation is to begin showing information. If no start level is given, this tag will start at the navigation node after the levels that where shown by other JSPs . Otherwise, the default is level 1.
(optional) The level on which this navigation is to stop showing information. Default is to render all levels.
(optional) Compute the number of levels that will actually be shown by this navigation. When this attribute is set to "true", a scripting variable is made available inside the body of the navigation tag named wpsNavNumLevelsToDisplay of Java type java.lang.Integer.
<portal-navigation:navigation scopeUniqueName="wps.Favorites"> <portal-navigation:navigationLoop> <a href='<portal-navigation:navigationUrl type="link"/>' title='<portal-fmt:description varname="<%=wpsNavNode%>"/>'> <portal-fmt:title varname="<%=wpsNavNode%>"/> </a> </portal-navigation:navigationLoop> </portal-navigation:navigation>
Attributes:
To generate the title or description of a navigation node, use the <portal-fmt:title/> or the <portal-fmt:description/> tags, respectively. This tag should be used only in theme JSPs.
Creates a URL pointing to the public or protected (logged in) page of the portal.
Creates a URL pointing to the screen name to be displayed.
Creates a URL that issues the command to the portal. command="LoginUser" is used for the login panel and command="LogoutUser" is used for the logout button. The "userid" and "password" parameters have to be carried with a login URL.command="ShowTools" toggles the value of the showTools indicator. See the <portal-logic:if/> tag "showtools" attribute in for an example.
Directs the portal engine to obtain the actual command to execute from an HTTP request parameter instead of on the URL directly. The name of the parameter is the value of the commandParam attribute. This is useful in situations where different commands need to be conditionally executed yet only one URL can be specified. Such is the case when using a <form> tag with a <select>. This enables use of the HTML form without requiring JavaScript. For example:
<form name="someFormName" method="GET" style="margin-bottom: 0" action='<portal-navigation:url commandParam="requestParamName"/>'> <select name="requestParamName" onchange="javascript: this.form.submit(); "> <portal-navigation:someLoop> <option value="<%= theUrl %>" >Some title goes here </portal-navigation:someLoop> </select> <noscript> <input type="image" border=0 align=absmiddle src='go.gif'/>Go </noscript> </form>
The previous code example works both with and without JavaScript enabled.
Creates a secure URL (HTTPS).
This attribute is optional. It specifies whether the URL that is generated by this tag is to be absolute or not. If you set this attribute to true, absolute URLs are enforced; in this case other settings that affect the generation of URLs might be overridden.
Example
This part of a user login form uses the <portal:url> tag to process input fields, user ID, and password.<FORM method="POST" action='<portal-navigation:url command="LoginUser"/>' enctype="application/x-www-form-urlencoded" name="LoginPage">
<a class="wpsToolBarLink" href='<% wpsURL.write(out); %>'>My page</a>Attributes are as follows:
If the user does not have the given permission, the body of the tag is not executed. If the user has the necessary permissions, the current page ID is appended to the URL. If the parameter is set to 'NoCheck', the current page ID is appended without checking the access control permissions. This is necessary for the target page or portlet to create a back button.
<portal-navigation:urlGeneration actionName="myAction" contentNode="my.ContentNode" layoutNode="my.LayoutNode"> <a href="<%wpsURL.write(out);%>">Link to portlet with myAction</a> </portal-navigation:urlGeneration>The following is the code from the portlet's actionPerformed() that would handle myAction.
PortletURI actionURL = portletResponse.createURI(); actionURL.addAction("myAction");
Indicates whether a fully-qualified or relative URL is generated. The default is set by the com.ibm.portal.state.accessors.url.URLContext.enableRelative property in the StateManagerService.
Indicates the ID or unique name of the page. The name or ID of the content node is also used to specify the page where the portlet can be found.
If set to false, the current navigational state (including all portlet modes, states, and render parameters) is not included in the URL and the portal is reset to its default state. If set to true, which is the default, navigational state is included.
Indicates the ID or unique name of the control that holds the portlet. Must be used in combination with contentNode to identify the page where the portlet is located.
The value wp.currentSelectedPortlet can be used inside a control when generating a URL to the portlet within that control.
Creates a session partition. For portlet URLs, this should be used if you want to display the portlet either in a new window or in an iFrame. The default value is false. The portlet window state for the addressed portlet in the new window is set to maximized. The portlet mode is set to the value of the current parent window. In the control.jsp of Skins that use iFrames, the <portal:if/> tag can be used to distinguish between rendering in the main window or in an iFrame or detached window.
For URLs to a portlet indicated by layoutNode, this attribute sets the portlet mode. This parameter is ignored if layoutNode is not set.
Generates
URLs to a standard portlet's render or action processing methods. If this attribute is omitted, the portlet's render method is called. Any parameters added to the body of the tag using <portal-navigation:urlParam/> are passed to the corresponding method.
In the case of a portlet, indicates the state of the portlet window when it is displayed. If portlet state is not specified, the page is shown with the previous state of the portlet. This parameter is ignored if layoutNode is not set.
Note: Use caution when using this tag to address portlets in solo state. The portlet must be capable of existing in solo state using the createReturnURI() method. If a portlet without this method is placed in solo state, then users are forced to log out or close their browser windows in order to return to the portal.Specifies the ThemeTemplate which will be taken for rendering the requested page. Can be referenced as eiither a JSP or a class and is used as theme for this URL.
This parameter indicates that the URL to be generated should be normalized. If additional parameters are set the normalization will be executed first and afterwards the other state modifications will be accomplished.
Setting the "normalize" parameter to true will normalize the URL with the same XSL file used to normalize URLs for search engines. The normalized representation of the URL can also be used to bookmark a page. The following example shows how to use the tag with this attribute:<portal-navigation:urlGeneration normalize="true" > <a href="<% wpsURL.write(out); %>"> This is the normalized URL of the current selected page. </a> </portal-navigation:urlGeneration>If additional parameters are set for the <portal-navigation:urlGeneration> tag the XSL transformation will be executed first and all other state modifications will be accomplished afterwards.
This attribute is optional. It specifies whether the URL that is generated by this tag is to be absolute or not. If you set this attribute to true, absolute URLs are enforced; in this case other settings that affect the generation of URLs might be overridden.
Required. Indicates the name of the parameter.
Required. Indicates the value of the parameter.
<a href='<portal-navigation:url command="ChangeLanguage"><portal-navigation:urlParam name="locale" value="de"/></portal-navigation:url>'>Diese Seite in deutch</a>