Web Space Server – Intro. • SocialNetworking for the Enterprise • Find people with the answers across organizations, silos, and hierarchies, and boost productivity in distributed teams. • Widgets for Team/Work Collaboration • Bundled Productivity Widget Suites to get work done (CMS, Workflow), and Information Widget Suite for Effective Collaboration (blogs, wikis). • Widgets on the Enterprise Extranet • Build stickiness into your intranet with Google Gadgets, YouTube, and Facebook widgets.
WSS Features • Identity-based content delivery • User-managed Web spaces, including user self-Web publishing and user access controls • Rapid and simple Web site design tools make it possible to quickly set up Web sites for content, collaboration, and interactivity, with out-of-the-box templates
WSS Features – contd. • Built-in collaboration, with bundled wiki, blog, task management, calendaring, document sharing, polls, IM, and email applications • Document and Web content management system with workflow, staging, and publication tools • Localized in 22 languages; Japanese (ja) and Chinese (zh_CN) localizations are directly supported by Sun Microsystems; localizations in other languages are community driven
WSS Features – contd. • Fully internationalized, which makes it possible to add new languages • Syndicate portlets and widgets with REST • Develop widgets using the JSR 286 portlet standard as well as scripting standards such as Ruby, PHP, and JMaki. • Complete Service Oriented Architecture (SOA) support.
Taking the Quick Tour • Everything in Web Space Server is designed around the concept of Portals, Pages and Portlets. • Portlets are small applications that can be either standalone or shared among community members. • Portals are custom collections of pages, and pages are containers into which applications or portlets are placed. • A single portal can contain multiple pages, and a single page can contain multiple applications.
WSS Terminology • Portlet - pluggable software components that are managed and displayed in a Web portal. WSS portlets conform to JSR286 standards • Private / Public Pages - Every individual user account in a Web Space Server site contains public pages and private pages. • Pages that can be accessed by a guest user are public pages. • Pages that can only be accessed by logging in to a user account are private pages.
WSS Terminology – contd. • Widget - Widgets are similar to portlets, except that unlike portlets, widgets are created using a programming language other than Java, such as PHP or Ruby. • Theme - The “look and feel” settings that are applied to a portal page. Themes can be applied sitewide by a Web Space Server site administrator or on a page-by-page basis by registered users. • Color Scheme – One theme can have multiple color schemes.
WSS Terminology – contd. • Layout Template - A scheme that defines the general layout of portlets and widgets on a portal page. As with themes, layout templates can be applied by site administrators and registered users. • Guest - A user who does not have an account on a given Web Space Server site. Typically, guest users have limited ability to view or modify content on a Web Space Server site. • User - A person who is registered on a Web Space Server site.
WSS Terminology – contd. • User Group - A grouping of users; members of a user group typically share common sets of access permissions. • Community - A collection of users sharing common interests or goals; community members typically share a common set of portlets and pages. Eg, a community might have a wiki that is not available to users outside the community. Multiple user groups can coexist within a given community.
WSS Terminology – contd. • Organization - A hierarchical collection of users, user groups, and communities. Multiple communities can coexist within a given organization. • User Role - Permissions and access rights defined for a given user; typically maps to rights within groups, communities, and organizations.
Web Space Server Portal Adminstration
WSS – Preparing the ground • Creating an user account • Create an open id at http://myopenid.com • Choose Sign In from the welcome menu. • Click on the OpenID link. • Enter the OpenID URL and click Sign In. • This will take you to the OpenID site. • Authenticate your OpenID and click Save. • Register the OpenID by selectingMy Account –> Identification –> OpenID.
Password Policies • Defining password policies for users • Login to Web Space Server as Admin User. • Choose Control Panel—>Portal—>Password Policies from the welcome menu. • Click the Add button to add a new password policy. • Click Save. • To assign users or organizations to the password policy, click the Actions button corresponding to the password policy and select Assign Members from the menu.
Welcome Menu for Admin User • Login to Web Space Server as Admin User. • Control Panel • My Account • Add Application • Layout Template • Manage Pages • Toggle Edit Controls • My Places
Control Panel – Super User • My Account – complete account settings • My Pages – users private and public pages • Content – all applications for Content MS • Portal – Manage users, organizations, communities, user groups, roles, settings, monitoring, plugin configuration. • Server • Server Administration • Portal Instances • Plugins Installation • WSRP Consumer • WSRP Producer
Experience all options • Add application – add portlets to the pages • Layout template – choose for the available set of layout templates (10 default) • Manage Pages – for the guest community and specify friendly URLs. • Toggle Edit controls – Mainly for testing purpose • My Places – Navigate to all communities an user belongs.
Basic Administration - Test • Exercise – change come of the user settings, email address and password. • Change language settings of the user. • Login as the user you’ve just created and see what are the options you see under, • Main navigation dock • User’s control panel • My Places • Find out the reasons why you see only less options now.
Pointing WSS to MySQL • Refer to page 32 of portal administration guide. You ‘ve to edit portal-ext.properties. • Follow the steps mentioned there in order to connect WSS to a production ready MySQL database server. • Create an empty database “lportal” • create database lportal character set utf8; • Restart WSS “asadmin start-domain domain1” • Check the lportal database now with 200+ tables • Two categories of tables – system and portlet.
Super User – Server Administration • Resources – Status and actions • Log levels – need to be programmed • System Properties – 205 of them • Portal Properties – 717 of them • Shutdown – unique in WSS. • OpenOffice integration for document conversion – OO service should be up and running on port 8100.
Super user – Plugins intallation • Portlet plugins – 102 of them • Theme plugins – 5 of them • Layout template plugins – 10 of them • Hooks plugins – none by default • Webs plugins – none by default • Link to “Install More” – opens “Plugins Installer” portlet.
Plugins Installer portlet • Browse Repository – list plugins from the official plugins repository. • Upload File – Hot deploy a new plugins to your WSS from your local machine • Download File – Hot deploy a plugin after downloading from and external source. • Configuration – server settings for plugin deployment.
Portal Instances • WSS helps you to host multiple portal instances on a single glassfish WSS installation. • Logically you can host hundreds of websites (portals) on a single server. • Let us create a new instance (example1.com) and hence-forth use our new portal to do all other portal administration features.
Portal Instances – contd. • To see this instance in action, you have to edit drivers/etc/hosts file. • Add an new entry, save and close the file • 127.0.0.1 example1.com • Go to http://example1.com:8080. Login with firstname.lastname@example.org / password: admin • Navigate thru the control Panel
Portal Instances – contd. • Add the “Announcement” portlet onto the Welcome page and change the page layout to 2 column (30/70). • Differentiate between this new instance and the default instance. • Create another new instance “example2.com” (do it yourself) • In reality, you can create many websites (portals) in this manner. • Note that none of the “Server Administration” features are available for the instance admin.
Customizing the new instance • New settings for your portal – building the site identity • General settings • Display settings • Interface to store business assets. • Email Addresses • Addresses • Websites • Phone Numbers
Portal Customization – contd. • Authentication – General, LDAP, CAS, NTML, OpenID, OpenSSO, SiteMinder • Default User Associations – Communities, roles and user groups. • Reserved Screen Names and email addresses • Mail Host names • Email Notifications – General, Account created, password changed. • Try yourself – change the favicon of the site. (follow the steps given in page 40)
Private and Public pages • Guest community – 1 public page (default) and no private pages. • My Community – every user will have his own community with a set of public pages and private pages. • URL for user’s public pages, • http://<base-url>/web/<screen-name>/home • URL for user’s private pages, • http://<base-url>/user/<screen-name>/home
Manage Pages • Through “Manage Pages” the administrator of the portal / community / organization can manage the pages. • Configure new pages / child pages. • Look and feel for the entire set of pages OR for a particular page. • Export / Import the contents and settings of a community in the form of LAR file.
Manage Pages – contd. • Page settings • Page Name • HTML title • Page type – Portlet (default), panel, Embedded, Web Content, URL and Link to Page • Icon for the page – browse and upload favicon • Copy from another page.
Portlet Configuration • Changing the Portlet Title • Portlet states – Normal, Maximized, Minimized • Look and Feel setting for a portlet – Portlet configuration, Styles – background, border, Margin & Padding, Advanced (over-ride default CSS, WAP Styling) • Portlet Configuration – Setup, Permissions and Sharing. • Sharing – Any website, Facebook & Friends. • Remove portlet from the page
Localization for WSS • Setting of language by the admin at portal level • Setting of preferred language by the user under “My Account” • Adding a new language support – refer to page 50 of “Portal Administration Guide” • Remove localization support for some languages • Enable guest user to select the browser language. • Understanding the precedence hierarchy of Language.properties. • Changing the existing language entries.
Roles and Permissions • Roles and permissions can be administered by using the Control Panel and the My Communities Portlet. • The admin user needs to administer roles and permissions for the resources he need to manage to build a site. • Roles and permissions can be “assigned” on users, user groups, communities and organizations.
Admin Interface • You can choose Control Panel from the welcome menu to perform various administration tasks. • Control Panel provides an interface for creating and maintaining the following: • Users • Organizations • User Groups • Roles • In other words, the admin user can use the Control Panel to create the portal structure, implement security, and administer users.
Portal Resources - Definition • Portals are accessed by Users. • Users can be collected into User Groups. • Users can belong to Organizations. • Organizations can be grouped into hierarchies. • Users, Groups and Organizations can belong to Communities that have a common interest.
Classification of Portal users • A portal has users and there are various ways those users can be grouped together. • Some of these groupings follow an administratively organized hierarchy, and other groupings may be done by the users themselves • Example - different users from multiple organizations starting a community called ‘Cat Lovers' that has a common interest in cats.
Classification of Portal users • And other groupings may be done administratively via User Groups or Roles for other functions that may cut across the various organizations of the portal • Example - a Message Board Administrators group made up of users from multiple communities and organizations, allowing those users to administer any message board in the portal.
Containment of Resources • In the illustration above, each arrow may be read using the words “can be a member of”. • So this means that, • Organizations can be members of Communities • Communities can be members of Roles • Users can be members of anything, and so on. • Though this seems very complex, it provides a powerful mechanism for portal administrators to configure portal resources and security in a consistent and robust manner.
User Groups • User Groups are arbitrary groupings of users. • These groups are created by portal administrators to group users who do not have an obvious organizational or community-based attribute or aspect that brings them together. • Groups can have permissions, much like roles. • You would therefore use a User Group to grant permissions to any arbitrary list of users.
User Groups - example • A User Group called “People Who Have Access to My Stuff” could be created, and permission to a particular Document Library folder could be granted to that User Group. • This list of users could be members of separate Organizations, Communities, or Roles, who happen to also have access to this 'Document Library' folder which is on some personal, community, or organization page that is accessible to them in the portal. • Illustration – define user groups and assign members to the user group.
Communities • Communities are collections of Users who have a common interest • “Cat Lovers” community • “Cricket Players” community • Web Space Server's default pages are in the 'Guest' community, because everyone-whether they are anonymous or members of the portal has common interest in the default public pages of your site.
Types of communities There are three types of Communities, • Open – allows portal users to join and leave the Community whenever they want to, provided they have access to a Communities portlet from which to do this • Restricted – Users be added to the Community by a community administrator. Users may use the 'Communities' portlet to request membership • Private – do not allow users to join and to leave the community.
Organizations • Organizations are hierarchical collections of Users. • They are one of the two types of portal resources that can have pages. • There is also a special type of Organization called 'Location', which can define where users are specifically located. • There are two kinds of Organizations: • Regular • Location • The organization of type Regular can have sub-organizations, but an organization of type Location is not allowed to have sub-organizations.
Users and User Roles There are 3 kinds of Roles, • Regular • Organization • Community Note: A user generally has some Regular, Organization, and Community roles. Manage: Control Panel—>Portal—>Users
Regular Roles • Guest, User, Power User,Owner, and Administrator are the different Regular Roles. • All the user with login access to Web Space Server are assigned with the 'User' role. • It defines the difference between a Guest and a person who has a user ID in the portal. • By default, all users are also assigned the 'Power User' role. • This role by default gives users their own personal pages (both public and private) where they can place portlets.
Organization Roles • You can assign organization roles to users who are members of a organization. • Organization Administrator • Organization Member • Organization Owner
Community Roles • You can assign community roles to users who are members of a community. • Community Administrator • Community Member • Community Owner • Generally, User and Power User are the default roles of a user. You can assign more roles to a user.
Plugins • In Web Space Server, you can activate or deactivate plugins, or you can install new plugins (ONLY for omni admin). • Plugins help in extending the functionality of an application. • You can extend or restrict the accessibility of a plugin to different users, by adding or removing roles to the plugin. • Quiz – what is the other way you can assign permissions on a plugin (portlet).
Custom Attributes • You can add custom attributes on these entities, • User • Organization • With custom attributes you can “extend” these entities. • The concept of custom attributes of WSS works based on “expando” • To learn more about expando, follow this link, • http://www.liferay.com/web/rauge/blog/-/blogs/715049 • Exercise – add some custom attributes to the “User” entity and try creating a new user.