Sun ONE Portal Server 6.2 Desktop Customization Guide |
Chapter 5
Display Profile Channel DefinitionsThis chapter contains information on the channel display profile definitions that ship with Sun ONE Portal Server software.
This chapter contains the following sections:
Overview of Channel Display Profile DefinitionsThe provider definition is the template that decides the properties for a channel. However, the display profile channel definition ultimately decides the values for the channel attributes. The display profile channel definition can define properties that overwrite the properties defined by the provider definition.
To facilitate understanding of what display profile channel definitions look like and how they work, this chapter contains the default display profile channel definitions for both the container and leaf channels shipped with the product.
Display Profile Definition for Container ChannelsContainer channels are channels that primarily generate its content by aggregating the content of other (its child) channels. A container channel allows for available and selected channel lists and can contain leaf channel definitions.
This section includes the default display profile XML fragments for the following container channels:
JSPTableContainer
The JSPTableContainer is used as a top level container channel for displaying the JSP based table desktop.
Code Example 5-1 shows the display profile definition for JSPTableContainer channel.
Properties can be configured from the administration console. For table containers, the following is a list of user editable properties. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
channelsRow
Defines a collection property to contain the row number value for channels in this container.
channelsColumn
Defines a collection property to contain the column number value for channels in this container.
channelsIsMinimized
Defines a collection property to contain the isMinimized value for channels in this container.
channelsIsDetached
Defines a collection property to contain the isDetached value for channels in this container.
Selected
Defines a list of selected channels for display on this container Desktop.
title
Specifies the title that appears in the channel title bar in the Desktop.
For more information on all the JSPTableContainer channel properties, see "JSPTableContainerProvider."
MyFrontPageFramePanelContainer
MyFrontPageFramePanelContainer generates the MyFrontPage page on the FrameTabContainer (framed Desktop).
Code Example 5-2 shows the display profile definition for MyFrontPageFramePanelContainer channel.
Code Example 5-2 Display Profile Definition for MyFrontPageFramePanelContainer
<Container name="MyFrontPageFramePanelContainer" provider="PredefinedFrontPageFramePanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page"/>
</Properties>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the MyFrontPageFramePanelContainer channel properties, see "PredefinedFrontPageFramePanelContainerProvider."
SamplesTabPanelContainer
SamplesTabPanelContainer provides the Samples tab on JSPTabContainer (JSP based Tabbed Desktop).
Code Example 5-3 shows the display profile definition for SamplesTabPanelContainer channel.
Code Example 5-3 Display Profile Definition for SamplesTabPanelContainer
<Container name="SamplesTabPanelContainer" provider="PredefinedSamplesTabPanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</Properties>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Yahoo_channel"/>
<Reference value="Yahoo_quotes"/>
<Reference value="Yahoo_weather"/>
<Reference value="Yahoo_comics"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Yahoo_channel"/>
<Reference value="Yahoo_quotes"/>
<Reference value="Yahoo_weather"/>
<Reference value="Yahoo_comics"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the SamplesTabPanelContainer channel properties, see "PredefinedSamplesTabPanelContainerProvider."
SearchTabPanelContainer
SearchTabPanelContainer provides the Search tab on JSPTabContainer (JSP based tabbed Desktop.)
Code Example 5-4 shows the display profile definition for SearchTabPanelContainer channel.
Code Example 5-4 Display Profile Definition for SearchTabPanelContainer
<Container name="SearchTabPanelContainer" provider="JSPTableContainerProvider">
<Properties>
<String name="title" value="Search"/>
<String name="contentPage" value="tabtable.jsp"/>
<String name="description" value="Search tab"/>
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
<String name="parentTabContainer" value="FrameTabContainer" advanced="true"/>
<Collection name="categories">
<String value="Search Channels"/>
</Collection>
<Collection name="Search Channels">
<String value="Search"/>
</Collection>
</Properties>
<Available>
<Reference value="Search"/>
</Available>
<Selected>
<Reference value="Search"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the SearchTabPanelContainer channel properties, see "JSPTableContainerProvider."
MyFrontPageTabPanelContainer
MyFrontPageTabPanelContainer provides the MyFrontPage tab on JSPTabContainer (JSP based tabbed Desktop).
Code Example 5-5 shows the display profile definition for MyFrontPageTabPanelContainer channel.
Code Example 5-5 Display Profile Definition for MyFrontPageTabPanelContainer
<Container name="MyFrontPageTabPanelContainer" provider="PredefinedFrontPageTabPanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page"/>
</Properties>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="MyFrontPageTabPanelContainer/Bookmark2"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="MyFrontPageTabPanelContainer/Bookmark2"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Selected>
<Channels>
<Channel name="Bookmark2" provider="BookmarkProvider">
<Properties>
<String name="title" value="My Bookmarks #2"/>
<String name="refreshTime" value="600"/>
<Collection name="targets">
<String value="Sun home page|http://www.sun.com"/>
<String value="Everything you want to know about Sun ONE ...|http://www.sun.com/software/products/portal_srvr/home_portal.html"/>
<String value="Sun ONE home page|http://www.sun.com/software"/>
</Collection>
</Properties>
</Channel>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the MyFrontPageTabPanelContainer channel properties, see "PredefinedFrontPageTabPanelContainerProvider."
SamplesFramePanelContainer
SamplesFramePanelContainer provides the Samples page on FrameTabContainer.
Code Example 5-6 shows the display profile definition for SamplesFramePanelContainer channel.
Code Example 5-6 Display Profile Definition for SamplesFramePanelContainer
<Container name="SamplesFramePanelContainer" provider="PredefinedSamplesFramePanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</Properties>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the SamplesFramePanelContainer channel properties, see "PredefinedSamplesFramePanelContainerProvider."
JSPTabContainer
JSPTabContainer is used as the top level container for JSP based tabbed Desktop.
Code Example 5-7 shows the display profile definition for JSPTabContainer channel.
Code Example 5-7 Display Profile Definition for JSPTabContainer
<Container name="JSPTabContainer" provider="JSPTabContainerProvider">
<Properties>
<String name="title" value="JSP Tab Container Channel"/>
<String name="description" value="This is a test for tab containers"/>
<String name="contentPage" value="tab.jsp"/>
<String name="editPage" value="tabedit.jsp"/>
<String name="startTab" value="MyFrontPageTabPanelContainer"/>
<Integer name="maxTabs" value="6"/>
<String name="makeTabProvider" value="JSPTabCustomTableContainerProvider" advanced="true"/>
<String name="makeTabChannel" value="JSPTabCustomTableContainer" advanced="true"/>
<Integer name="channelNumber" value="0"/>
<String name="contentChannel" value="JSPContentContainer"/>
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
<Collection name="TabProperties">
<Collection name="MyFrontPageTabPanelContainer">
<Boolean name="removable" value="false"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="SamplesTabPanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="JSPTabCustomTableContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="SearchTabPanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="PredefinedFrontPageTabPanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="PredefinedSamplesTabPanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
</Collection>
</Properties>
<Available>
<Reference value="MyFrontPageTabPanelContainer"/>
<Reference value="SamplesTabPanelContainer"/>
<Reference value="SearchTabPanelContainer"/>
<Reference value="PredefinedFrontPageTabPanelContainer"/>
<Reference value="PredefinedSamplesTabPanelContainer"/>
</Available>
<Selected>
<Reference value="MyFrontPageTabPanelContainer"/>
<Reference value="SamplesTabPanelContainer"/>
<Reference value="SearchTabPanelContainer"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For tab containers, the following is a list of user editable properties. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
startTab
Tab that is displayed when the user logs in.
channelNumber
Used in the naming of newly created tabs by user.
selected
Defines a list of selected channels for display on this container Desktop.
For more information on all the JSPTabContainer channel properties, see "JSPTabContainerProvider."
JSPCreateChannelContainer
Code Example 5-8 shows the display profile definition for JSPCreateChannelContainer channel.
Code Example 5-8 Display Profile Definition for JSPCreateChannelContainer
<Container name="JSPCreateChannelContainer" provider="JSPSingleContainerProvider" advanced="true">
<Properties>
<String name="title" value="JSP Create Channel Channel"/>
<String name="description" value="This is the JSP Create Channel Channel"/>
<String name="contentPage" value="" propagate="false"/>
<String name="editPage" value="createchanneledit.jsp"/>
<String name="processPage" value="createchanneldoedit.jsp"/>
<Boolean name="isEditable" value="true" advanced="true"/>
<String name="editType" value="edit_complete" advanced="true"/>
<Collection name="availableProviders">
<String name="AddressBookProvider" value="Sun ONE AddressBook Channel"/>
<String name="CalendarProvider" value="Sun ONE Calendar Channel"/>
<String name="MailProvider" value="Sun ONE Mail Channel"/>
<String name="MSExchangeAddressBookProvider" value="Exchange AddressBook Channel"/>
<String name="MSExchangeCalendarProvider" value="Exchange Calendar Channel"/>
<String name="MSExchangeMailProvider" value="Exchange Mail Channel"/>
<String name="LotusNotesAddressBookProvider" value="Lotus Notes AddressBook Channel"/>
<String name="LotusNotesCalendarProvider" value="Lotus Notes Calendar
Channel"/>
<String name="LotusNotesMailProvider" value="Lotus Notes Mail Channel"/>
</Collection>
</Properties>
<Available>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPCreateChannelContainer channel properties, see "JSPSingleContainerProvider."
JSPPresetThemeContainer
JSPPresetThemeContainer displays the preset theme page, which allows users to select from a set of preset themes.
Code Example 5-9 shows the display profile definition for JSPPresetThemeContainer channel.
Code Example 5-9 Display Profile Definition for JSPPresetThemeContainer
<Container name="JSPPresetThemeContainer" provider="JSPSingleContainerProvider" advanced="true">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<String name="helpURL" value="en/desktop/theme.htm" advanced="true"/>
</ConditionalProperties>
<String name="helpURL" value="en/desktop/theme.htm" advanced="true"/>
<String name="title" value="JSP Preset Theme Channel"/>
<String name="contentPage" value="" merge="replace" lock="false" propagate="false"/>
<String name="description" value="This is the JSP Preset Theme Channel"/>
<String name="editPage" value="themeedit.jsp"/>
<String name="processPage" value="themedoedit.jsp"/>
<Boolean name="isEditable" value="true" advanced="true"/>
<String name="editType" value="edit_complete" advanced="true"/>
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
</Properties>
<Available>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPPresetThemeContainer channel properties, see "JSPSingleContainerProvider."
JSPCustomThemeContainer
JSPCustomThemeContainer displays the custom theme page, which allows users to customize the theme attributes.
Code Example 5-10 shows the display profile definition for JSPCustomThemeContainer channel.
Code Example 5-10 Display Profile Definition for JSPCustomThemeContainer
<Container name="JSPCustomThemeContainer" provider="JSPSingleContainerProvider" advanced="true">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<String name="helpURL" value="en/desktop/theme.htm" advanced="true"/>
</ConditionalProperties>
<String name="helpURL" value="en/desktop/theme.htm" advanced="true"/>
<String name="title" value="JSP Custom Theme Channel"/>
<String name="description" value="This is the JSP Custom Theme Channel" />
<String name="contentPage" value="" merge="replace" lock="false" propagate="false"/>
<String name="editPage" value="customthemeedit.jsp"/>
<String name="processPage" value="customthemedoedit.jsp"/>
<Boolean name="isEditable" value="true" advanced="true"/>
<String name="editType" value="edit_complete" advanced="true"/>
</Properties>
<Available>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPCustomThemeContainer channel properties, see "JSPSingleContainerProvider."
JSPPopupContainer
JSPPopupContainer is no longer used in Sample Portal. It is included for backward compatibility. The detached windows on the desktop are now drawn by the TableContainer.
Code Example 5-11 shows the display profile definition for JSPPopupContainer channel.
Code Example 5-11 Display Profile Definition for JSPPopupContainer
<Container name="JSPPopupContainer" provider="JSPSingleContainerProvider" advanced="true">
<Properties>
<String name="title" value="Popup Container"/>
<String name="description" value="Popup container" />
<Boolean name="isEditable" value="true" advanced="true"/>
<String name="editType" value="edit_subset" advanced="true"/>
<String name="contentPage" value="popup.jsp"/>
</Properties>
<Available>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPPopupContainer channel properties, see "JSPSingleContainerProvider."
TemplateTableContainer
TemplateTableContainer is used as the top level container for displaying a template based table Desktop.
Code Example 5-12 shows the display profile definition for TemplateTableContainer channel.
Code Example 5-12 Display Profile Definition for TemplateTableContainer
<Container name="TemplateTableContainer" provider="TemplateTableContainerProvider">
<Properties>
<String name="title" value="Template Based Table Container"/>
<String name="description" value="This is the channel for the front provider" />
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
<Collection name="channelsColumn" advanced="true">
<String name="SampleJSP" value="2"/>
<String name="SampleXML" value="2"/>
<String name="Notes" value="2"/>
</Collection>
<Collection name="channelsRow" advanced="true">
<String name="MailCheck" value="3"/>
<String name="SampleRSS" value="2"/>
<String name="SampleXML" value="2"/>
<String name="App" value="5"/>
<String name="SampleSimpleWebService" value="6"/>
<String name="Bookmark" value="4"/>
<String name="Notes" value="3"/>
</Collection>
<Collection name="channelsIsRemovable">
<Boolean name="UserInfo" value="false"/>
</Collection>
</Properties>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="SampleRSS"/>
<Reference value="SampleJSP"/>
<Reference value="SampleXML"/>
<Reference value="App"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
<Reference value="PersonalNotes"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="SampleRSS"/>
<Reference value="SampleJSP"/>
<Reference value="SampleXML"/>
<Reference value="App"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
<Reference value="PersonalNotes"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the TemplateTableContainer channel properties, see "TemplateTableContainerProvider."
TemplateTabContainer
TemplateTabContainer is used as the top level container for displaying a template based tabbed desktop.
Code Example 5-13 shows the display profile definition for TemplateTabContainer channel.
Code Example 5-13 Display Profile Definition for TemplateTabContainer
<Container name="TemplateTabContainer" provider="TemplateTabContainerProvider">
<Properties>
<String name="title" value="Template Based Tab Container Channel"/>
<String name="description" value="This is a test for tab containers" />
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
<Boolean name="rtl" value="false"/>
<String name="startTab" value="MyFrontPageTemplatePanelContainer"/>
<String name="makeTabProvider" value="TemplateTabCustomTableContainerProvider" advanced="true"/>
<String name="makeTabChannel" value="TemplateTabCustomTableContainer" advanced="true"/>
<Integer name="channelNumber" value="0"/>
<Integer name="maxTabs" value="4"/>
<Collection name="TabProperties">
<Collection name="MyFrontPageTemplatePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="SamplesTemplatePanelContainer">
<Boolean name="removable" value="false"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="ToolsTemplatePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="PredefinedFrontPageTemplatePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="PredefinedSamplesTemplatePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="PredefinedToolsTemplatePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="TemplateTabCustomTableContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
</Collection>
</Properties>
<Available>
<Reference value="MyFrontPageTemplatePanelContainer"/>
<Reference value="SamplesTemplatePanelContainer"/>
<Reference value="ToolsTemplatePanelContainer"/>
<Reference value="PredefinedFrontPageTemplatePanelContainer"/>
<Reference value="PredefinedSamplesTemplatePanelContainer"/>
<Reference value="PredefinedToolsTemplatePanelContainer"/>
</Available>
<Selected>
<Reference value="MyFrontPageTemplatePanelContainer"/>
<Reference value="SamplesTemplatePanelContainer"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the TemplateTabContainer channel properties, see "JSPTabContainerProvider."
MyFrontPageTemplatePanelContainer
MyFrontPageTemplatePanelContainer provides the MyFrontPage tab on TemplateTabContainer (template based tabbed Desktop).
Code Example 5-14 shows the display profile definition for MyFrontPageTemplatePanelContainer channel.
Code Example 5-14 Display Profile Definition for MyFrontPageTemplatePanelContainer
<Container name="MyFrontPageTemplatePanelContainer" provider="PredefinedFrontPageTemplatePanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="My Front Page"/>
<String name="description" value="Your Front Page" />
</Properties>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="SampleRSS"/>
<Reference value="SampleJSP"/>
<Reference value="SampleXML"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="SampleRSS"/>
<Reference value="SampleJSP"/>
<Reference value="SampleXML"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the MyFrontPageTemplatePanelContainer channel properties, see "PredefinedFrontPageTemplatePanelContainerProvider."
SamplesTemplatePanelContainer
SamplesTemplatePanelContainer provides the Samples tab on TemplateTabContainer (template based tabbed Desktop).
Code Example 5-15 shows the display profile definition for the SamplesTemplatePanelContainer channel.
Code Example 5-15 Display Profile Definition for SamplesTemplatePanelContainer
<Container name="SamplesTemplatePanelContainer" provider="PredefinedSamplesTemplatePanelContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<ConditionalProperties condition="locale" value="US" >
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</ConditionalProperties>
</ConditionalProperties>
<String name="title" value="Samples"/>
<String name="description" value="Samples Tab"/>
</Properties>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Notes"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Notes"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the SamplesTemplatePanelContainer channel properties, see "PredefinedSamplesTemplatePanelContainerProvider."
ToolsTemplatePanelContainer
ToolsTemplatePanelContainer provides the Tools tab on TemplateTabContainer (template based tabbed Desktop).
Code Example 5-16 shows the display profile definition for the ToolsTemplatePanelContainer channel.
Code Example 5-16 Display Profile Definition for ToolsTemplatePanelContainer
<Container name="ToolsTemplatePanelContainer" provider="PredefinedToolsTemplatePanelContainerProvider">
<Properties>
<String name="title" value="Tools"/>
<String name="description" value="Tools Tab"/>
</Properties>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the ToolsTemplatePanelContainer channel properties, see "PredefinedToolsTemplatePanelContainerProvider."
FrameTabContainer
FrameTabContainer is used as a top level container for displaying the Frame based desktop.
Code Example 5-17 shows the display profile definition for the FrameTabContainer channel.
Code Example 5-17 Display Profile Definition for FrameTabContainer
<Container name="FrameTabContainer" provider="JSPTabContainerProvider">
<Properties>
<ConditionalProperties condition="locale" value="en" >
<String name="helpURL" value="en/desktop/fdesktop.htm" advanced="true"/>
</ConditionalProperties>
<String name="helpURL" value="en/desktop/fdesktop.htm" advanced="true"/>
<String name="title" value="Framed Tab Container Channel"/>
<String name="description" value="This is a test for frame containers" />
<String name="contentPage" value="frametab.jsp"/>
<String name="editPage" value="frametabedit.jsp"/>
<String name="startTab" value="MyFrontPageFramePanelContainer"/>
<Integer name="maxTabs" value="4"/>
<String name="makeTabProvider" value="JSPFrameCustomTableContainerProvider" advanced="true"/>
<String name="makeTabChannel" value="FrameCustomTableContainer" advanced="true"/>
<Integer name="channelNumber" value="0"/>
<String name="contentChannel" value="JSPContentContainer"/>
<String name="presetThemeChannel" value="JSPPresetThemeContainer" advanced="true"/>
<String name="customThemeChannel" value="JSPCustomThemeContainer" advanced="true"/>
<Collection name="TabProperties">
<Collection name="MyFrontPageFramePanelContainer">
<Boolean name="removable" value="false"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="SamplesFramePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
<Collection name="PredefinedFrontPageFramePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="PredefinedSamplesFramePanelContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="true"/>
</Collection>
<Collection name="FrameCustomTableContainer">
<Boolean name="removable" value="true"/>
<Boolean name="renamable" value="true"/>
<Boolean name="predefined" value="false"/>
</Collection>
</Collection>
</Properties>
<Available>
<Reference value="MyFrontPageFramePanelContainer"/>
<Reference value="SamplesFramePanelContainer"/>
<Reference value="PredefinedFrontPageFramePanelContainer"/>
<Reference value="PredefinedSamplesFramePanelContainer"/>
</Available>
<Selected>
<Reference value="MyFrontPageFramePanelContainer"/>
<Reference value="SamplesFramePanelContainer"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the FrameTabContainer channel properties, see "JSPTabContainerProvider."
JSPDynamicSingleContainer
JSPDynamicSingleContainer demonstrates the new method, getSelectedChannel(HttpServletRequest req), in the JSPSingleContainerProvider. Since the display profile allows for only one hard-coded channel name for the JSPSingleContainer, the JSPDynamicSingleContainer enhances the single container’s capability by taking a channel name in the request parameter and displaying the channel on the Desktop.
That is, this method gets the selected channel name by querying the request for parameter ContainerName.selectedChannel and stores the selectedChannel name in session for future requests. For example, for a URL of the type:
http://hostname.domain/portal/dt?action=content&provider=ContainerName&ContainerNa me.selectedChannel=ChannelName
ChannelName is taken from the request parameter (ContainerName.selectedChannel) instead of from the display profile. If selectedChannel cannot be obtained either from the request or from the session, then selectedChannel from a call to getSelectedChannel() is returned.
Code Example 5-18 shows the display profile definition for the JSPDynamicSingleContainer channel.
Code Example 5-18 Display Profile Definition for JSPDynamicSingleContainer
<Container name="JSPDynamicSingleContainer" provider="JSPSingleContainerProvider" advanced="true">
<Properties>
<String name="title" value="Dynamic Single Container"/>
<String name="description" value="Dynamic Single Container"/>
<String name="contentPage" value="dynamicSingle.jsp"/>
<Boolean name="isEditable" value="false" advanced="true"/>
</Properties
<Available>
<Reference value="SampleJSP"/>
</Available>
<Selected>
<Reference value="SampleJSP"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPDynamicSingleContainer channel properties, see "JSPSingleContainerProvider."
PredefinedFrontPageTabPanelContainer
PredefinedFrontPageTabPanelContainer is used as the predefined tab for MyFrontPage tab used when the user creates a new tab based on an existing tab from the make New Tab page on JSPTabContainer.
Code Example 5-19 shows the display profile definition for the PredefinedFrontPageTabPanelContainer channel.
Code Example 5-19 Display Profile Definition for PredefinedFrontPageTabPanelContainer
<Container name="PredefinedFrontPageTabPanelContainer" provider="PredefinedFrontPageTabPanelContainerProvider">
<Properties/>
<Available>
<Reference value="MailCheck"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="PredefinedFrontPageTabPanelContainer/Bookmark2"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Available>
<Selected>
<Reference value="MailCheck"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="PredefinedFrontPageTabPanelContainer/Bookmark2"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Selected>
<Channels>
<Channel name="Bookmark2" provider="BookmarkProvider">
<Properties>
<String name="title" value="My Bookmarks #2"/>
<String name="refreshTime" value="600"/>
<Collection name="targets">
<String value="Sun home page|http://www.sun.com"/>
<String value="Everything you want to know about Sun ONE ...|http://www.sun.com/software/products/portal_srvr/home_portal.html"/>
<String value="Sun ONE home page|http://www.sun.com/software"/>
</Collection>
</Properties>
</Channel>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedFrontPageTabPanelContainer channel properties, see "PredefinedSamplesTabPanelContainerProvider."
PredefinedSamplesTabPanelContainer
PredefinedSamplesTabPanelContainer is used as the predefined tab for Samples tab when the user creates a new tab based on an existing tab from the make New Tab page on JSPTabContainer.
Code Example 5-20 shows the display profile definition for the PredefinedSamplesTabPanelContainer channel.
Code Example 5-20 Display Profile Definition for PredefinedSamplesTabPanelContainer
<Container name="PredefinedSamplesTabPanelContainer" provider="PredefinedSamplesTabPanelContainerProvider">
<Properties/>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Yahoo_channel"/>
<Reference value="Yahoo_quotes"/>
<Reference value="Yahoo_weather"/>
<Reference value="Yahoo_comics"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Yahoo_channel"/>
<Reference value="Yahoo_quotes"/>
<Reference value="Yahoo_weather"/>
<Reference value="Yahoo_comics"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedSamplesTabPanelContainer channel properties, see "PredefinedSamplesTabPanelContainerProvider."
JSPTabCustomTableContainer
JSPTabCustomTableContainer is used when the user creates a new tab from scratch from the Make New Tab page in JSPTabContainer.
Code Example 5-21 shows the display profile definition for the JSPTabCustomTableContainer channel.
Code Example 5-21 Display Profile Definition for JSPTabCustomTableContainer
<Container name="JSPTabCustomTableContainer" provider="JSPTabCustomTableContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="PersonalNotes"/>
<Reference value="Search"/>
<Reference value="SampleSimpleWebService"/>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPTabCustomTableContainer channel properties, see "JSPTabCustomTableContainerProvider."
PredefinedFrontPageTemplatePanelContainer
PredefinedFrontPageTemplatePanelContainer is used as the predefined tab for MyFrontPage tab when the user creates a new tab based on an existing tab from the make New Tab page on TemplateTabContainer.
Code Example 5-22 shows the display profile definition for the PredefinedFrontPageTemplatePanelContainer channel.
Code Example 5-22 Display Profile Definition for PredefinedFrontPageTemplatePanelContainer
<Container name="PredefinedFrontPageTemplatePanelContainer" provider="PredefinedFrontPageTemplatePanelContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedFrontPageTemplatePanelContainer channel properties, see "PredefinedFrontPageTemplatePanelContainerProvider."
PredefinedSamplesTemplatePanelContainer
PredefinedSamplesTemplatePanelContainer is used as the predefined tab for Samples tab when the user creates a new tab based on an existing tab from the make New Tab page on TemplateTabContainer.
Code Example 5-23 shows the display profile definition for the PredefinedSamplesTemplatePanelContainer channel.
Code Example 5-23 Display Profile Definition for PredefinedSamplesTemplatePanelContainer
<Container name="PredefinedSamplesTemplatePanelContainer" provider="PredefinedSamplesTemplatePanelContainerProvider">
<Properties/>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Notes"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="SampleSimpleWebService"/>
<Reference value="Notes"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedSamplesTemplatePanelContainer channel properties, see "PredefinedSamplesTemplatePanelContainerProvider."
PredefinedToolsTemplatePanelContainer
Code Example 5-24 shows the display profile definition for the PredefinedToolsTemplatePanelContainer channel.
Code Example 5-24 Display Profile Definition for PredefinedToolsTemplatePanelContainer
<Container name="PredefinedToolsTemplatePanelContainer" provider="PredefinedToolsTemplatePanelContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="Notes"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedToolsTemplatePanelContainer channel properties, see "PredefinedToolsTemplatePanelContainerProvider."
TemplateTabCustomTableContainer
TemplateTabCustomTableContainer is used when the user creates a new tab from scratch from the Make New Tab page in TemplateTabContainer.
Code Example 5-25 shows the display profile definition for the TemplateTabCustomTableContainer channel.
Code Example 5-25 Display Profile Definition for TemplateTabCustomTableContainer
<Container name="TemplateTabCustomTableContainer" provider="TemplateTabCustomTableContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="PersonalNotes"/>
<Reference value="Search"/>
<Reference value="SampleSimpleWebService"/>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the TemplateTabCustomTableContainer channel properties, see "TemplateTabCustomTableContainerProvider."
PredefinedFrontPageFramePanelContainer
PredefinedFrontPageFramePanelContainer is used as the predefined tab for MyFrontPage tab when the user creates a new page based on an existing page from the make New Page page on FrameTabContainer.
Code Example 5-26 shows the display profile definition for the PredefinedFrontPageFramePanelContainer channel.
Code Example 5-26 Display Profile Definition for PredefinedFrontPageFramePanelContainer
<Container name="PredefinedFrontPageFramePanelContainer" provider="PredefinedFrontPageFramePanelContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Available>
<Selected>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the JSPTableContainer channel properties, see "PredefinedFrontPageFramePanelContainerProvider."
PredefinedSamplesFramePanelContainer
PredefinedSamplesFramePanelContainer is used as the predefined tab for Samples tab when the user creates a new page based on an existing page from the make New Page page on FrameTabContainer.
Code Example 5-28 shows the display profile definition for the PredefinedSamplesFramePanelContainer channel.
Code Example 5-27 Display Profile Definition for PredefinedSamplesFramePanelContainer
<Container name="PredefinedSamplesFramePanelContainer" provider="PredefinedSamplesFramePanelContainerProvider">
<Properties>
</Properties>
<Available>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
</Available>
<Selected>
<Reference value="SampleRSS"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="SampleSimpleWebService"/>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the PredefinedSamplesFramePanelContainer channel properties, see "PredefinedSamplesFramePanelContainerProvider."
FrameCustomTableContainer
FrameCustomTableContainer is used when the user creates a new tab from scratch from the Make New Tab page in FrameTabContainer.
Code Example 5-28 shows the display profile definition for the FrameCustomTableContainer channel.
Code Example 5-28 Display Profile Definition for FrameCustomTableContainer
<Container name="FrameCustomTableContainer" provider="JSPFrameCustomTableContainerProvider">
<Properties/>
<Available>
<Reference value="UserInfo"/>
<Reference value="MailCheck"/>
<Reference value="App"/>
<Reference value="Bookmark"/>
<Reference value="SampleJSP"/>
<Reference value="SampleRSS"/>
<Reference value="SampleXML"/>
<Reference value="SampleURLScraper"/>
<Reference value="Notes"/>
<Reference value="PersonalNotes"/>
<Reference value="Search"/>
<Reference value="SampleSimpleWebService"/>
</Available>
<Selected>
</Selected>
<Channels>
</Channels>
</Container>
Properties can be configured from the administration console. For more information on all the FrameCustomTableContainer channel properties, see "JSPFrameCustomTableContainerProvider."
Display Profile Definition for Leaf ChannelsLeaf channels are channels typically aggregated on a page with other channels and generates its own content. This section includes the display profile XML fragments for the following channels:
Address Book Channel
The address book channel displays entries from the users Sun One Messaging Servers address book.
Code Example 5-29 shows the display profile channel definition for the AddressBook channel.
Code Example 5-29 Display Profile Definition for the Address Book Channel
<Channel name="AddressBook" provider="AddressBookProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following AddressBook channel properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
displayEntries
Specifies if the entries should be shown.
numEntries
Specifies the number of entries to display.
sunPortalABSortBy
Specifies the value of the entries displayed to sort by.
sunPortalABSortOrder
Specifies the sort order of the entries displayed.
For a detailed list of properties specific to the AddressBookProvider, see "AddressBookProvider."
Applications List Channel
The applications list channel enables a user to add or remove applications from a list of applications.
Code Example 5-30 shows the display profile channel definition for the applications list channel.
Code Example 5-30 Display Profile Definition for the Applications List Channel
<Channel name="App" provider="AppProvider">
<Properties>
<String name="refreshTime" value="600"/>
<Collection name="targets">
</Collection>
<Collection name="userApps">
</Collection>
<String name="title" value="My Applications"/>
</Properties>
</Channel>
Properties can be configured from the administration console. The following property can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
For a detailed list of properties specific to the AppProvider, see "AppProvider."
Bookmark Channel
The bookmark channel enables users to store URLs.
Code Example 5-31 shows the display profile definition for the bookmark channel.
Code Example 5-31 Display Profile Definition for the Bookmark Channel
<Channel name="Bookmark" provider="BookmarkProvider">
<Properties>
<String name=”title” value=”My Bookmarks”/>
<String name="refreshTime" value="600"/>
<Collection name="targets">
<String value="Sun home page|http://www.sun.com"/>
<String value="Everything you want to know about Sun ONE ...| http://www.sun.com/software/products/portal_srvr/home_portal.html"/>
<String value="Sun ONE home page|http://www.sun.com/software"/>
</Collection>
</Properties>
</Channel>
Properties can be configured from the administration console. The following is a user editable bookmark channel property. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
targets
Specifies the target URL. For example, three URLs:
http://www.sun.com
http://www.sun.com/software/products/portal_sr vr/home_portal.html
http://www.sun.com/software.
For more information on the other bookmark channel properties, see "BookmarkProvider."
Calendar Channel
The calendar channel displays events and task from the Sun One Calendar Server.
Code Example 5-32 shows the display profile definition for the Calendar channel.
Code Example 5-32 Display Profile Definition for Calendar Channel
<Channel name="Calendar" provider="CalendarProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the calendar channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
For more information on the other Calendar channel properties, see "CalendarProvider."
Discussion Channels
The DiscussionLite channel and the Discussions channel are based on the DiscussionProvider. Similar to the search channel JSPs, they have a query portion, a display portion, and use Desktop themes. Discussions are tied to topics and specific documents.
The discussion channels include discussion threads, starting discussions based on documents or new topics, searching discussions, subscribing to discussions, and rating discussions. By default, the channels are available on the sample portal for anonymous users. However, an anonymous user cannot subscribe to a discussion or edit the channels.
DiscussionLite Channel
The DiscussionLite channel displays the top twenty discussion titles (which can be reconfigured) and the date. The discussions are sorted by creation date (last modified) and the newest discussion is displayed first. The DiscussionLite Channel view has links to view each discussion, view all discussions, start a new discussion which target the Discussions Channel. By default, all links are brought up in a JSPDynamicSingleContainer.
Code Example 5-33 shows the display profile definition for the DiscussionLite channel.
Code Example 5-33 DiscussionLite Channel Display Profile
<Channel name="DiscussionLite" provider="DiscussionProvider">
<Properties>
<String name="title" value="Recent Discussions"/>
<String name="description" value="This is a DiscussionLite provider example"/>
<String name="contentPage" value="discussionLiteContent.jsp"/>
<String name="editPage" value=""/>
<String name="processPage" value=""/>
<String name="width" value="thin"/>
<String name="searchServer" value=""/>
<String name="db" value="discussion"/>
<Integer name="viewHits" value="20"/>
</Properties>
</Channel>
Properties can be configured from the administration console. By default, there are no user editable properties for this channel. For more information on all the DiscussionLite channel properties, see "DiscussionProvider."
Discussions Channel
The Discussions channel includes a full view that:
Code Example 5-34 shows the display profile definition for the DiscussionLite channel.
Code Example 5-34 Discussions Channel Display Profile
<Channel name="Discussions" provider="DiscussionProvider">
<Properties>
<String name="title" value="Discussions"/>
<String name="description" value="This is a Discussion provider example" />
<String name="searchServer" value=""/>
<String name="dbname" value="discussion"/>
<Integer name="viewHits" value="8"/>
</Properties>
</Channel>
By default, Discussions channel inherits most property values from the provider definition. Properties can be configured from the administration console. The following properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
viewHits
Specifies the number of discussions to display on the main discussion page.
defaultFilter
Specifies the filter for searching and displaying discussions and this controls display of the subtree.
defaultExpansionThreshold
It can be set to expand all or collapse all.
viewDiscussionWindow
If set to true, the discussion link gets displayed on an entire page; that is, JSPDynamicSingleContainer is invoked. If set to false, the discussion gets displayed within the channel within the tab.
showDescription
Specifies whether or not to show a description of the discussion.
For more information on all the Discussions channel properties, see "DiscussionProvider."
Instant Messaging Channel
The Instant Messaging channel displays non-offline users from a contact list in the channel and allows instant messaging conference to be started by clicking on entry.
Code Example 5-35 shows the display profile definition for the Instant Messaging channel.
Code Example 5-35 Display Profile Definition for IMChannel
<Channel name="IMChannel" provider="IMProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
clientRunMode
Specifies how the Instant Messaging server client must be run.
server
Specifies the name of the instant messaging server to use.
port
Specifies the port on which the instant messaging server listens.
mux
Specifies the name of instant messaging multiplexor to use (used by Instant Messaging client.)
muxport
Specifies the multiplexor port on which the instant messaging server listens.
For more information on all the Instant Messaging channel properties, see "IMProvider."
JSP Channel
A JSP channel uses JSP pages rather than Desktop templates to define the channel. You can therefore make changes to the channel and the provider without having to restart the server.
Code Example 5-36 shows the display profile definition for the JSP channel.
Code Example 5-36 Display Profile Definition for the JSP Channel
<Channel name="SampleJSP" provider="JSPProvider">
<Properties>
<String name="title" value="Sample JSP Provider"/>
<String name="description" value="This is the sample for the Jsp Provider"/>
<ConditionalProperties condition="locale" value="en">
<ConditionalProperties condition="locale" value="US">
<String name="title" value="Sample JSP Channel"/>
<String name="description" value="This is the sample for the Jsp Provider" />
</ConditionalProperties>
</ConditionalProperties>
<Boolean name="isEditable" value="true"/>
</Properties>
</Channel>
Properties can be configured from the administration console. By default, there are no user editable properties for this provider. For more information on all the JSP channel properties, see "JSPProvider."
Login Channel
The login channel shows up in the anonymous user’s Desktop, enabling users to log in. You can select one out of the three methods to enable users to log in: LDAP, Membership, or Unix.
Code Example 5-37 shows the display profile definition for the login channel.
Code Example 5-37 Display Profile Definition for the Login Channel
<Channel name="Login" provider="LoginProvider">
<Properties>
<String name="refreshTime" value="600" advanced="true"/>
<String name="title" value="Login "/>
<String name="description" value="Login Information"/>
<String name="fontFace1" value="Arial"/>
<String name="width" value="thin" advanced="true"/>
</Properties>
</Channel
Properties can be configured from the administration console. By default, there are no user editable properties for this channel. For more information on all the login channel properties, see "LoginProvider."
Lotus Notes Address Book Channel
The Lotus Notes Address Book channel displays entries from the users Lotus Notes Server address book functionality.
Code Example 5-38 shows the display profile definition for the Lotus Notes Address Book channel.
Code Example 5-38 Display Profile Definition for LotusNotesAddressBook Channel
<Channel name="LotusNotesAddressBook" provider="LotusNotesAddressBookProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following LotusNotesAddressBook channel properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
displayEntries
Specifies if the entries should be shown.
numEntries
Specifies the number of entries to display.
sunPortalABSortBy
Specifies the value of the entries displayed to sort by.
sunPortalABSortOrder
Specifies the sort order of the entries displayed.
For more information on all the Lotus Notes Address Book channel properties, see "LotusNotesAddressBookProvider."
Lotus Notes Calendar Channel
The Lotus Notes Calendar channel displays events and task from the Lotus Notes Server calender functionality.
Code Example 5-39 shows the display profile definition for the Lotus Notes Calendar channel.
Code Example 5-39 Display Profile Definition for LotusNotesCalendar Channel
<Channel name="LotusNotesCalendar" provider="LotusNotesCalendarProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the LotusNotesCalendar channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
For more information on all the Lotus Notes Calendar channel properties, see "LotusNotesCalendarProvider."
Lotus Notes Mail Channel
The Lotus Notes Mail channel displays messages from the Lotus Notes Server mail functionality.
Code Example 5-40 shows the display profile definition for the Lotus Notes Mail channel.
Code Example 5-40 Display Profile Definition for LotusNotesMail Channel
<Channel name="LotusNotesMail" provider="LotusNotesMailProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the LotusNotesMail channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
numberHeaders
Specifies the limit of message headers to display. Hard limit is 30.
displayHeaders
Specifies if the headers should be shown.
sentFolderCopy
Specifies if sent messages should be copied to the Sent Folder.
sortOrder
Specifies the sort order for the messages currently displayed.
For more information on all the Lotus Notes Mail channel properties, see "LotusNotesMailProvider."
Mail Channel
The Mail channel displays messages from the Sun One Messaging Server.
Code Example 5-41 shows the display profile definition for the Mail channel.
Code Example 5-41 Display Profile Definition for Mail Channel
<Channel name="Mail" provider="MailProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the Mail channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
numberHeaders
Specifies the limit of message headers to display. Hard limit is 30.
displayHeaders
Specifies if the headers should be shown.
sentFolderCopy
Specifies if sent messages should be copied to the Sent Folder.
sortOrder
Specifies the sort order for the messages currently displayed.
For more information on all the Mail channel properties, see "MailProvider."
Mail Check Channel
The mail check channel gives information about a user’s mail status.
Code Example 5-42 shows the display profile definition for the mail check channel.
Code Example 5-42 Display Profile Definition for the Mail Check Channel
<Channel name="MailCheck" provider="MailCheckProvider">
<Properties>
<String name="refreshTime" value="120"/>
<String name="Title" value="My Unread Mail Count"/>
<String name="IMAPServerName" value=""/>
<String name="IMAPUserId" value=""/>
<String name="IMAPPassword" value=""/>
</Properties>
</Channel>
The following MailCheck channel properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
IMAPServerName
Specifies the IMAP server name.
IMAPUserId
Specifies the IMAP user name.
IMAPPassword
Specifies the IMAP password.
These user specified properties overwrite the corresponding properties in MailCheckProvider. For more information on the other MailCheck channel properties, see "MailCheckProvider."
MS Exchange Address Book Channel
The MS Exchange Address Book channel displays entries from the users MS Exchange server address book functionality.
Code Example 5-43 shows the display profile definition for the MS Exchange Address Book channel.
Code Example 5-43 Display Profile Definition for MSExchangeAddressBook Channel
<Channel name="MSExchangeAddressBook" provider="MSExchangeAddressBookProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following MSExchangeAddressBook channel properties can be configured by the user. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
displayEntries
Specifies if the entries should be shown.
numEntries
Specifies the number of entries to display.
sunPortalABSortBy
Specifies the value of the entries displayed to sort by.
sunPortalABSortOrder
Specifies the sort order of the entries displayed.
For more information on all the MS Exchange Address Book channel properties, see "MSExchangeAddressBookProvider."
MS Exchange Calendar Channel
The MS Exchange Calendar channel displays events and task from the MS Exchange server calender functionality.
Code Example 5-44 shows the display profile definition for the MS Exchange Calendar channel.
Code Example 5-44 Display Profile Definition for MSExchangeCalendar Channel
<Channel name="MSExchangeCalendar" provider="MSExchangeCalendarProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the MSExchangeCalendar channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
For more information on all the MS Exchange Calendar channel properties, see "MSExchangeCalendarProvider."
MS Exchange Mail Channel
The MS Exchange Mail channel displays messages from the MS Exchange server mail functionality.
Code Example 5-45 shows the display profile definition for the MS Exchange Mail channel.
Code Example 5-45 Display Profile Definition for MSExchangeMail Channel
<Channel name="MSExchangeMail" provider="MSExchangeMailProvider">
<Properties/>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the MSExchangeMail channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
numberHeaders
Specifies the limit of message headers to display. Hard limit is 30.
displayHeaders
Specifies if the headers should be shown.
sentFolderCopy
Specifies if sent messages should be copied to the Sent Folder.
sortOrder
Specifies the sort order for the messages currently displayed.
For more information on all the MS Exchange Mail channel properties, see "MSExchangeMailProvider."
Notes Channel
The notes channel enables users to post messages to other users’ notes channel on their Desktop.
Code Example 5-46 shows the display profile definition for the notes channel.
Code Example 5-46 Display Profile Definition for the Notes Channel
<Channel name="Notes" provider="NotesProvider">
<Properties>
<String name="refreshTime" value="600"/>
<String name="title" value="Notes"/>
<String name="description" value="Notes Channel Description"/>
<String name="lines" value="4"/>
<String name="maxLines" value="4"/>
</Properties>
</Channel>
The following is a list of the properties specific to the notes channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
lines
4, which starts the channel with four lines of notes.
maxLines
4, which provides for a maximum of four lines of notes.
These channel-defined properties overwrite the corresponding properties in NotesProvider. For more information on the other Notes channel properties, see "NotesProvider."
The notes themselves are stored and read in a text file in the following format:
userid | date | message
where | is the delimiter and date is long value which denotes the time elapsed in milliseconds since Jan. 1, 1970. Here is a sample of what may be included in the notes.txt file:
User1|1007159465858|Message to Portal Desktop Team : Lets meet today at 2PM
User2|1007159465858|Information related to the project is availble at home page
Search Channel
The search channel can provide three interfaces:
- Basic search - Enables users to type keywords in a search box. Document and category matches are then displayed.
- Advanced search - Enables users to search for documents based on author, title, and URL. Users can also search on the last-modified date of a document. Advanced search is a more complex user interface, and supports customization.
- Browse - Enables users to browse the category tree and search within categories.
Code Example 5-47 shows the display profile definition for the search channel.
Code Example 5-47 Display Profile Definition for the Search Channel
<Channel name="Search" provider="SearchProvider">
<Properties>
<String name="title" value="Search"/>
<String name="description" value="This is a search provider example"/>
<String name="searchServer" value=""/>
<String name="width" value="full_top"/>
</Properties>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the Search channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
windowPref
Specifies how to launch a link.
viewHits
Specifies the number of hits that should be displayed per page.
categorySearch
Specifies whether or not to display the category search by default.
defaultMode
Specifies the default search mode.
For more information on all the Search channel properties, see "SearchProvider."
Sample Simple Web Service Channel
The Simple Web Service channel makes simple web services available to an end user channel. This pre-configured channel is always bound to a single web service and associated method by using channel initialization properties. This channel type enables end users to cache (or store) default values for the web service input parameters by using the Edit button functionality on the channel.
Code Example 5-48 shows the display profile definition for a sample simple web service channel.
Code Example 5-48 Display Profile Definition for SampleSimpleWebService Channel
<Channel name="SampleSimpleWebService" provider="SimpleWebServiceProvider">
<Properties>
<String name="title" value="Pre-Configured Web Service Channel"/>
<String name="description" value="This is a sample pre-configured Simple Web Service Channel"/>
<String name="wsdlURL" value="file:///etc/opt/SUNWps/desktop/default/SampleSimpleWebService/CurrencyExchangeServic e.wsdl"/>
<String name="editPage" value="webserviceInputEdit.jsp"/>
<String name="methodName" value="getRate"/>
<Boolean name="isDefaultShowOutput" value="false"/>
<Boolean name="isDefaultAvailable" value="true"/>
<Collection name="defaultInput">
<String name="country1" value="usa"/>
<String name="country2" value="japan"/>
</Collection>
</Properties>
</Channel>
Properties can be configured from the administration console. By default, there are no user editable properties for this channel. For more information on all the SampleSimpleWebService channel properties, see "SimpleWebServiceProvider."
Sample Simple Web Service Configurable Channel
The Simple Web Service Configurable channel is similar to the Simple Web Service channel, except that it permits users to use the Edit function to change URLs and methods, hence, it is configurable. This channel does not enable end users to cache (or store) default values for the web service input parameters.
Code Example 5-49 shows the display profile definition for a sample simple web service configurable channel.
Code Example 5-49 Display Profile Definition for SampleSimpleWebServiceConfigurable Channel
<Channel name="SampleSimpleWebServiceConfigurable" provider="SimpleWebServiceConfigurableProvider">
<Properties>
<String name="title" value="Sample Configurable Simple Web Service Channel"/>
<String name="description" value="This is a sample configurable Simple Web Service Channel"/>
<String name="wsdlURL" value="file:///etc/opt/SUNWps/desktop/default/SampleSimpleWebServiceConfigurable/CurrencyEx changeService.wsdl"/>
<String name="methodName" value="getRate"/>
</Properties>
</Channel>
Properties can be configured from the administration console. The following is a list of user editable properties in the SimpleWebServiceConfigurable channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
String name="wsdlURL"
Specifies the URL to web service WSDL.
String name="methodName"
Specifies the web service method name that is going to be executed.
For more information on all the SampleSimpleWebServiceConfigurable channel properties, see "SimpleWebServiceConfigurableProvider."
Subscriptions Channel
The subscriptions channel shows subscriptions by types which can be category subscriptions, discussion subscriptions, and saved searches. For each type of subscription, the following is displayed:
Code Example 5-50 shows the display profile definition for the subscriptions channel.
Code Example 5-50 Subscriptions Channel Display Profile
<Channel name="Subscriptions" provider="SubscriptionsProvider">
<Properties>
<String name="title" value="Subscriptions"/>
<String name="description" value="This is a Subscriptions provider example" />
</Properties>
</Channel>
Sample RSS Channel
The RSS channel uses an XSLT (style sheet) file to transform the RSS XML file into HTML. By using different XSL files the same output can be changed and presented differently for different channels.
Code Example 5-51 shows the display profile definition for the RSS channel.
Code Example 5-51 Display Profile Definition for SampleRSS Channel
<Channel name="SampleRSS" provider="XMLProvider">
<Properties>
<String name="title" value="Sun ONE Information"/>
<String name="description" value="Company News"/>
<Integer name="timeout" value="100"/>
<String name="width" value="thin" advanced="true"/>
<Boolean name="isEditable" value="false" advanced="true"/>
<ConditionalProperties condition="locale" value="en" >
<String name="helpURL" value="en/desktop/rsschann.htm" advanced="true"/>
</ConditionalProperties>
<String name="helpURL" value="en/desktop/rsschann.htm" advanced="true"/>
<String name="fontFace1" value="Sans-serif"/>
<String name="productName" value="Sun ONE Portal Server"/>
<String name="refreshTime" value="600" advanced="true"/>
<String name="url" value="file:///etc/opt/SUNWps/desktop/default/SampleRSS/SampleRSS.rss"/>
<String name="xslFileName" value="rss.xsl"/>
</Properties>
</Channel>
The RSS channel sets many more properties than most channels, due to the fact that there is no RSS provider and the channel uses XMLProvider. Because of this, the RSS channel needs to override most of the properties set by XMLProvider. See "XMLProvider" for more information.
You cannot set isEditable to true for the RSS channel, as the channel is not editable and there are no getEdit() and processEdit() methods defined.
User Information Channel
The user information channel displays a greeting, the user’s name, time zone, locale and has access to the user’s IMAP and SMTP data. The user information channel enables users to view and edit user information.
Code Example 5-52 shows the display profile definition for the user information channel.
Code Example 5-52 Display Profile Definition for UserInfo Channel
<Channel name="UserInfo" provider="UserInfoProvider">
<Properties>
<String name="refreshTime" value="60" advanced="true"/>
<String name="title" value="User Information"/>
<String name="description" value="View/Edit User Information"/>
</Properties>
</Channel>
In this example, only refreshTime, title, and description properties are defined. Properties can be configured from the administration console. The following is a list of default user editable properties in the UserInfo channel. This two column table lists the properties in the first (left) column and a brief description in the second (right) column.
cn
Specifies the tag name for greeting.
greeting
Specifies the tag name for common name.
timezone
Specifies the tag module to get and set time zone list.
preferredlocale
Specifies the user’s preferred locale.
sunPortalNetmailIMAPServerName
Specifies the IMAP server name.
sunPortalNetmailSMTPServerName
Specifies the SMTP server name.
sunPortalNetmailIMAPUserid
Specifies the IMAP user ID.
sunPortalNetmailIMAPPassword
Specifies the IMAP password.
membershipOriginalPassword
Specifies the tag name for the original membership password.
membershipNewPassword
Specifies the tag name for membership new password.
membershipConfirmPassword
Specifies the tag name for membership confirm password.
For more information on all the UserInfo channel properties, see "UserInfoProvider."
Sample URL Scraper Channel
The URL scraper channel takes a URL, opens a connection to the URL, and reads the contents into a buffer. The contents are then sent to the Desktop Servlet, which displays it. URLScraperProvider uses the Rewriter to construct the URL information as long as the MIME type of the file is one that the Rewriter supports. (Rewriter rules are expressed using an XML document but the URL scraper channel does not use an XML file to describe how to display it.)
Code Example 5-53 shows the display profile definition for a sample URL scraper channel.
Code Example 5-53 Display Profile Definition for SampleURLScraper Channel
<Channel name="SampleURLScraper" provider="URLScraperProvider">
<Properties>
<String name="refreshTime" value="600" advanced="true"/>
<String name="url" value="file:///etc/opt/SUNWps/desktop/default/SampleURLScraper/ipinfo.html"/>
<String name="title" value="URL Scraper Channel"/>
</Properties>
</Channel>
Properties can be configured from the administration console. By default, there are no user editable properties for this channel. For more information on all the URLScraper channel properties, see "URLScraperProvider."
Creating a URL scraper channel is a quick and simple way to add content to the Desktop, as no coding is required. However, the following scenarios are inappropriate for the URL scraper channel:
- If the site being scraped requires HTTP basic authentication.
- If an edit function is required so that users can customize the channel.
- If the data comes from a non-HTML, non-web server source, for example, a database or mail server.
- If the data needs to be reformatted in some way for the channel.
- If a more efficient solution is required. The URL scraper channel does a request and look up for every Desktop display and user.
For situations similar to these, use the PAPI. See the Sun ONE Portal Server 6.2 Developer’s Guide for more information.
Sample XML Channel
The XML channel provides a flexible way to include XML content in the Desktop, enabling an XML document to be transformed into HTML using an XSL (style sheet) file.
Code Example 5-54 shows the display profile definition for the sample XML channel.
Code Example 5-54 Display Profile Definition for SampleXML Channel
<Channel name="SampleXML" provider="XMLProvider">
<Properties>
<String name="refreshTime" value="600" advanced="true"/>
<String name="title" value="XML Test Channel"/>
<String name="description" value="This is a test of the XML Provider system"/>
<String name="url" value="file:///etc/opt/SUNWps/desktop/sampleportal/SampleXML/getQuotes.xml"/>
<String name="xslFileName" value="stockquote.xsl"/>
</Properties>
</Channel>
Properties can be configured from the administration console. By default, there are no user editable properties for this channel. For more information on all the SampleXML channel properties, see "XMLProvider."