By default, the sample portal Desktop based on the JSPTabContainer includes five tabs, My Front Page, Samples, Search, Collaboration, and Sample Portlet. In the figure below, the channels are shown in numbers.
My Front Page tab (default) — Login or User Information, Bookmark, Sample JSP, and XML Test channels
1 — Samples tab: Sun Information, URL Scraper, and Notes channels
2 — Search tab: Search channel
3 — Collaboration tab: Discussions Lite and Discussions channels
4 — Portlet Samples tab: Bookmark, Showtime, and Weather portlet channels
The sample JSPTabContainer channel, by default, includes:
Banner links to return Home, tabs to allow the user to remove, rename or select the start tab, and also create a new tab (the URL for this page is action=edit&provider=JSPTabContainer), theme to allow the user to set the color scheme and font type for the Desktop (the URL for the preset theme page is action=edit&provider=JSPPresetThemeContainer), help that displays the Desktop sample online help (the URL is ../docs/locale/desktop/helppage.htm), Log Out link to log the user out of the Desktop (the URL is action=logout), and Search to allow the user to search.
When you click Make a New Tab, the corresponding Edit page is shown. You decide what to name the tab and what the tab topics are. Content Page is displayed only when making a new tab from scratch. When other Tab Topics are selected, a new tab which looks similar to the TabTopic selected, is created and displayed.
Links specific to the contained containers. The channels in each tab depend on the contained container of the JSPTabContainer. In the Sample Portal, these contained containers are JSPTableContainer and the channels are dependant on this container; but this does not have to be the case, they can be any container. The Content and Layout links provide the ability to customize the current selected contained container.
Content and layout links. The top-most JSP in the table container defines the Content and Layout links. JSPContentContainer is the container that displays the Content page, and JSPLayoutContainer is the container that displays the Layout page.
The provider responsible for generating the JSPTabContainer channel is JSPTabContainerProvider. The provider profile is the template which decides the properties for a container channel, but the container channel profile will ultimately decide the values for the container channel attributes.
The properties that make up JSPTabContainer work as follows by default.
Set to tab.jsp. This draws the Content Page for the tab container.
Set to tabedit.jsp. This displays the Edit page for the tab container where new tabs can be added, and existing tabs removed or renamed.
Sets the tab that opens first on the Desktop as MyFrontPageTabPanelContainer.
Allows six tabs to be created. As there are currently five tabs, one more can be added.
Used when creating a new tab from scratch.
Specifies that a number is appended to a newly created tab as the channel name. This number is increased each time a new tab is created, so that the new tab will have unique name. For example, to create a new tab based on MyFrontPageTabPanelContainer in JSPTabContainer, the new tab channel name would be JSPTabContainer/MyFrontPageTabPanelContainer1. (The new tab name is actually the channelName property in the display profile plus the value of the channelNumber property. The channelNumber is incremented by one each time a new tab is created.)
Specifies JSPContentContainer as the content channel that provides the Content page displaying channels to add to a user-created tab.
Specifies JSPPresetThemeContainer as the channel that is displayed in the Theme - Preset Theme page.
Specifies JSPCustomThemeContainer as the channel that is displayed in the Theme - Custom Theme page.
This collection has <Collection name=> entries for each of the available tab defined in JSPTabContainer.
This list describes all available channels for this container. The available channels are displayed in the Content Preference page for users to select from.
This list describes selected channels for this container. Only selected channels are displayed on the Desktop.
Figure 38–2 shows the JSPTabContainer architecture. In this figure, tab.jsp is the top-level JSP file. The tab.jsp file makes include calls to the header.jsp, availableTabs.jsp, menubar.jsp, and footer.html files. The availableTabs.jsp file makes an include call to the selectedTab.jsp and tabs.jsp files.
Content template is responsible for the front page of the container channel and the file name for the tab container channel is tab.jsp. The tab.jsp file extensively uses the Desktop taglibs.
The Edit page is where you can add, remove, and rename tabs. The tabedit.jsp is used to display this page.