Hi Kevin
I've written a short document on howto write the deafult.psml document.
If its O.K. please put it in the doc folder.
--------------------------------------------------------------------
Portlet configuration - The default.psml file
The xml file and the way it needs to be written is described below.
The outermost tags / directives are
<portlets user="default">
</portlets>
You need to put in a controller to tell the Jetspeed engine what
controller to use.
The default controller is the CardPortletController.
If you want to have panes like the ones seen on amazon.com you need to
use a control with the controller.
This is the PanedPortletControl. This helps to make tabs; although in
Jetspeed they are known as panes. The new default.psml is now like so
<portlets user="default">
<controller
name="org.apache.jetspeed.portal.controllers.CardPortletController">
<parameter name="parameter" value="pane"/>
</controller>
<control
name="org.apache.jetspeed.portal.controls.PanedPortletControl"/>
</portlets>
After the control come the skins - This is for the way your page ends up
looking. You can define the colors that your webpage will use.
<portlets user="default">
<controller
name="org.apache.jetspeed.portal.controllers.CardPortletController">
<parameter name="parameter" value="pane"/>
</controller>
<control
name="org.apache.jetspeed.portal.controls.PanedPortletControl"/>
<skin>
<property name="selected-color" value="#990000"/>
<property name="background-color" value="EEEEEE"/>
<property name="title-color" value="#gray"/>
</skin>
</portlets>
These are the tags / directives. Now comes the real thing - the actual
content that you want to show. When you come to this part you also need
to put in metainfo tags which contain the title tags. These are the tags
that are displayed on the index page tabs / panes.
<metainfo>
<title>This will show up on the pane / tab which is displayed on the
index page
and subsequently when the page is maximized
</title>
</metainfo>
There are four types of controllers
CardPortletController - This lets you layout things with tabs or panes.
GridPortletController - This lets you output everything like a grid. You
need to specify
The number of rows, numbers of columns, the columnWidth
RowColumnPortletController - This handles horizontal / vertical vectors
of content
To add content that has two columns
You add the outer portlet directives. Then you add two nested portlet
directives.
Each one needs a controller
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.RowColumnPortletController>
<parameter name="sizes" value="50%,50%"/>
<parameter name="mode" value="row"/>
</controller>
<!-As before the metainfo and skin directives too �
<metainfo>
<title>To show up on the pane</title>
</metainfo>
<!-To control the appearance of the layout -->
<skin>
<parameter>
<parameter>
</skin>
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.FlowPortletController"/>
<layout position="1"/>
<entry type="ref" parent="JetspeedContent">
<layout position="0"/>
</entry>
<entry type="ref" parent="whatever1">
<layout position="1"/>
</entry>
<entry type="ref" parent=" whatever2">
<layout position="2"/>
</entry>
<entry type="ref" parent=" whatever3">
<layout position="3"/>
</entry>
</portlets>
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.FlowPortletController"/>
<layout position="2"/>
<entry type="ref" parent="something0">
<layout position="0"/>
</entry>
<entry type="ref" parent=" something1">
<layout position="1"/>
</entry>
<entry type="ref" parent=" something0">
<layout position="2"/>
</entry>
</portlets>
</portlets>
Now you just need to put this inside the main file described so that the
complete file looks like this.
Remember all the entries that are inside the portlets tags need to have
a parent that exists inside the portletregistry.psml
The final file
<portlets user="default">
<controller
name="org.apache.jetspeed.portal.controllers.CardPortletController">
<parameter name="parameter" value="pane"/>
</controller>
<control
name="org.apache.jetspeed.portal.controls.PanedPortletControl"/>
<skin>
<property name="selected-color" value="#990000"/>
<property name="background-color" value="EEEEEE"/>
<property name="title-color" value="#gray"/>
</skin>
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.RowColumnPortletController>
<parameter name="sizes" value="50%,50%"/>
<parameter name="mode" value="row"/>
</controller>
<!-As before the metainfo and skin directives too �
<metainfo>
<title>To show up on the pane</title>
</metainfo>
<!-To control the appearance of the layout -->
<skin>
</skin>
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.FlowPortletController"/>
<layout position="1"/>
<entry type="ref" parent="JetspeedContent">
<layout position="0"/>
</entry>
<entry type="ref" parent="whatever1">
<layout position="1"/>
</entry>
<entry type="ref" parent=" whatever2">
<layout position="2"/>
</entry>
<entry type="ref" parent=" whatever3">
<layout position="3"/>
</entry>
</portlets>
<portlets>
<controller
name="org.apache.jetspeed.portal.controllers.FlowPortletController"/>
<layout position="2"/>
<entry type="ref" parent="something0">
<layout position="0"/>
</entry>
<entry type="ref" parent=" something1">
<layout position="1"/>
</entry>
<entry type="ref" parent=" something0">
<layout position="2"/>
</entry>
</portlets>
</portlets>
</portlets>
You can have as many <portlets></portlets> directives as the number of
panes you intend to have on the index page. You'll need to define
everything for each portlet as defined.
Depending on what you need to display you'll pick RowColumn, Grid or the
Card PortletController.
--------------------------------------------------------------------------------
Rajesh
--
Is wisdom knowing you�ll never know,
Or knowing you�ve always known?
-- Donald Marsh
--
--------------------------------------------------------------
Please read the FAQ! <http://java.apache.org/faq/>
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Archives and Other: <http://java.apache.org/main/mail.html>
Problems?: [EMAIL PROTECTED]