Chapter 1 Understanding the Community Sample Portal
This chapter contains the following:
Overview of the Community Sample
The portal collaboration feature allows end users to create and join communities,
and interact with other community members through a set of collaborative portlet applications
(community services). Communities are, therefore, an association of members and services.
These services are: file share, shared tasks & events, polls & surveys, wiki,
and discussions.
Communities are created and managed by end-users. The user can be in one or
more roles (visitor, owner, member). The owner of the community can remove the community
or transfer ownership of the community.
The portal administrator can define community templates that defines the layout
mechanism and the available services, and end-users can create communities within
categories using the available template(s). See Chapter 7, Community Template for more information. Users must join to take part in community
collaboration. All communities are public, in that any user may join a community.
An end-user can
-
Search for a community based on the community name and description.
Then the user can join a community that is discovered via searching.
-
Browse through community names and descriptions based on categories.
Then the user can join a community that is discovered via browsing.
Each portal will have its own set of communities. Communities within a portal
will only be visible to users in that portal. The community users are stored in a
relational database, one database instance per portal (see Chapter 6, Open-Source Java DB for more information).
Community Sample Portal
This section provides an overview of the Community Sample portal:
Community Sample Desktop
After installing the Portal Server software, the welcome page at http://host:port/portal/welcome/index.jsp includes links to the three sample portals. Select the Community Sample
to view the Community Sample portal anonymous desktop.
The Community Sample desktop anonymous page, by default, includes:
-
A customizable header with logo, title, help button, and date/time
info and a footer with links to Sun resources
-
A breadcrumb with link to get back to the Welcome page
The Communities Home page can be viewed by logging in as test/test. To participate in the Community Sample, users must be in the CommunitySample organization. The Communities home page allows users to
browse and/or search communities, view list of their communities, preview and visit
interesting communities, and create communities using the community portlets. For
more information on the community portlets, see Community Portlets. This page includes:
For each community that the user is a member of, they will have a community
page that allows the user to interact with the services. This is the page that allows
the user to leave the community and remove the community if the user is the owner.
The community visitor page allows users to preview a community and join the community.
For more information on customizing the user interface of the sample portal,
see Chapter 8, Customizing the Community Sample User Interface.
Content Filepath
After installation and configuration of the Community Sample PAR file, content
for Community Sample portal is deployed in the following directories.
-
PortalServer-DataDir/portals/portal-ID/communitytemplates/
-
This directory contains the templates for the Community Sample and
the associated properties files for the templates.
-
PortalServer-DataDir/portals/portal-ID/desktop/community_sample/
-
Provides dynamic content including JavaServerTM Pages
(JSPTM), tag library for Sun JavaTM Web
User Interface Components' theme (portletSetupTags.tld), properties
file, and containers.
-
PortalServer-DataDir/portals/portal-ID/desktop/classes/CommunitySamplePortal.properties
-
Provides properties for the Community Sample. If you modify properties
in this file, restart the server for the new values to take effect.
-
PortalServer-DataDir/portals/portal-ID/web-src/community
-
Provides static content including JavaScript, images, style sheet
(css/desktop.css), and channel content.
Community Sample Portal Channels
This section includes description of the community:
Community Services
A community service is an application that runs in a community context to provide
per-community collaborative functions to end-users. Community services are portlets
or providers. The Portal Server includes the following community services:
- File sharing
-
The File sharing (JSF-based) application offer a hierarchical view
of a file repository similar to File System browsing applications provided by the
OS. Through this hierarchical view, the user can browse the repository, download files,
upload files, create folders, delete and rename files and folders, copy and move files
and folders. All these user interactions are done through a portlet.
This service can be customized by modifying the defaulttheme.jar file
(see Chapter 9, Customizing Sun Java Web User Interface Theme) and default deployment values can be modified in the tokens.properties file (see Appendix F, Tokens for File Sharing Portlet).
- Survey
-
The Survey (JSF-based) application allows users to create surveys
for the community, answer the surveys , then review and search survey results in the
portlet. There are two types of users for the Survey portlet application: end user
and community administrator. All members of a community can create a survey.
This service can be customized by modifying the defaulttheme.jar file
(see Chapter 9, Customizing Sun Java Web User Interface Theme) and default deployment values can be modified in the tokens.properties file (see Appendix E, Tokens for Surveys and Polls Portlet).
- Polls
-
The Poll (JSF-based) application allows users to create polls for
the community, answer the polls, then review and search poll results in the portlet.
There are two types of users for the Poll portlet application: end user and community
administrator. All members of a community can create a poll.
This service can be customized by modifying the defaulttheme.jar file
(see Chapter 9, Customizing Sun Java Web User Interface Theme) and default deployment values can be modified in the tokens.properties file (see Appendix E, Tokens for Surveys and Polls Portlet).
- Shared Events
-
The Shared Events application allows users to create, update, delete,
search Calendar events for the community this portlet serves. The portlet allows users
to create, retrieve, update, and delete Calendar events. Only users within the community
have access to the shared calendar associated to the community.
This service can be customized by modifying the defaulttheme.jar file
(see Chapter 9, Customizing Sun Java Web User Interface Theme) and default deployment values can be modified in the tokens.properties file (see Appendix D, Tokens for Shared Events Portlet).
- Shared Tasks
-
The Shared Tasks (JSF-based) application allows users to create,
update, delete, search Calendar tasks for the community this portlet serves. The portlet
allow users to perform create, retrieve, update, and delete operations on Calendar
tasks. Only users within the community have access to the shared calendar associated
to the community.
This service can be customized by modifying the defaulttheme.jar file
(see Chapter 9, Customizing Sun Java Web User Interface Theme) and default deployment values can be modified in the tokens.properties file (see Appendix C, Tokens for Shared Tasks Portlet).
- Search
-
The Search service allows community users to search for content within
a community. This channel is provider-based.
- Discussions
-
This application allows discussions in the context of the community.
It also supports HTML discussions with links. This channel is provider-based.
- Subscriptions
-
This application allows community user's to subscribe to discussions
out of the community discussion channel, and to save searches from the community search
channel. It differs from the developer sample, in that it does not allow category
subscriptions. This channel is provider-based.
- Wiki
-
This application supports wiki-based communities and portlets. An
entire community can be set up as a wiki (with portlets within it) and single portlets
within a community can also be wikis. The wiki portlet supports both text and HTML
modes. An HTML wiki uses the Xinha HTML editor and includes a portlet picker for easy
selection of portlets to include within a wiki page. The Wiki can be configured to
use either files or database at the back-end. The Developer Sample desktop also uses
a wiki portlet in its wiki tab.
The Wiki portlet uses JSPWiki (http://jspwiki.org) and the HTML editor uses Xinha (http://xinha.python-hosting.com).
For more information on:
Most of these services use Sun Java Web User Interface Components. These services
allow for customizations via modifications to stylesheet. See Chapter 9, Customizing Sun Java Web User Interface Theme for more information.
Community Portlets
The community portlets bundled with the Portal Server implement the community
infrastructure.
- Community portlet
-
This application allows users to create communities
- Role Management portlet
-
This application lists all registered members of the community and
allows the community owner to add and delete users from the community. Community owners
can also transfer ownership of the community to a registered member via this portlet.
Only community owners are given access to the Role management portlet and can delete
a community. Registered users can join any community and leave a community at any
time.