Portal Site Management
-
Upload
bettlebrox -
Category
Technology
-
view
388 -
download
2
description
Transcript of Portal Site Management
Site Management in
Jetspeed-2
Roger Ruttimann
Jetspeed-2 Enterprise Portals
November, 2005 2
Overview
Site Structure
Folder, Menus, PSML and portlets
Using Site Manger
Demo
Agenda
November, 2005 3
Site Structure
Pages in PSML format are stored in folders
Pages reference portlets and define security constraints, layouts, decorators for portlets.
Metadata in folders to define the display order
Detailed documentation inhttp://portals.apache.org/jetspeed-2/guides/guide-psml.html
Overview
November, 2005 4
Folders
PSML and metadata files are organized in a folder structure
Site Management
<folder> <!-- folder description --> <title>Root Folder</title> <metadata name="title" xml:lang="fr">Répertoire racine</metadata> <metadata name="title" xml:lang="es">Carpeta raiz</metadata> <!-- order of documents in folder --> <document-order>Jetspeed2.link</document-order> <document-order>Jetspeed2Wiki.link</document-order> <document-order>apache_portals.link</document-order> <document-order>apache.link</document-order>
November, 2005 5
Menus
Menus can be defined for folders and pages
<!-- portal site menus --> <menu name="page-navigations"> <separator> <text>Top Pages</text> <metadata name="text" xml:lang="fr">Page haut</metadata> <metadata name="text" xml:lang="es">Páginas más populares</metadata> </separator> <options>/Administrative</options> <separator> <text>Profiled Pages</text> <metadata name="text" xml:lang="es">Páginas del Perfil</metadata> </separator> <options regexp="true">/p[0-9][0-9][0-9].psml</options> <separator> <text>Non Java Pages</text> <metadata name="text" xml:lang="es">Ejemplos sin java</metadata> </separator> <options>/non-java</options> </menu>
November, 2005 6
Security
Security constraint in each page<!-- security constraints --> <security-constraints> <security-constraints-ref>public-view</security-constraints-ref> </security-constraints>
November, 2005 7
Security Constraint Definitions
Global page.security file:
<security-constraints-def name="admin">
<security-constraint>
<roles>admin</roles>
<permissions>view, edit</permissions>
</security-constraint>
</security-constraints-def>
<global-security-constraints-ref>admin</global-security-constraints-ref>
November, 2005 8
PSML
Description of a page. Content can be defined in fragments.
Allows to define layouts, decorators, links, menus, metadata and portlets
By default PSML are persisted as files on the file system
Simple configuration change to persist the PSML to the database instead of the file system.
Site Management
November, 2005 9
Use Database persistence for PSML pages
Running J2 in a clustered environment requires pages to be in a database.
Changing PageManger to use database:– Comment out Update the spring assembly page-manager.xml. Comment out
CastorXmlPageManger section:
<bean id="org.apache.jetspeed.page.PageManager"
name="pageManager"
class="org.apache.jetspeed.page.psml.CastorXmlPageManager">
Page Manger
November, 2005 10
Portlets
PSML pages reference portlets
Define decorators and positions of the portlets in the page
Site Management
<fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn"> <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector"> <property layout="OneColumn" name="row" value="0"/> </fragment> <fragment id="100345" type="layout" name="jetspeed-layouts::VelocityTwoColumns"> <property layout="OneColumn" name="row" value="1"/> <property layout="TwoColumns" name="sizes" value="33%,66%"/> <fragment id="100121" type="portlet" name="j2-admin::LoginPortlet"> <property layout="TwoColumns" name="row" value="0"/> <property layout="TwoColumns" name="column" value="0"/> </fragment> <fragment id="100171" type="portlet" name="demo::UserInfoTest"> <property layout="TwoColumns" name="row" value="0"/> <property layout="TwoColumns" name="column" value="1"/> </fragment> </fragment> </fragment>
November, 2005 11
Site Manager
Site Manager part of the admin portlets
Site Manger Portlet allows users to add and edit pages
Adding portlets need to go to the page and enter edit mode
Ongoing work for an Ajax based Customizer. Will include the page creation and the portlet configuration in one page.
Site Management
November, 2005 12
Site Manager Portlet
November, 2005 13
Demo
The demo shows the following:
Create new page
Add portlets
Change layouts and configure portlets
Site Management
November, 2005 14
Jetspeed Desktop
Jetspeed Desktop
The Jetspeed desktop combines server-side Jetspeed AJAX services with client-side services. It is a key change to the way Jetspeed presents its data. With the Jetspeed portal, it’s a server-centric application, with all requests and user interaction going back to the server. The user experience is driven by the HTTP page paradigm.
The Jetspeed Desktop solution is a client-side solution. The user interface is controlled by the client-side:
1. Aggregation of portlets
2. Customization
With the Jetspeed Desktop, the server side does what it does best: handles the portal model, user information and persistence of state.
November, 2005 15
Jetspeed Desktop Aggregation
Jetspeed Desktop
Each portlet makes its own HTTP request for its own content. The request delivers the content for only that one portlet. The portlet aggregation component is moved to the client side, making ‘AJAX’ requests for each portlet’s content on the page.
This may lead to an overall slightly slower response time for the first hit on a page due to the increased number of HTTP requests, but subsequent interaction is usually much more responsive.
The “portlet pipeline” is used to make the AJAX requests.
November, 2005 16
The Desktop today
• The desktop is undergoing a lot of new development and changing just about everyday. Still early in development cycle…
Jetspeed Desktop
November, 2005 17
Jetspeed Desktop Customization
Jetspeed Desktop
Customization is well-suited for the Desktop solution. Customization should always be available, if you have secured access. The customization changes are persisted over the Jetspeed AJAX API to the server, but all client interaction such as drag and drop or best handled on the client-side. Here we right-click on the tab menu to get the portlet-selector:
November, 2005 18
Jetspeed Desktop Portlet Selector
• The Jetspeed Desktop Portlet Selector supports drag and drop of portlets onto the desktop. The Portlet Selector is a light-weight popup window (not a real browser popup):
Jetspeed Desktop
November, 2005 19
Desktop Drag and Drop
• Dropping the portlet on the page (better suited for a demo…):
Jetspeed Desktop
November, 2005 20
Moving and Resizing
• Portlets can also be moved or resized (better suited for a demo…):
Jetspeed Desktop
November, 2005 21
Themes
• The desktop still uses PSML as its instructions for which portlets appear on the page. However, page and portlet decorators are no longer relevant on the desktop. Instead we use “themes”. There are currently 2 themes available (tigris, blue)
Jetspeed Desktop
November, 2005 22
Desktop System Portlets
• Portlet Selector – select then drag and drop portlets
• My Portal (edit your view of the site) i.e. folders pages, links **
• My Admin – same as My Portal, but manage the whole site **
• Portlet Finder – like the Portlet Selector, allows you to search **
• My Dashboards – alternative to Jetspeed standard menus **
• My Desktop – manage your desktop, change themes, colour, skins **
** NOT YET WRITTEN
Jetspeed Desktop
November, 2005 23
Future Directions
• We are exploring development of the system administrative portlets with client-side widgets and DOJO
Jetspeed Desktop
November, 2005 24
Google Map Portlet
Jetspeed Desktop