You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2002/11/14 23:47:24 UTC
cvs commit: jakarta-jetspeed/docs/site registry.html registry_syntax.html registry_xml.html
taylor 2002/11/14 14:47:23
Added: docs/site registry.html registry_syntax.html
registry_xml.html
Log:
turned on registry docs (possibly before its time, sorry Raphael) i needed a link to reference in the tutorial
Revision Changes Path
1.1 jakarta-jetspeed/docs/site/registry.html
Index: registry.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- Content Stylesheet for Site -->
<!-- start the processing -->
<!-- ====================================================================== -->
<!-- Main Page Section -->
<!-- ====================================================================== -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Jetspeed - Registry</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
<table border="0" width="100%" cellspacing="0">
<!-- TOP IMAGE -->
<tr>
<td align="left">
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a>
</td>
<td align="right">
<a href="http://jakarta.apache.org/jetspeed/"><img src="./images/logo.gif" alt="Jetspeed" border="0"/></a>
</td>
</tr>
</table>
<table border="0" width="100%" cellspacing="4">
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr>
<!-- LEFT SIDE NAVIGATION -->
<td width="20%" valign="top" nowrap="true">
<p><strong>Essentials</strong></p>
<ul>
<li> <a href="./index.html">Overview</a>
</li>
<li> <a href="./features.html">Features</a>
</li>
<li> <a href="./license.html">License</a>
</li>
<li> <a href="./install.html">Installation</a>
</li>
<li> <a href="./faq.html">FAQ</a>
</li>
<li> <a href="./usejetspeed.html">Sample Sites</a>
</li>
<li> <a href="./resources.html">Resources</a>
</li>
<li> <a href="./todo.html">Todo</a>
</li>
<li> <a href="./changes.html">Changes</a>
</li>
</ul>
<p><strong>Download</strong></p>
<ul>
<li> <a href="http://jakarta.apache.org/site/binindex.html">Binaries</a>
</li>
<li> <a href="http://jakarta.apache.org/site/sourceindex.html">Source Code</a>
</li>
<li> <a href="./supporting-projects.html">Supporting Projects</a>
</li>
</ul>
<p><strong>Documentation</strong></p>
<ul>
<li> <a href="./config_guide.html">Configuration Guide</a>
</li>
<li> <a href="http://jakarta.apache.org/jetspeed/api/index.html">Javadocs</a>
</li>
<li> <a href="./application-development.html">Development</a>
</li>
<li> <a href="http://www.bluesunrise.com/jetspeed-docs/PortletHowTo.htm">Portlet Howto</a>
</li>
<li> <a href="./catalog.html">Portlet Catalog</a>
</li>
<li> <a href="http://mml.hpl.hp.com:9090/jetspeed/trailmap/index.html">Jetspeed Trailmap</a>
</li>
</ul>
<p><strong>Components</strong></p>
<ul>
<li> <a href="./registry.html">Registry</a>
</li>
<li> <a href="./security.html">Security</a>
</li>
<li> <a href="./content-syndication.html">Syndication</a>
</li>
<li> <a href="./wap.html">WAP</a>
</li>
<li> <a href="./customizer.html">Customization</a>
</li>
<li> <a href="./diskcache.html">Cache</a>
</li>
<li> <a href="./psml.html">PSML</a>
</li>
</ul>
<p><strong>Get Involved</strong></p>
<ul>
<li> <a href="./contributors.html">Contributors</a>
</li>
<li> <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repository</a>
</li>
<li> <a href="./branches.html">CVS Branches</a>
</li>
<li> <a href="./code-standards.html">Coding Spec</a>
</li>
<li> <a href="http://nagoya.apache.org/bugzilla/query.cgi?product=Jetspeed">Bug Database</a>
</li>
</ul>
</td>
<td width="80%" align="left" valign="top">
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The Registry stores most of dynamically configurable elemnts you can add to the engine.
Among these elements, you'll find the list of available portlets, the layout elements
definitions and the known client defintions
</p>
<p>
This registry uses the pluggable Turbien service architecture so that you can select from
different implementations depending on your requirements. There are currently 2 available
implementations by default:
</p>
<ul>
<li><a href="registry_xml.html">a XML file based implementation</a></li>
<li>an OJB based, SQL database driven implementation</li>
</ul>
<p>
This document will present the different elements encountered in the registry and the
base API.
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Elements of the Registry"><strong>Elements of the Registry</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
Currently the Registry can store 7 different types of elements used within the Jetspeed engine
</p>
<table>
<tr>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Element
</font>
</td>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Description
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Portlets</strong></p>
<a href="registry_syntax.html#Portlet">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The basic elements to store within Registry are the portlet definitions that define
which components are available to be placed on the users portal pages.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Controls</strong></p>
<a href="registry_syntax.html#Control">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The controls are the elements of the global layout that decorate a portlet on a page
and provides access to the portal actions defined for the portlet, like customization.
Only controls defined the Registry can be used in the user pages.
<p>
For more information on controls, check out the <a href="">Jetspeed Layout overview</a>.
</p>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Controllers</strong></p>
<a href="registry_syntax.html#Controller">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The controllers define how the portlets are displayed on a portal page (in columns, panes
, etc...) and allow more or less sophisticated customization of a user page.
By default, all the controllers defined in the registry are available for users to customize
their page layout.
<p>
For more information on controllers, check out the <a href="">Jetspeed Layout overview</a>.
</p>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Skins</strong></p>
<a href="registry_syntax.html#Skin">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The skins define the color schemes used by the portal on a specific user page (or part
of a page)
<p>
For more information on skins, check out the <a href="">Jetspeed Layout overview</a>.
</p>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Media Types</strong></p>
<a href="registry_syntax.html#Media">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The media-types define the different variations of markup rendering supported by
this specific instance of Jetspeed. Working in cunjunction with the Clients defintion,
it enables you to control how the different user-agents access your portal
<p>
For more information on client handling, check out the <a href="">Client detection</a>.
</p>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Clients</strong></p>
<a href="registry_syntax.html#Client">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The clients definitions entries are used to describe user agent capabilities and in
cunjunction with Media types information define how the clients access the portal
<p>
For more information on client handling, check out the <a href="">Client detection</a>.
</p>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Security</strong></p>
<a href="registry_syntax.html#Client">View XML syntax</a>
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The security entries define standard set of permissions that can be associated to
page elements and portal actions to protect their access.
<p>
For more information, check out the <a href="security.html">Security</a> information.
</p>
</font>
</td>
</tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Administrating the Registry"><strong>Administrating the Registry</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
Currently, there are no complete GUI for administrating the registry elements in Jetspeed,
you can only browse the contents of the different registries by using the
<a href="administration.html">administration console</a>. In most case you'll currently need to
use implementation specific ways to manipulate your entries, like editing the XML files
directly.
</p>
<p>
An effort is currently underway to create complete administration tools for registry
manipulation, so watch
<a href="http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11738">this space</a> !
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Registry API"><strong>Registry API</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The Registry system has a very simple API, based on one Turbine service and an
interface based object model.
</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Object Model"><strong>Object Model</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>The object model API is defined in the following package:</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
org.apache.jetspeed.om.registry
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<p>
This API defines the operations available on the different registries as well as the
the structure of of the object stored within them. The <code>Registry</code> and
<code>RegistryEntry</code> interfaces define the standard methods of a registry or an entry.
</p>
<p>
For some registries, sub-interfaces declare additionnal methods that are only meaningful for
a specific type of entry. For example the <code>ClientRegistry</code> interface adds the
capacity to search for a specific entry matching a given capability.
</p>
<p>
A default implementation of this object model can be found in the base subpackage of the
registry object model. This implementation is used by the XML Registry service implementation.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Registry Service"><strong>Registry Service</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>RegistryService</code> is a Turbine service that manages the persistence of
the different registries and instanciates them. A commodity static facade is provided
to simplify access to this service.
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
Registry service package:
org.apache.jetspeed.services.registry
Registry service interface:
org.apache.jetspeed.services.registry.RegsitryService
Registry service facade:
org.apache.jetspeed.services.Registry
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<p>
The <code>RegistryService</code> redefines several of the basic operations of the
registry object model (add or remove entries) as a convenience to
</p>
<p>
For some registries, sub-interfaces declare additionnal methods that are only meaningful for
a specific type of entry. For example the <code>ClientRegistry</code> interface adds the
capacity to search for a specific entry matching a given capability.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
Here are some code fragments on how to use the registry service for basic operations
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
import org.apache.jetspeed.services.registry.Registry;
import org.apache.jetspeed.om.registry.PortletRegistry;
import org.apache.jetspeed.om.registry.PortletEntry;
import org.apache.jetspeed.om.registry.RegistryException;
import org.apache.turbine.util.Log;
//create a new entry
PortletEntry myEntry = (PortletEntry)Registry.createEntry(Registry.PORTLET);
myEntry.setName("myEntry");
myEntry.setHidden(true);
myEntry.setType(PortletEntry.TYPE_INSTANCE);
myEntry.setClassname("com.mycompany.myportlet");
//Add it to the Registry
try
{
Registry.addEntry(Registry.PORTLET, myEntry);
}
catch (RegistryException e)
{
Log.error("Impossible to add entry in registry" + myEntry, e);
}
//Retrieve it and update
myEntry = (PortletEntry)Registry.getEntry(Registry.PORTLET, "myEntry");
myEntry.addParameter("_control", "ClearControl");
myEntry.addParameter("myParam", "myValue");
//Then delete it from registry
try
{
Registry.removeEntry(Registry.PORTLET, myEntry);
}
catch (RegistryException e)
{
Log.error("Impossible to remove entry from registry" + myEntry, e);
}
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<p>
The <code>RegistryService</code> redefines several of the basic operations of the
registry object model (add or remove entries) as a convenience to
</p>
<p>
For some registries, sub-interfaces declare additionnal methods that are only meaningful for
a specific type of entry. For example the <code>ClientRegistry</code> interface adds the
capacity to search for a specific entry matching a given capability.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
</td>
</tr>
<!-- FOOTER -->
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr><td colspan="2">
<div align="center"><font color="#525D76" size="-1"><em>
Copyright © 1999-2002, Apache Software Foundation
</em></font></div>
</td></tr>
</table>
</body>
</html>
<!-- end the processing -->
1.1 jakarta-jetspeed/docs/site/registry_syntax.html
Index: registry_syntax.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- Content Stylesheet for Site -->
<!-- start the processing -->
<!-- ====================================================================== -->
<!-- Main Page Section -->
<!-- ====================================================================== -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Jetspeed - XML Registry syntax</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
<table border="0" width="100%" cellspacing="0">
<!-- TOP IMAGE -->
<tr>
<td align="left">
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a>
</td>
<td align="right">
<a href="http://jakarta.apache.org/jetspeed/"><img src="./images/logo.gif" alt="Jetspeed" border="0"/></a>
</td>
</tr>
</table>
<table border="0" width="100%" cellspacing="4">
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr>
<!-- LEFT SIDE NAVIGATION -->
<td width="20%" valign="top" nowrap="true">
<p><strong>Essentials</strong></p>
<ul>
<li> <a href="./index.html">Overview</a>
</li>
<li> <a href="./features.html">Features</a>
</li>
<li> <a href="./license.html">License</a>
</li>
<li> <a href="./install.html">Installation</a>
</li>
<li> <a href="./faq.html">FAQ</a>
</li>
<li> <a href="./usejetspeed.html">Sample Sites</a>
</li>
<li> <a href="./resources.html">Resources</a>
</li>
<li> <a href="./todo.html">Todo</a>
</li>
<li> <a href="./changes.html">Changes</a>
</li>
</ul>
<p><strong>Download</strong></p>
<ul>
<li> <a href="http://jakarta.apache.org/site/binindex.html">Binaries</a>
</li>
<li> <a href="http://jakarta.apache.org/site/sourceindex.html">Source Code</a>
</li>
<li> <a href="./supporting-projects.html">Supporting Projects</a>
</li>
</ul>
<p><strong>Documentation</strong></p>
<ul>
<li> <a href="./config_guide.html">Configuration Guide</a>
</li>
<li> <a href="http://jakarta.apache.org/jetspeed/api/index.html">Javadocs</a>
</li>
<li> <a href="./application-development.html">Development</a>
</li>
<li> <a href="http://www.bluesunrise.com/jetspeed-docs/PortletHowTo.htm">Portlet Howto</a>
</li>
<li> <a href="./catalog.html">Portlet Catalog</a>
</li>
<li> <a href="http://mml.hpl.hp.com:9090/jetspeed/trailmap/index.html">Jetspeed Trailmap</a>
</li>
</ul>
<p><strong>Components</strong></p>
<ul>
<li> <a href="./registry.html">Registry</a>
</li>
<li> <a href="./security.html">Security</a>
</li>
<li> <a href="./content-syndication.html">Syndication</a>
</li>
<li> <a href="./wap.html">WAP</a>
</li>
<li> <a href="./customizer.html">Customization</a>
</li>
<li> <a href="./diskcache.html">Cache</a>
</li>
<li> <a href="./psml.html">PSML</a>
</li>
</ul>
<p><strong>Get Involved</strong></p>
<ul>
<li> <a href="./contributors.html">Contributors</a>
</li>
<li> <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repository</a>
</li>
<li> <a href="./branches.html">CVS Branches</a>
</li>
<li> <a href="./code-standards.html">Coding Spec</a>
</li>
<li> <a href="http://nagoya.apache.org/bugzilla/query.cgi?product=Jetspeed">Bug Database</a>
</li>
</ul>
</td>
<td width="80%" align="left" valign="top">
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="XML Registry Syntax"><strong>XML Registry Syntax</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
This document presents the XML syntax used by the default XML Registry
implementation.
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Table of contents"><strong>Table of contents</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<ul>
<li><a href="#Registry">Registry</a></li>
<li><a href="#Portlet">Portlets</a></li>
<li><a href="#Control">Controls</a></li>
<li><a href="#Controller">Controllers</a></li>
<li><a href="#Skin">Skins</a></li>
<li><a href="#Media">Media Types</a></li>
<li><a href="#Client">Clients</a></li>
<li><a href="#Security">Security entries</a></li>
</ul>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Registry"><strong>Registry</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The registry element needs to be the root elements of any registry fragment.
It can contains any of the currently defined entries.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT registry ( portlet-entry*,
portlet-control-entry*,
portlet-controller-entry*,
skin-entry*,
media-type-entry*,
client-entry*,
security-entry*
)>
<!ATTLIST registry
version CDATA "1.0">
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Portlet"><strong>Portlet</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>portlet-entry</code> element is the main element encountered in the Registry.
It describes a Portlet object that can be used within a portal page description.
</p>
<p>
There are 3 main types of <code>portlet-entry</code> definitions, controlled by
the value of the <code>type</code> attribute in the entry:
</p>
<dl>
<dt><strong>abstract</strong></dt>
<dd>
<p>These portlets cannot be used directly in a portlet page and simply provide
a configuration template for creating ref portlet-entry.</p>
<p>The <code>classname</code> element is required in an abstract portlet</p>
</dd>
<dt><strong>instance</strong></dt>
<dd>
<p>
These are the default portlet entries created within the registry and describe
standard Java component complying to the Portlet API that can be added directly
within a portal page.
</p>
<p>The <code>classname</code> element is required in an instance portlet</p>
</dd>
<dt><strong>ref</strong></dt>
<dd>
<p>
These entries are the more frequently encountered definitions in the registry.
They define portlets that reference another existing portlet entry in the registry,
yet override or complement the previous definitions with additionnal parameters.
</p>
<p>
The <code>parent</code> attribute is required in a ref portlet and must refer another
existing abstract or instance portlet, but not another ref portlet.<br />
The <code>classname</code> element should not occur within a ref prtlet definition.
</p>
</dd>
</dl>
<p>
In addition to the <code>type</code> attribute, portlet entries can also use standard
attributes and elements that can be used in most other registry entries and are explained
<a href="registry_syntax.html#Standard">here</a>
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT portlet-entry ( security?,
security-ref?,
meta-info?,
classname?,
parameter*,
media-type*,
url?,
category* )>
<!ATTLIST portlet-entry
name ID #REQUIRED
hidden ( true | false ) "false"
type ( abstract | instance | ref ) "instance"
application ( true | false ) "false"
parent IDREF #IMPLIED >
<!ELEMENT parameter ( security?, security-ref?, meta-info? )>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED
type (int | boolean | string | list) "string"
cachedOnName ( true | false ) "false"
cachedOnValue ( true | false ) "false" >
<!ELEMENT classname CDATA>
<!ELEMENT meta-info ( title?, description?, image? ) >
<!ELEMENT title CDATA>
<!ELEMENT description CDATA>
<!ELEMENT image CDATA>
<!ELEMENT media-type EMPTY>
<!ATTLIST media-type
ref IDREF #REQUIRED >
<!ELEMENT url CDATA>
<!ATTLIST url
cachedOnUrl ( true | false ) "false" >
<!ELEMENT category CDATA>
<!ATTLIST category
group CDATA #IMPLIED >
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<h2>Parameter handling</h2>
<p>
Some parameters have special meanings when encountered in a <code>portlet-entry</code>
defintion:
</p>
<table>
<tr>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Name
</font>
</td>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Minimum<br />Version
</font>
</td>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Usage
</font>
</td>
</tr>
<tr>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
_showtitlebar
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
1.4b1
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Will cause the default portlet control not to draw any title bar around the portlet.
This behavior is deprecated 1.4b2 and replaced by the more powerful <code>_control</code>
attribute associated with a no title bar control like "ClearControl"
</font>
</td>
</tr>
<tr>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
_control
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
1.4b2
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Will cause any new instance of this <code>portlet-entry</code> to be associated with the
control specified in the parameter value when added to a portal page.
</font>
</td>
</tr>
</table>
<p>
Also note that any parameter starting with a "_" will not be ignored by the default
portlet customizer.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The first example presents a minimal abstract type portlet definition.
Note that it's defined as hidden to prevent the entry from showing up
when browsing for portlets
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<portlet-entry name="Velocity" type="abstract" hidden="true">
<classname>org.apache.jetspeed.portal.portlets.VelocityPortlet</classname>
</portlet-entry>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<p>
The second example provides a standard instance type portlet definition.
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<portlet-entry name="JetspeedContent" type="instance">
<meta-info>
<title>Jetspeed Content Example</title>
<description>Example of Jetspeed Content portlet.</description>
</meta-info>
<classname>org.apache.jetspeed.portal.portlets.JetspeedContent</classname>
<parameter name="provider-name" value="jetspeed" hidden="false"/>
<media-type ref="html"/>
</portlet-entry>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<p>
The third example shows how to reference the above abstract definition
and add additionnal parameters that will specify the actual behavior of
the portlet.
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<portlet-entry name="SecurityExample" type="ref" parent="Velocity">
<security-ref parent="user-view_admin-all"/>
<meta-info>
<title>SecurityExample</title>
<description>Simple Security Example</description>
</meta-info>
<parameter name="template" value="SecurityExample" hidden="false"/>
<media-type ref="html"/>
<category>demo</category>
<category>velocity.demo</category>
</portlet-entry>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Control"><strong>Control</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>portlet-control-entry</code> element defines
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT portlet-control-entry ( security?,
security-ref?,
meta-info?,
classname?,
parameter*,
media-type+ )>
<!ATTLIST portlet-control-entry
name ID #REQUIRED
hidden ( true | false ) "false" >
<!ELEMENT parameter ( security?, security-ref?, meta-info? )>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED
type (int | boolean | string | list) "string" >
<!ELEMENT classname CDATA>
<!ELEMENT meta-info ( title?, description?, image? ) >
<!ELEMENT title CDATA>
<!ELEMENT description CDATA>
<!ELEMENT image CDATA>
<!ELEMENT media-type EMPTY>
<!ATTLIST media-type
ref IDREF #REQUIRED >
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Controller"><strong>Controller</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>portlet-controller-entry</code> element
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT portlet-controller-entry ( parameter*, media-type+ )>
<!ATTLIST portlet-controller-entry
name ID #REQUIRED
hidden ( true | false ) "false" >
<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED
type (int | boolean | string | list) "string" >
<!ELEMENT media-type EMPTY>
<!ATTLIST media-type
ref IDREF #REQUIRED >
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Skin"><strong>Skin</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>skin-entry</code> element
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT skin-entry ( property+ )>
<!ATTLIST skin-entry
name ID #REQUIRED
hidden ( true | false ) "false" >
<!ELEMENT property EMPTY>
<!ATTLIST property
name CDATA #REQUIRED
value CDATA #REQUIRED
type (int | boolean | string | list) "string" >
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Media"><strong>Media</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>media-type-entry</code> element
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT media-type-entry ( mime-type,
character-set?,
capability-map?
)>
<!ATTLIST media-type-entry
name ID #REQUIRED
hidden ( true | false ) "false" >
<!ELEMENT mime-type CDATA>
<!ELEMENT character-set CDATA>
<!ELEMENT capability-map ( capability* )>
<!ELEMENT capability CDATA>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Client"><strong>Client</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>client-entry</code> element
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT client-entry ( user-agent-pattern,
manufacturer,
model,
version,
mimetype-map,
capability-map?
)>
<!ATTLIST client-entry
name ID #REQUIRED
hidden ( true | false ) "false" >
<!ELEMENT user-agent-pattern CDATA>
<!ELEMENT manufacturer CDATA>
<!ELEMENT model CDATA>
<!ELEMENT version CDATA>
<!ELEMENT mimetype-map ( mimetype+ )>
<!ELEMENT mimetype CDATA>
<!ELEMENT capability-map ( capability* )>
<!ELEMENT capability CDATA>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Security"><strong>Security</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The <code>security-entry</code> element is used to describe standard sets
of access rules that can be used to protect portal elements or actions.
These security entry are referenced by the other types of registry entries
by using the <code>security-ref</code> element.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="DTD"><strong>DTD</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<!ELEMENT security-entry ( meta-info?, access+ )>
<!ATTLIST security-entry
name ID #REQUIRED >
<!ELEMENT access (allow-if*, allow-if-owner? )>
<!ATTLIST access
action CDATA #REQUIRED >
<!ELEMENT allow-if EMPTY>
<!ATTLIST allow-if
role CDATA #REQUIRED >
<!ELEMENT allow-if-owner EMPTY>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage notes"><strong>Usage notes</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Examples"><strong>Examples</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
<security-entry name="user-view_admin-all">
<meta-info>
<title>Users+V and Admin+C</title>
<description>Users view, Admin full access.</description>
</meta-info>
<access action="*">
<allow-if role="admin"/>
</access>
<access action="view">
<allow-if role="user"/>
</access>
</security-entry>
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
</td>
</tr>
<!-- FOOTER -->
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr><td colspan="2">
<div align="center"><font color="#525D76" size="-1"><em>
Copyright © 1999-2002, Apache Software Foundation
</em></font></div>
</td></tr>
</table>
</body>
</html>
<!-- end the processing -->
1.1 jakarta-jetspeed/docs/site/registry_xml.html
Index: registry_xml.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- Content Stylesheet for Site -->
<!-- start the processing -->
<!-- ====================================================================== -->
<!-- Main Page Section -->
<!-- ====================================================================== -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Jetspeed - XML Registry</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
<table border="0" width="100%" cellspacing="0">
<!-- TOP IMAGE -->
<tr>
<td align="left">
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a>
</td>
<td align="right">
<a href="http://jakarta.apache.org/jetspeed/"><img src="./images/logo.gif" alt="Jetspeed" border="0"/></a>
</td>
</tr>
</table>
<table border="0" width="100%" cellspacing="4">
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr>
<!-- LEFT SIDE NAVIGATION -->
<td width="20%" valign="top" nowrap="true">
<p><strong>Essentials</strong></p>
<ul>
<li> <a href="./index.html">Overview</a>
</li>
<li> <a href="./features.html">Features</a>
</li>
<li> <a href="./license.html">License</a>
</li>
<li> <a href="./install.html">Installation</a>
</li>
<li> <a href="./faq.html">FAQ</a>
</li>
<li> <a href="./usejetspeed.html">Sample Sites</a>
</li>
<li> <a href="./resources.html">Resources</a>
</li>
<li> <a href="./todo.html">Todo</a>
</li>
<li> <a href="./changes.html">Changes</a>
</li>
</ul>
<p><strong>Download</strong></p>
<ul>
<li> <a href="http://jakarta.apache.org/site/binindex.html">Binaries</a>
</li>
<li> <a href="http://jakarta.apache.org/site/sourceindex.html">Source Code</a>
</li>
<li> <a href="./supporting-projects.html">Supporting Projects</a>
</li>
</ul>
<p><strong>Documentation</strong></p>
<ul>
<li> <a href="./config_guide.html">Configuration Guide</a>
</li>
<li> <a href="http://jakarta.apache.org/jetspeed/api/index.html">Javadocs</a>
</li>
<li> <a href="./application-development.html">Development</a>
</li>
<li> <a href="http://www.bluesunrise.com/jetspeed-docs/PortletHowTo.htm">Portlet Howto</a>
</li>
<li> <a href="./catalog.html">Portlet Catalog</a>
</li>
<li> <a href="http://mml.hpl.hp.com:9090/jetspeed/trailmap/index.html">Jetspeed Trailmap</a>
</li>
</ul>
<p><strong>Components</strong></p>
<ul>
<li> <a href="./registry.html">Registry</a>
</li>
<li> <a href="./security.html">Security</a>
</li>
<li> <a href="./content-syndication.html">Syndication</a>
</li>
<li> <a href="./wap.html">WAP</a>
</li>
<li> <a href="./customizer.html">Customization</a>
</li>
<li> <a href="./diskcache.html">Cache</a>
</li>
<li> <a href="./psml.html">PSML</a>
</li>
</ul>
<p><strong>Get Involved</strong></p>
<ul>
<li> <a href="./contributors.html">Contributors</a>
</li>
<li> <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repository</a>
</li>
<li> <a href="./branches.html">CVS Branches</a>
</li>
<li> <a href="./code-standards.html">Coding Spec</a>
</li>
<li> <a href="http://nagoya.apache.org/bugzilla/query.cgi?product=Jetspeed">Bug Database</a>
</li>
</ul>
</td>
<td width="80%" align="left" valign="top">
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="XML Registry implementation"><strong>XML Registry implementation</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
This document presents information related to the default XML Registry service
configuration and operation.
</p>
<p>
For a general description of the Registry usage and API, check the default
<a href="registry.html">Registry</a> presentation.
</p>
<p>
For a complete description of the XML syntax of the Registry, check the
<a href="registry_syntax.html">Registry XML Syntax</a> documentation.
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The XML Registry uses disk based XML files, called "Registry fragments", to store
its different entries. Upon startup, it will load all the fragments it can
find as referenced by its configuration and populate dynamic memory based Registries
of elements taht can be accessed through the Registry Service interface.
</p>
<p>
It will also periodically monitor the configured directory for any changes in
the registry fragments or new fragments to load.
</p>
<p>
Finally, if any memory based Registries are changed because of some entries are
added, set or removed programmatically, it will automatically save these changes
<strong>before</strong> loading any fragments modified on disk. It will also always save the
Registry state on shutdown.
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Usage recommendation"><strong>Usage recommendation</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
This registry is very easy to use because you can simply modify the XML files on disk
and they will be automatically loaded without stopping Jetspeed. It's also fast because
most of the work is entirely done is memory.
</p>
<p>
However, this implementation has 2 main limitations:
<ul>
<li>
it uses a lot of memory, especially if you define many entries through
syndication
</li>
<li>
it works only with a granularity of fragments and so may have some issues if you
deal with online and offline entry simulatenous modifications that affect the
same fragment.
</li>
</ul>
</p>
<p>
If any of these 2 limitations are a concern for you, we suggest that you use the
SQL based OJB implementation.
</p>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Configuration"><strong>Configuration</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The configuration of this implementation is very simple. Here's a copy of the
default configuration values in the JetspeedResources.properties file and a detailed
table of configuration options.
</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
#########################################
# Registry Service #
#########################################
services.Registry.classname=
org.apache.jetspeed.services.registry.CastorRegistryService
services.Registry.directory=/WEB-INF/conf/
services.Registry.mapping=/WEB-INF/conf/registry.xml
services.Registry.default.Portlet=local-portlets
services.Registry.default.PortletControl=local-managers
services.Registry.default.PortletController=local-managers
services.Registry.default.MediaType=local-medias
services.Registry.default.Skin=local-skins
services.Registry.default.Security=local-security
services.Registry.default.Client=local-clients
services.Registry.extension=.xreg
# Refresh rate, in seconds. 0 = no refresh. Min value = 60
services.Registry.refreshRate=300
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
<table>
<tr>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Option
</font>
</td>
<td bgcolor="#039acc" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
Descrption
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.classname
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The name of the implementation to use for the Registry service
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.directory
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The directory where the registry needs to look for fragments
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.extension
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Optional</strong><br /><strong>Default:</strong> .xreg</p>
All fragments that have this extension will be recognized by this
instance and loaded by the registry.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.refreshRate
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Optional</strong><br /><strong>Default:</strong> 300</p>
The number of seconds between disk refreshes. A value of 0 would mean that
there will be no refresh. A hard coded minimum of 10 seconds has been
implemented to avoid unnecessary disk usage.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.mapping
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p>
<strong>Optional</strong><br />
<strong>Default:</strong> ${webapp}/WEB-INF/conf/mapping.xml
</p>
The Castor mapping file that is used to load and save the XML files.<br />
<strong>
Do not change this file if you are unsure of what you are doing,
this may break your Jetspeed installation
</strong>
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.Portlet
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new Portlet entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.PortletControl
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new Control entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.PortletController
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new Controller entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.Skin
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new skin entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.MediaType
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new media type entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.Client
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new client entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.default.Security
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Required</strong></p>
The fragment that will store new security entries that have been added
programmatically.
</font>
</td>
</tr>
<tr>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
services.Registry.verbose
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
<p><strong>Optional</strong><br /><strong>Default:</strong> 0</p>
This option controls the amount of debugging output generated by the
regsitry if DEBUG logging mode is activated. 0 is minimum level and 3
is maximum verbosity. This is only useful for debugging purposes.
</font>
</td>
</tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Working with the registry"><strong>Working with the registry</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
This section presents some advices, tips and useful info for working with
the XML registry implementation.
</p>
<dl>
<dt><strong>Do not add new portlets to the standard files</strong></dt>
<dd>
<p>You should always create your own fragments, like the local-* fragments
defined in the configuration file. This will guarantee that your changes
won't be forgotten if you upgrade your installation.</p>
</dd>
<dt>
<strong>If you have both online and offline entry creations...</strong>
</dt>
<dd>
<p>You will save you a lot of headache by creating 2 local fragments, one for
storing the entries added online, like the local-* fragments, and the other
for manual update, like manual-* fragments. This will greatly minimize the
risk of change collisions.</p>
</dd>
<dt>
<strong>Always shut down properly your application server</strong>
</dt>
<dd>
<p>Since the registry is auto-saved on shutdown, you should ensure that it
completes properly or risk registry corruption and data loss.
For production environment, a daily backup of the configuration files through
a scheduled job is recommended to mitigate such risks.</p>
</dd>
<dt>
<strong>Fragments created by the feed daemon</strong>
</dt>
<dd>
<p>When using OCS syndication, the feed daemon will automatically create and
rewrite fragments that with the syndicated entries.</p>
<p>These fragments have the following name convention: feed_<feedname></p>
<p>Do not edit or modify these files as any changes will be lost when the feed
daemon will next update the feed</p>
</dd>
</dl>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
</td>
</tr>
<!-- FOOTER -->
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr><td colspan="2">
<div align="center"><font color="#525D76" size="-1"><em>
Copyright © 1999-2002, Apache Software Foundation
</em></font></div>
</td></tr>
</table>
</body>
</html>
<!-- end the processing -->
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>