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 2009/04/24 00:28:39 UTC

svn commit: r768082 [2/8] - in /portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs: ./ adminguide/ adminguide/images/ deployguide/ deployguide/images/ devguide/ usersguide/

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/permissions.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/permissions.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/permissions.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/permissions.xml Thu Apr 23 22:28:35 2009
@@ -66,7 +66,7 @@
                     It contains one portlet, Security Permissions, which allows you to set permissions for a role on three
                     different resource types: portlets, folders, and pages.
                 </p>
-                <p>TODO screenshot of permissions portlet</p>
+                <p><img src="images/perms-portlets.png" /></p>
                 <h4>The Permissions User Interface</h4>
                 <p>
                     The UI of the Permissions portlet is devided into the following sections:
@@ -81,7 +81,7 @@
                         <td>
                             <p>
                                 Select the resource type you want to define permissions for by
-                                clicking on the correpsonding tab.
+                                clicking on the corresponding tab.
                             </p>
                             <p>
                                 The resource types are:
@@ -91,7 +91,7 @@
                                 <li>Folders</li>
                                 <li>Pages</li>
                             </ul>
-                            <p>TODO: screenshot of tabs</p>
+                            <p><img src="images/perm-tabs.png" /></p>
                         </td>
                     </tr>
                     <tr>
@@ -101,7 +101,7 @@
                                 The list of permissions defined for the selected resource type. Each permission displays
                                 the resource name, the permitted actions, and the roles to which this permission applies.
                             </p>
-                            <p>TODO screenshot of permissions listing</p>
+                            <p><img src="images/perm-resources.png" /></p>
                         </td>
                     </tr>
                     <tr>
@@ -132,7 +132,7 @@
                                 Finally, in the top right corner of the form are four buttons to create a new permission, or
                                 to save, revert or delete the selected permission.
                             </p>
-                            <p>TODO screenshot of the permission edit form</p>
+                            <p><img src="images/perms-buttons.png" /></p>
                         </td>
                     </tr>
                 </table>

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/portlet-selector.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/portlet-selector.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/portlet-selector.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/portlet-selector.xml Thu Apr 23 22:28:35 2009
@@ -26,8 +26,55 @@
 	</properties>
 	<body>
 		<section name="Portlet Selector Administration Guide">
-<p> 
-</p>
-</section>
-	</body>
+			<subsection name="Adding Portlets">
+			<p>	
+				Enter edit mode of the portlet window and click on Add Portlet in the upper right. The Portlet Selector windows shows 
+				the portlets that are available for you to add.
+			</p>
+			<p>  
+				<img align="top" src="images/portletselector.png"/>
+			</p>
+			<p>
+				There are three main ways to locate a portlet.  
+			</p>
+			<p>
+				<table>
+					<tr>
+						<th>Method</th>
+						<th>Description</th>            
+					</tr>
+					<tr>
+						<td>Navigate</td>
+						<td>You may navigate through multiple pages by using the numbered links.</td>
+					</tr>
+					<tr>
+						<td>Search</td>
+						<td>A search field is provided for searching for a portlet by name.</td>
+					</tr>
+					<tr>
+						<td>Categories</td>
+						<td>Portlets are separated into clickable categories.</td>
+					</tr>
+				</table>
+			</p>
+			<p>
+				The portlet selector displays the name of the portlet, a brief description, an Add option and a counter of how many instances
+				of this portlet are currently running.  Clicking on the Add link will increase the counter by 1, but no other visible changes will 
+				occur at this time.
+			</p>
+			<p>
+				<img align="top" src="../usersguide/images/portletdetails.png"/>
+			</p>
+			<p>
+				Clicking on the [GoBack] option or arrow will bring you to the original customization window where you can see your portlets have been added
+				to your portlet window.  If you have changed your decorator from the default decorator, you may find that your new portlets are using a 
+				different decorator rather than the decorator you are now using.
+			</p>
+			<p>
+				You will need to return at one point to the original customization window before you see the restore option to leave the configuration
+				area. 
+			</p>
+			</subsection>
+		</section>
+ 	</body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/profiler.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/profiler.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/profiler.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/profiler.xml Thu Apr 23 22:28:35 2009
@@ -24,10 +24,553 @@
 			<person name="Jody McAlister" email="jmcalister@onehippo.com" />
 		</authors>
 	</properties>
-	<body>
-		<section name="Profiler Administration Guide">
+	 <body>
+<section name="Profiler Overview">
+<p>
+
+The Jetspeed Profiler is a portal resource location rule-based engine.
+The profiler locates the following kinds of portal resources:
+<ul>
+    <li>PSML pages</li>
+    <li>Folders</li>
+    <li>Menus</li>
+    <li>Links</li>
+</ul>
+</p>
+<p>
+	<img src="images/profadmin1.png" />
+</p>
+<p>
+When a request is received by the portal, the profiler will compute a normalized instruction set, known
+as a profile locator. The locator is then added to the request context, from which subsequent components on the
+Jetspeed pipeline, most notably the Page Manager and Portal Site components, can take the profile locator 
+and use it to find a requested resource. For example, the Page Manager uses the locator to find a page or folder. 
+The Portal Site component  uses the locator build the options on a menu. 
+</p>
+<p>    
+The profile locator is the output from the profiler. The input is a normalized set of runtime parameters and state.
+The profiler input is defined in profiling rules, and can be made of any Java class available on the pipeline. 
+Jetspeed comes with quite a few predefined rules for taking criteria from request parameters, HTTP headers,
+security information, language and session attributes. The profiler is invoked during the Jetspeed request 
+processing pipeline in the profiler valve. 
+</p>
+<p>  
+<img src="../devguide/images/profiler-pipeline.jpg" border="1"/>   
+</p>
+<p>  
+All of these runtime parameters are called the <i>profile criterion</i>, which the profiler uses to locate 
+portal resources. 
+</p>
+</section>
+<section name="Located Portal Resources: Pages">          
+<p>
+The Profiler searches over a directory tree of PSML pages trying to locate a 
+PSML page to be displayed. By default, this directory structure is found under WEB-INF/pages. 
+The pages directory can also be stored in the database. This directory structure, comprised of
+portal resources (pages, folders, menus, links), is a <i>physical</i> representation of the portal site.
+The Jetspeed team plans to also support <i>logical</i> views of the portal site in future releases.
+</p>
+<p>
+Analogous to a file system, there is one physical root to the portal site. However, using the concept of <i>subsites</i>, 
+the Jetspeed site can support entire subsites that are not visible to other subsites, or the main site.
+There are several reserved (system) directories standardized by the profiler:
+<table>
+    <tr>
+    <th>Reserved Folder</th>
+    <th>Description</th>
+    </tr>
+    <tr>
+        <td>_user</td>
+        <td>holds all user-specific folders and pages</td>
+    </tr>
+    <tr>
+        <td>_role</td>
+        <td>holds all role-organized folders and pages</td>
+    </tr>
+    <tr>
+        <td>_group</td>
+        <td>holds all group-organized folders and pages</td>
+    </tr>    
+    <tr>
+        <td>_subsite-root</td>
+        <td>contains complete subsite trees, exactly like root tree</td>
+    </tr>    
+</table>        
+<img src="../devguide/images/pages.jpg" border="1"/>           
+</p>    
+<p>By applying profiling rules, the profiler locates pages in the portal site directory.</p>
+</section>      
+<section name="Profiling Rules">
 <p> 
+        
+A ProfilingRule defines a list of criteria used when evaluating a request
+to determine the location of a specific resource. Profiling rules are 
+used by the profiler to locate portal resources
+based on the decoupled criteria for known portlet request data.
+A rule consists of an ordered list of criteria which should be applied
+in a given order. Following this rule's order, the profiling engine applies
+each criteria of the rule using a less-specific algorithm until the least 
+specific resource criterion is considered. When all criteria are exhausted, 
+the rule will fail and a fallback resource will be required.    
+</p>
+<subsection name='Rule Criteria'>
+<p>
+	<img src="images/profadmin3.png" />
+</p>
+<p>
+A Rule Criterion specifies one criterion in a list of profiling rule criteria.
+The rule is used to build a normalized profiling locator and then 
+locate a portal resource based on the current user request.    
+Rule Criteria are templates for locating profile properties. 
+Criteria consist of:
+<table>
+    <tr><td>Type</td>
+        <td>The type of criterion. Types are configured in the profiler spring configuraiton. 
+        Each type maps to a <i>rule criterion resolver</i>. A resolver is a Java class which maps request input
+        to a normalized location instruction. Valid resolvers are provided in the table below.        
+        </td>
+    </tr>
+    <tr>
+        <td>Fallback Order</td>
+        <td>The sequential in which to apply this criterion within the profiling rule.</td>
+    </tr>
+    <tr>
+        <td>Fallback Type</td>
+        <td>After evaluation this criterion, the rule can either continue processing the remaining 
+            criteria, or stop processing. The fallback type determines how to continue processing.
+            Valid values are:
+             <table>
+                 <tr>
+                     <td>FALLBACK_CONTINUE</td>
+                     <td>evaluate this criterion and if it fails continue to the next criterion</td>
+                 </tr>
+                 <tr>
+                     <td>FALLBACK_STOP</td>
+                     <td>evaluate this criterion and if it fails stop evaluation criteria for this rule</td>
+                 </tr>
+                 <tr>
+                     <td>FALLBACK_LOOP</td>
+                     <td>evaluate this criterion and if it fails continue evaluating</td>
+                 </tr>                 
+             </table>
+        </td>
+    </tr>  
+    <tr>
+        <td>Name</td>
+        <td>The unique name (per rule) of this criterion. Upon matches, the name is mapped to the profile locator property name.</td>
+    </tr> 
+    <tr>
+        <td>Value</td>
+        <td>The default value (not required) to use for this criterion when resolution fails.</td>
+    </tr>
+</table>    
+More complex implementations will need to use other inputs in mapping to resources such as Cookies, IP Address Ranges, Statistical Resource Usage Analysis, or Business Rules.
+</p>
+</subsection>
+<subsection name='Rule Criterion Resolvers'>
+<p>
+The table below displays all default rule criterion resolvers available with Jetspeed out of the box.
+Resolvers are Java classes, implementing the interface from the Jetspeed API <i>org.apache.jetspeed.profiler.rules.RuleCriterionResolver</i>.
+You may use this default set of resolvers to build your own profiling rules. Rules are currently stored in the 
+Jetspeed database. Portal administrators may edit the rules using an administrative portlet. In the demo system,
+login as the user "admin" to see an example of the Jetspeed Profiler Administration portlet.
+</p>
+<p>Additionally, you may add your own resolvers to Jetspeed. You will need to create a jar file
+ holding your custom resolvers, and then drop them into the Jetspeed webapp's class path. Resolvers
+ will need to be given a unique name. This is done by modifying the profiler.xml in the Spring assembly.
+ See the section below on configuration to see where to add a resolver to the Spring configuration.        
+<table>
+    <tr>
+    <th>Resolver</th>
+    <th>Description</th>
+    </tr>
+    <tr>
+        <td>request</td>
+        <td>resolve by matching a request parameter by name, returning the request parameter value for a locator property taking the name of the criterion</td>
+    </tr>
+    <tr>
+        <td>session</td>
+        <td>resolve by matching a session attribute by name, returning the session attribute value for a locator property taking the name of the criterion</td>
+    </tr>    
+    <tr>
+        <td>request.session</td>
+        <td>resolve by first matching a request parameter by name. If not matched, try matching a session attribute name, returning the request parameter or session attribute value for a locator property taking the name of the criterion</td>
+    </tr>
+    <tr>
+        <td>path</td>
+        <td>resolve by matching the PSML page <i>path</i> value of the current request. The path is typically the path and name of a page, such as <i>default-page</i> for a locator property named <quote>path</quote></td>
+    </tr>
+    <tr>
+        <td>path.session</td>
+        <td>resolve by matching the PSML page <i>path</i> value of the current request. The path is typically the path and name of a page, such as <i>default-page</i>. If fails to find a valid path in the request, will then look in the session for the page value. The locator property will be named <quote>path</quote></td>
+    </tr>    
+    <tr>
+        <td>hard.coded</td>
+        <td>resolve to a hard.coded default value, for example, set a locator property named page to <quote>/my-account.psml</quote></td>
+    </tr>
+    <tr>
+        <td>user</td>
+        <td>resolve by matching the name of the current authenticated user. The username is mapped to a locator property named <quote>user</quote></td>
+    </tr>
+    <tr>
+        <td>role</td>
+        <td>resolve by matching all of the security roles of the current authenticated user (in the JAAS Subject of the request context) and putting them in a comma-separated list. The locator property should be named <quote>role</quote>. The role criterion is often used in combination with path criteria, to create a role-fallback rule that searches over all security roles for a given user.</td>
+    </tr>
+    <tr>
+        <td>group</td>
+        <td>resolve by matching all of the groups of the current authenticated user  (in the JAAS Subject of the request context)  and putting them in a comma-separated list. The locator property should be named <quote>group</quote>. The group criteion is often used in combination with path criteria, to create a group-fallback rule that searches over all security groups for a given user.</td>
+    </tr>    
+    <tr>
+        <td>rolecombo</td>
+        <td>resolve by matching all of the security roles of the current authenticated user (in the JAAS Subject of the request context) and putting them in a dash-separated string, for example: (role1-role2-role3). The locator property should be named <quote>role</quote>. The role criterion is often used in combination with path criteria, to create a role-fallback rule that searches over all security roles for a given user.</td>
+    </tr>
+    <tr>
+        <td>mediatype</td>
+        <td>resolve by matching the media type (HTML,XHTML,WML...) from the request context. Sets a locator property named <quote>mediatype</quote></td>
+    </tr>
+    <tr>
+        <td>language</td>
+        <td>resolve by matching the browser's language from the request context locale (originating from the HTML headers). Sets a locator property named <quote>language</quote></td>
+    </tr>        
+    <tr>
+        <td>country</td>
+        <td>resolve by matching the browser's country code from the request context locale (originating from the HTML headers). Sets a locator property named <quote>country</quote></td>
+    </tr>
+    <tr>
+        <td>group.role.user</td>
+        <td>resolve by first matching on a request parameter named <quote>group</quote>. If that fails, resolve on a request parameter named <quote>role</quote>. If that fails, resolve by matching the name of the current authenticated user. The username is mapped to a locator property named <quote>user</quote></td>
+    </tr>    
+    <tr>
+        <td>user.attribute</td>
+        <td>resolve by matching a Portlet API User Attribute by name, returning the user attribute value for a locator property taking the name of the criterion</td>
+    </tr>        
+    <tr>
+        <td>user.agent</td>
+        <td>resolve by matching the browser's (client) user agent from the request context device capabilities (originating from the HTML headers)</td>
+    </tr>
+    <tr>
+        <td>hostname</td>
+        <td>resolve by matching the host name from the server name in the request, returning the host name</td>
+    </tr>       
+    <tr>
+        <td>domain</td>
+        <td>resolve by matching the domain from the server name in the request, returning the domain</td>
+    </tr>       
+    <tr>
+        <td>navigation</td>
+        <td>A directive to changes the current navigation path during a profile location resolution performed by the page manager. The value can be the location of a folder, for example <quote>/pages/freecontent</quote></td>
+    </tr>       
+</table>     
+<i>Note that all criteria will fall back to the default value when no match is made. Locator property expects a criterion named <quote>navigation</quote></i> 
+</p>      
+</subsection>
+<subsection name='Default Rules'>    
+<p>
+Several rules are provided by default with the Jetspeed system.   
+The rules in the table below display the criterion in a most-specific to least-specific ordering.
+</p>    
+<table>
+    <tr>
+    <th>Rule</th>
+    <th>Description</th>
+    </tr>
+    <tr>
+        <td>j1</td>
+        <td>
+            <p>Implements the Jetspeed-1 hard-coded profiler fallback algorithm, resolving in a most-specific to least-specific algorithm:</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>country</td>
+                    <td>country</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>language</td>
+                    <td>language</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>mediatype</td>
+                    <td>mediatype</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>group.role.user</td>
+                    <td>user|group|role</td>
+                    <td></td>
+                    <td>stop</td>
+                </tr>
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>stop</td>
+                </tr>                
+            </table>            
+        </td>
+        </tr>
+        <tr>
+        <td>role-fallback</td>
+        <td>
+            <p>A role based fallback algorithm, trying to find the most-specific resource by searching over all security roles for the current authenticated user.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>stop</td>
+                </tr>                                
+                <tr>
+                    <td>role</td>
+                    <td>role</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+            </table>            
+        </td>
+        </tr>
+        <tr>            
+        <td>group-fallback</td>
+        <td>
+            <p>A group based fallback algorithm, trying to find the most-specific resource by searching over all security groups for the current authenticated user.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>stop</td>
+                </tr>                                
+                <tr>
+                    <td>group</td>
+                    <td>group</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+            </table>            
+        </td>
+       </tr>
+        <tr>            
+        <td>j2</td>
+        <td>
+            <p>The default profiling rule for users and mediatype minus language and country.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>mediatype</td>
+                    <td>mediatype</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>group.role.user</td>
+                    <td>user|group|role</td>
+                    <td></td>
+                    <td>stop</td>
+                </tr>
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>stop</td>
+                </tr>                
+            </table>            
+        </td>
+       </tr>
+        <tr>            
+        <td>security</td>
+        <td>
+            <p>The security profiling rule needed to force credential change requirements.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>hard.coded</td>
+                    <td>page</td>
+                    <td>/my-account.psml</td>
+                    <td>stop</td>
+                </tr>
+            </table>            
+        </td>
+       </tr>
+        <tr>            
+        <td>path</td>
+        <td>
+            <p>Only criterion applied is the path portion of the portal URL.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path</td>
+                    <td>page</td>
+                    <td>/</td>
+                    <td>stop</td>
+                </tr>
+            </table>            
+        </td>
+       </tr>    
+        <tr>            
+        <td>user-role-fallback</td>
+        <td>
+            <p>Rule will first look for the resource in the user's home folder. If not found there, a role based fallback algorithm is applied, trying to find the most-specific resource by searching over all security roles for the current authenticated user.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>continue</td>
+                </tr>                                
+                <tr>
+                    <td>role</td>
+                    <td>role</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>navigation</td>
+                    <td>navigation</td>
+                    <td>/</td>
+                    <td>loop</td>
+                </tr>
+                <tr>
+                    <td>user</td>
+                    <td>user</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>                
+                
+            </table>            
+        </td>
+       </tr>
+        <tr>            
+        <td>user-rolecombo-fallback</td>
+        <td>
+            <p>Rule will first look for the resource in the user's home folder. If not found there, a role based fallback algorithm is applied, trying to find the most-specific resource by searching over all security roles for the current authenticated user. Creates a locater property named <quote>role</quote> that is the concatenation of all roles into one string, such as <i>role1-role2-role3</i>. This combined string is used as the role name in the locator.</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path.session</td>
+                    <td>page</td>
+                    <td>default-page</td>
+                    <td>continue</td>
+                </tr>                                
+                <tr>
+                    <td>rolecombo</td>
+                    <td>role</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>navigation</td>
+                    <td>navigation</td>
+                    <td>/</td>
+                    <td>loop</td>
+                </tr>
+                <tr>
+                    <td>user</td>
+                    <td>user</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>                
+                
+            </table>            
+        </td>
+       </tr>
+        <tr>            
+        <td>subsite-role-fallback-home</td>
+        <td>
+            <p>A rule based on role fallback algorithm with specified subsite and home page</p>
+            <table>
+                <tr>
+                    <th>criterion</th>
+                    <th>name</th>
+                    <th>value</th>
+                    <th>fallback</th>
+                </tr>                    
+                <tr>
+                    <td>path</td>
+                    <td>path</td>
+                    <td>subsite-default-page</td>
+                    <td>stop</td>
+                </tr>                                
+                <tr>
+                    <td>role</td>
+                    <td>role</td>
+                    <td></td>
+                    <td>continue</td>
+                </tr>
+                <tr>
+                    <td>navigation</td>
+                    <td>navigation</td>
+                    <td>subsite-root</td>
+                    <td>loop</td>
+                </tr>
+            </table>            
+        </td>
+       </tr>
+    
+    </table>    
+</subsection>    
+</section>    
+<section name="Profile Locators">
+<p>
+Profile Locators are used to locate profiled portal resources such as
+pages, folders, menus and links. A locator contains a collection of properties 
+(name value pairs) describing the actual resource to be located. 
 </p>
+<img src="../devguide/images/parameter-resolution.jpg" border="1"/>           
+<p>
+The profiler takes runtime information as input, generalized into 
+generalized profile locators that are passed on to the page manager to locate a  page or menu. 
+The profile locators are normalized and not coupled to the profiler or page manager implementation.
+</p>       
+<img src="../devguide/images/parameter-resolution-2.jpg" border="1"/>               
 </section>
-	</body>
+
+
+</body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/roles.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/roles.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/roles.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/roles.xml Thu Apr 23 22:28:35 2009
@@ -30,8 +30,8 @@
 			<p>
 			Role Management is where you manage individual portal roles. You can create new roles and remove existing roles.
 			You can assign users to roles. The Role Management page is located inside the Jetspeed Administrative Portlets section.
-			The Role Management page is the second tab on the administrative menu across the top. Here you see the Role Admin
-			on the left, and the Role Detail Information on the right. 																						
+			The Role Management page is the second tab on the administrative menu across the top. The Role management section is comprised 
+			of two portlets, Role Admin and Role Detail Information.																	
 			</p>
 		</section>
 		<section name="Role Admin">
@@ -39,26 +39,13 @@
 			The Role Admin portlet lists all portal roles and allows you to search for a particular role.
 			</p>
 			<p>			
-			TODO: screenshot of complete role admin portlet 								
+			<img src="images/roles.png"/>								
 			</p>
-			<subsection name="Paging">
-				<p>
-				If there are more than ten roles in the system, the role listing is spread over several pages each displaying ten roles.
-				You can navigate through the pages using the buttons right below the listing.
-				Clicking on the "Refresh" button will reset the role listing to the first page.
-				</p>
-				<p>				
-				TODO: screenshot of paging buttons 			
-				</p>
-			</subsection>
 			<subsection name="Searching">
 				<p>
 				You can search for a particular role by entering the role name or part of the role name in the search text box.
-				After clicking on the "Search" button, the role listing will show the search results, starting with the role that
-				best matched your search query, followed by increasingly less matching roles.
-				</p>
-				<p>				
-				TODO: screenshot of search text box and button 			
+				After clicking on the "Search" button, the role listing will show the search results, starting with the user that best matched your 
+				search query, followed by the users that normally appear after the matched user in alphabetical order.
 				</p>
 			</subsection>
 			<subsection name="Filtering">
@@ -66,49 +53,34 @@
 				To get only exact matches when searching for (or part of) a particular role name, check the "filter" checkbox below the
 				search text box.
 				</p>
-				<p>				
-				TODO: screenshot of the filter check box 			
-				</p>
 			</subsection>		
 		</section>
 		<section name="Adding and Deleting Roles">
 			<p>
-			The Role Detail Information portlet allows you to add and/or remove roles.
+			The Role Detail Information portlet allows you to add and/or remove roles. Select a role in the Role admin portlet and the Role 
+			Detail Information portlet will update with members of that role.  The selected role in the Role admin porlet will now have an 
+			arrow marking it.
 			</p>
 			<p>
-			TODO: screenshot of role admin and role detail information portlet
+				<img src="images/roledetail.png"/>
 			</p>
 			<subsection name="Adding a Role">
 				<p>
 				To add a role, depending on the Role Detail Information portlets state, you either need to...
 	                <ul>
-	                    <li>enter a role name and press "Save", or</li>
-	                    <li>select "Add New Role", enter a role name and press "Save",</li>
+	                	<li>select "Add New Role", enter a role name and press "Save" (screenshot above), or</li>
+	                    <li>enter a role name and press "Save" (screenshot below).</li>          
 	                </ul> 					
 				</p>		
 				<p>
-				TODO: screenshot of two states of Role Detail Information portlet
-			
-				<table>
-				<tr>
-				<th>Field</th>
-				<th>Description</th>			
-				</tr>
-				<tr>
-				<td>New Role Name</td>
-				<td>Sets the name for role</td>
-				</tr>
-				</table>
+				<img src="images/roledetailsimple.png"/>
 				</p>
 			</subsection>		
 			<subsection name="Removing a Role">
 				<p>
 				To remove a role from the system, click on the desired role in the Role Admin portlet. A small arrow will appear in front of the
 				role name to indicate it is currently selected, and the role's existing users will be loaded in the Role Details Information portlet.				
-				Click the "Remove Role" button. Be aware that this action is permanent!
-				</p>
-				<p>			
-				TODO: screenshot of Remove Role button		
+				Click the "Remove Role" button. This action is permanent.
 				</p>
 			</subsection>			
 		</section>		
@@ -117,9 +89,6 @@
 			To add or remove users assigned to a role, click on the role name in the Role Admin portlet. A small arrow will appear in front of the
 			role name to indicate it is currently selected, and the role's existing users will be loaded in the Role Details Information portlet.					
 			</p>
-			<p>			
-			TODO: screenshot of role admin and role detail information portlet	
-			</p>
 			<subsection name="Paging">
 				<p>
 				If there are more than ten users assigned to a role in the system, the role listing is spread over several pages
@@ -127,7 +96,7 @@
 				Clicking on the "Refresh" button will reset the user listing to the first page.
 				</p>
 				<p>				
-				TODO: screenshot of paging buttons 			
+					<img src="images/roledetailpaging.png"/>			
 				</p>
 			</subsection>				
 			<subsection name="Add Users to Role">
@@ -137,7 +106,7 @@
 				will be populated with the selected users.	
 				</p>
 				<p>			
-				TODO: screenshot of the pop-up window		
+					<img src="images/roleuserchooser.png"/>	
 				</p>			
 			</subsection>
 			<subsection name="Remove Checked Users">
@@ -146,47 +115,22 @@
 				Be aware that this action is permanent!				
 				</p>
 				<p>			
-				TODO: screenshot of Remove Checked Users button		
+					<img src="images/roleremove.png"/>	
 				</p>				
 			</subsection>
 			<subsection name="Search Users in Role">
 				<p>
 				You can search for a particular user by entering the users name or part of the users name in the search text box.
-				After clicking on the "Search" button, the "Users in Role" listing will show the search results, starting with the user that
-				best matched your search query, followed by increasingly less matching users.
-				</p>
-				<p>				
-				TODO: screenshot of search text box and button 			
+				After clicking on the "Search" button, the "Users in Role" listing will show the search results, starting with the user that best matched your 
+				search query, followed by the users that normally appear after the matched user in alphabetical order.
 				</p>
 			</subsection>
 			<subsection name="Filter Users in Role">
 				<p>
 				To get only exact matches when searching for (or part of) a particular user name, check the "filter" checkbox below the
-				search text box.
-				</p>
-				<p>				
-				TODO: screenshot of the filter check box 			
+				search text box. Clicking on the "Refresh" button will reset the group listing to the first page. 
 				</p>
 			</subsection>			
 		</section>	
-		<subsection name="Role Details Configuration">
-			<p>
-			For some weird reason there is no Edit Mode here!	
-				<table>
-				<tr>
-				<th>Field</th>
-				<th>Description</th>			
-				</tr>
-				<tr>
-				<td></td>
-				<td></td>
-				</tr>
-				<tr>
-				<td></td>
-				<td></td>
-				</tr>
-				</table>
-			</p>		
-		</subsection>				
 	</body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/rpad.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/rpad.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/rpad.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/rpad.xml Thu Apr 23 22:28:35 2009
@@ -26,8 +26,86 @@
 	</properties>
 	<body>
 		<section name="Remote Portlet Application Deployment Administration Guide">
-<p> 
-</p>
-</section>
+			<p> 
+				The Remote Portlet Application Deployer can be found in the Jetspeed Administrative Portlets Tabbed Menu named RPAD. You may use 
+				this portlet to deploy War files containing portlets that are not available by default.  Once the the War has been deployed, you will find 
+				any new portlets by going to <a href="../usersguide/portletmodes.html">edit mode</a> and the <a href="../usersguide/portlets.html#adding_portlets">Add Portlet</a> area.
+			</p>
+			<p>
+				<img src="images/rpadmain.png"/>
+			</p>
+			<p>
+				<table>
+					<tr>
+						<th>Field</th>
+						<th>Description</th>            
+					</tr>
+					<tr>
+						<td>Group ID</td>
+						<td>Name of the organization or company distributing the war file.</td>
+					</tr>
+					<tr>
+						<td>Artifact ID</td>
+						<td>The common way of naming a distributable file.</td>
+					</tr>
+					<tr>
+						<td>Name</td>
+						<td>Name of the portlet application, usually the same as the Artifact ID.</td>
+					</tr>
+					<tr>
+						<td>Version</td>
+						<td>The version of the portlet application.</td>
+					</tr>
+					<tr>
+						<td>Type</td>
+						<td>Portlet applications only, currently always distributed as war artifacts.</td>
+					</tr>
+					<tr>
+						<td>Action</td>
+						<td>Deploy the portlet application within Jetspeed.  You can manage the portlet application with the <a href="palm.html">PALM</a> (Portlet Application Lifecycle Manager).</td>
+					</tr>
+				</table>
+				</p>
+			<p>
+				The repository drop down menu has a listing of all currently included repositories.  By default, all repository items are displayed 
+				in groups of 10.  Paging at the bottom of the portlet will allow you to navigate through the pages.  Choosing one of the repositories 
+				in the drop down menu and clicking Select will change the display so that only items from that repository are displayed.  Selecting the
+				blank menu option will result in items from all repositories being displayed.
+			</p>
+			<p>	
+				<img src="images/rpadselect.png"/>
+			</p>
+			<p>
+				The Refresh button is used to redraw the contents of the window.  Refreshing is needed after clicking the deploy link as the deploy action will 
+				change all deploy links to a non-clickable state. These deploy links will remain unclickable for the duration of the deployment process, regardless 
+				of pressing the Refresh Button.  The deploy links will return to their normal state after the deployment process has completed and the screen is
+				redrawn through the Refresh Button or any other action requiring the portlet to redraw the window contents.
+			</p>
+			<subsection name="Managing Repositories">
+			<p>
+				Repositories may be managed by entering into <a href="../usersguide/portletmodes.html">edit mode</a> from the portlet action bar.
+			</p>
+			<p>	
+				<img src="images/rpadmanage.png"/>
+			</p>
+			<p>	
+				The Edit action link will allow you to change existing information such as repository name and the location of the configuration file for the repository.  
+				The window will change similar to the screenshot pictured below for Add Repository.
+			</p>
+			<p>	
+				The Delete action link remove the repository located in the same row as the link.
+			</p>
+			<p>	
+				The Reload Repositories button will refresh the configuration xml files for each repository.
+			</p>
+			<p>
+				The Add Repository button will take you to another window which will allow you to enter a name for the repository and a Configuration 
+				Path to an xml file with the Repository information.
+			</p>
+			<p>	
+				<img src="images/rpadadd.png"/>
+			</p>
+			</subsection>
+	</section>
 	</body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/site.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/site.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/site.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/site.xml Thu Apr 23 22:28:35 2009
@@ -1,33 +1,478 @@
 <?xml version="1.0"?>
 <!--
-	Licensed to the Apache Software Foundation (ASF) under one or more
-	contributor license agreements.  See the NOTICE file distributed with
-	this work for additional information regarding copyright ownership.
-	The ASF licenses this file to You under the Apache License, Version 2.0
-	(the "License"); you may not use this file except in compliance with
-	the License.  You may obtain a copy of the License at
-	
-	http://www.apache.org/licenses/LICENSE-2.0
-	
-	Unless required by applicable law or agreed to in writing, software
-	distributed under the License is distributed on an "AS IS" BASIS,
-	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-	See the License for the specific language governing permissions and
-	limitations under the License.
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+  
+  http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
 -->
 <document>
-	<properties>
-		<title>Portal Site Administration Guide</title>
-		<subtitle>Guide to Administering Portal Site</subtitle>
-		<authors>
-			<person name="David Sean Taylor" email="taylor@apache.org" />
-			<person name="Jody McAlister" email="jmcalister@onehippo.com" />
-		</authors>
-	</properties>
-	<body>
-		<section name="Portal Site Administration Guide">
-<p> 
-</p>
-</section>
-	</body>
+  <properties>
+    <title>Portal Site Administration Guide</title>
+    <subtitle>Guide to Administering Portal Site</subtitle>
+    <authors>
+      <person name="David Sean Taylor" email="taylor@apache.org" />
+      <person name="Jody McAlister" email="jmcalister@onehippo.com" />
+      <person name="Niels van Kampenhout" email="n.vankampenhout@onehippo.com" />
+    </authors>
+  </properties>
+  <body>
+    <section name="Portal Site Administration Guide">
+      <p>
+        The Portal Site Manager can be looked at as a file-system-like tree of portal resources.
+      </p>
+      <p>
+        The site is made up of three different kinds of resources:
+      </p>
+      <ul>
+        <li><a href="#PSML_Pages">PSML Pages</a></li> 
+        <li><a href="#Folders">Folders</a></li> 
+        <li><a href="#Links">Links</a></li> 
+      </ul> 
+      <p>
+        All portal resources can be customized in Jetspeed. Portal Site Manager is just one of the
+        tools available for customizing.  Other tools are the Jetspeed Customizer (both Desktop and Portal), Edit Mode, 
+        Configure Mode, Edit Defaults Mode of a portlet and the Portlet Selector.
+      </p>
+      <subsection name="PSML Pages">
+        <p>
+          The XML dialect for defining resources and elements that make up the site is also known as PSML (Portal Structure Markup Language).
+          PSML is not a standard. 
+        </p>
+        <p>
+          PSML pages define how and where portlets are placed on a page, as well as how the page is decorated and branded.
+        </p>
+        <p>
+          A PSML page defines : 
+          <ul>
+            <li>metadata, such as titles and descriptions</li> 
+            <li>decorations (both page and portlet)</li> 
+            <li>layout fragments (number of columns on the page, and nesting of columns)</li> 
+            <li>which portlets are displayed on the page, defined by portlet fragments</li> 
+            <li>the position of the portlet on the page</li> 
+            <li>properties of the portlets</li> 
+            <li>preferences of a portlet</li> 
+            <li>security constraints</li> 
+          </ul> 
+        </p>
+        <p>
+          To customize a PSML page through the Portal Site Manager, select it in the tree. On the right side of the tree
+          four tabs will appear allowing you to customize various aspects of the page through a form.
+        </p>
+        <p>
+          Each of the four tabs is described below.
+        </p>
+        <h4>Information Tab</h4>
+        <p>
+          The Information Tab allows you to customize the title and appearance of the page.
+        </p>
+        <img src="images/psm_psml_info.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of the .psml file.</td>
+          </tr>
+          <tr>
+            <td>Title</td>
+            <td>Name that appears in the xml title field for this object.</td>
+          </tr>
+          <tr>
+            <td>Short Title</td>
+            <td>Name that appears in the xml short title field for this object.</td>
+          </tr>
+          <tr>
+            <td>Page Decorator</td>
+            <td>Drop down menu of all available page decorators.</td>
+          </tr>
+          <tr>
+            <td>Portlet Decorator</td>
+            <td>Drop down menu of all available portlet decorators.</td>
+          </tr>
+          <tr>
+            <td>Desktop Theme</td>
+            <td>Drop down menu of all available desktop themes.</td>
+          </tr>
+          <tr>
+            <td>Hidden</td>
+            <td>Hidden folders do not show up on menus, but can still be navigated to. </td>
+          </tr>
+        </table>
+        <h4>Security Tab</h4>
+        <p>
+          The Security Tab allows you to modify a page's security constraints. All security constraints
+          defined for the selected page are shown in a list. To modify a constraint, select it from the list
+          and choose a new value in the dropdown field.
+        </p>
+        <img src="images/psm_psml_security.png"/>
+        <table>
+            <tr>
+              <th>Field</th>
+              <th>Description</th>      
+            </tr>
+            <tr>
+              <td>Constraints</td>
+              <td>Any Security and Constraint types will be listed here for the selected item.</td>
+            </tr>
+          </table>
+        <h4>Metadata Tab</h4>
+        <p>
+          The Metadata Tab shows a list of metadata properties that might be defined for the page, e.g. translations
+          in different languages of the page title, such as shown in the screenshot below. Clicking on a property
+          will load it in the form right below the list so that the values can be modified.
+        </p>
+        <img src="images/psm_psml_metadata.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of attribute in xml file for this object.</td>
+          </tr>
+          <tr>
+            <td>Language</td>
+            <td>Localization of the attribute.</td>
+          </tr>
+          <tr>
+            <td>Value</td>
+            <td>Text to be localized.</td>
+          </tr>
+        </table>
+        <h4>Export Tab</h4>
+        <p>
+          The Export Tab provides an XML export of the page. The exported XML file can be used
+          to store customizations made through the user interface in a custom portal project,
+          so that when a new version of the portal is deployed, the customizations do not have
+          to be made again.
+        </p>
+        <img src="images/psm_psml_export.png" />
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Export Object</td>
+            <td>Export the selected item in XML format.</td>
+          </tr>
+        </table>
+      </subsection>
+      <subsection name="Links">
+        <p>
+          Links are URLs to external resources, usually outside of the site. 
+          The element is persisted with the .link extension on the file system.
+        </p>
+        <p>
+          To customize a link through the Portal Site Manager, select it in the tree. On the right side of the tree
+          four tabs will appear allowing you to customize various aspects of the link through a form.
+        </p>
+        <p>
+          Each of the four tabs is described below.
+        </p>
+        <h4>Information Tab</h4>
+        <p>
+          The Information Tab allows you to change the title and the URL of a link.
+        </p>
+        <img src="images/psm_link_info.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of .link file.</td>
+          </tr>
+          <tr>
+            <td>Title</td>
+            <td>Name that appears in the xml title field for this object.</td>
+          </tr>
+          <tr>
+            <td>Short Title</td>
+            <td>Name that appears in the xml short title field for this object.</td>
+          </tr>
+          <tr>
+            <td>URL</td>
+            <td>The resource to be displayed when clicked.</td>
+          </tr>
+          <tr>
+            <td>Target Window</td>
+            <td>The web browser action when the link is clicked on for displaying the Target. (New, Self, Parent, Top)</td>
+          </tr>
+          <tr>
+            <td>Hidden</td>
+            <td>Hidden folders do not show up on menus, but can still be navigated to. </td>
+          </tr>
+        </table>
+        <h4>Security Tab</h4>
+        <p>
+          The Security Tab allows you to modify a link's security constraints. All security constraints
+          defined for the selected link are shown in a list. To modify a constraint, select it from the list
+          and choose a new value in the dropdown field.
+        </p>
+        <img src="images/psm_link_security.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Constraints</td>
+            <td>Any Security and Constraint types will be listed here for the selected item.</td>
+          </tr>
+        </table>
+        <h4>Metadata Tab</h4>
+        <p>
+          The Metadata Tab shows a list of metadata properties that might be defined for the link, e.g. translations
+          in different languages of the link title, such as shown in the screenshot below. Clicking on a property
+          will load it in the form right below the list so that the values can be modified.
+        </p>
+        <img src="images/psm_link_metadata.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of attribute in xml file for this object.</td>
+          </tr>
+          <tr>
+            <td>Language</td>
+            <td>Localization of the attribute.</td>
+          </tr>
+          <tr>
+            <td>Value</td>
+            <td>Text to be localized.</td>
+          </tr>
+        </table>
+        <h4>Export Tab</h4>
+        <p>
+          The Export Tab allows you to export a link to an XML file.
+        </p>
+        <img src="images/psm_link_export.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Export Object</td>
+            <td>Export the selected item in xml format.</td>
+          </tr>
+        </table>
+      </subsection>
+      <subsection name="Folders">
+        <p>
+          A folder is a container object that holds: 
+        </p>
+        <ul>
+          <li>subfolders (which in turn can hold subfolders, pages, links...)</li> 
+          <li>pages</li> 
+          <li>links</li> 
+        </ul>
+        <p>
+          Folders make up the physical layout of your site and have the following attributes :
+        </p>
+        <ul>
+          <li>Localizable Metadata (name, title, short-title, description)</li> 
+          <li>Optional Default-page </li> 
+          <li>Optional Decorator</li> 
+          <li>Hidden Flag (hidden folders do not show up on menus, but can still be navigated to)</li> 
+          <li>Security Constraints </li> 
+          <li>Menus</li> 
+          <li>Document Ordering</li> 
+        </ul>
+        <p>
+          To customize a folder through the Portal Site Manager, select it in the tree. On the right side of the tree
+          seven tabs will appear allowing you to customize various aspects of the link through a form.
+        </p>
+        <p>
+          Five of the seven tabs are described below (Information, Security, Metadata, Import, Export). The Menus and Order Tabs
+          are placeholders for future functionalities and do not currently contain any information.
+        </p>
+        <h4>Information Tab</h4>
+        <img src="images/psm_folder_info.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of the folder in the Portal Site Manager tree.</td>
+          </tr>
+          <tr>
+            <td>Title</td>
+            <td>Title of the Folder as it appears in the xml file.</td>
+          </tr>
+          <tr>
+            <td>Short Title</td>
+            <td>Short Tile of the folder as it appears in the xml file.</td>
+          </tr>
+          <tr>
+            <td>Default Page</td>
+            <td>Optional. Page to default to when browsing.</td>
+          </tr>
+          <tr>
+            <td>Page Decorator</td>
+            <td>Drop down menu of all available page decorators.</td>
+          </tr>
+          <tr>
+            <td>Portlet Decorator</td>
+            <td>Drop down menu of all available portlet decorators.</td>
+          </tr>
+          <tr>
+            <td>Hidden</td>
+            <td>Hidden folders do not show up on menus, but can still be navigated to. </td>
+          </tr>
+        </table>
+        <h4>Security Tab</h4>
+        <p>
+          The Security Tab allows you to modify a folder's security constraints. All security constraints
+          defined for the selected folder are shown in a list. To modify a constraint, select it from the list
+          and choose a new value in the dropdown field.
+        </p>
+        <img src="images/psm_folder_security.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Constraints</td>
+            <td>Any Security and Constraint types will be listed here for the selected item.</td>
+          </tr>
+        </table>
+        <h4>Metadata Tab</h4>
+        <p>
+          The Metadata Tab shows a list of metadata properties that might be defined for the folder, e.g. translations
+          in different languages of the folder title, such as shown in the screenshot below. Clicking on a property
+          will load it in the form right below the list so that the values can be modified.
+        </p>
+        <img src="images/psm_folder_metadata.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Name</td>
+            <td>Name of attribute in xml file for this object.</td>
+          </tr>
+          <tr>
+            <td>Language</td>
+            <td>Localization of the attribute.</td>
+          </tr>
+          <tr>
+            <td>Value</td>
+            <td>Text to be localized.</td>
+          </tr>
+        </table>
+        <h4>Import Tab</h4>
+        <p>
+          The Import Tab allows you to import a folder that you previously exported as XML file.
+        </p>
+        <img src="images/psm_folder_import.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>File to Import</td>
+            <td>Use the browse button to search local files for the xml file to be imported.</td>
+          </tr>
+          <tr>
+            <td>File Destination</td>
+            <td>The path to place the xml file being imported.</td>
+          </tr>
+        </table>
+        <h4>Export Tab</h4>
+        <p>
+          The Export Tab allows you to export a folder to an XML file. Optionally you can resursively
+          export all sub items inside the folder as well by checking the "Export recursively" checkbox.
+        </p>
+        <img src="images/psm_folder_export.png"/>
+        <table>
+          <tr>
+            <th>Field</th>
+            <th>Description</th>      
+          </tr>
+          <tr>
+            <td>Export Object</td>
+            <td>Export folder.metadata in xml format.</td>
+          </tr>
+          <tr>
+            <td>Export Recursively</td>
+            <td>Export all sub-items in the xml format as well as the folder.metadata.</td>
+          </tr>
+        </table>
+      </subsection>
+      <subsection name="Portal Tree vs. User Tree">
+        <p>
+          There are system wide portal resources and personalized or user specific portal resources. These are
+          represented by separate trees. The Portal Site Manager allows you to switch between these two
+          trees.
+        </p>
+        <h4>Portal Tree</h4>
+        <img src="images/psmportal.png" />
+        <h4>User Tree</h4>
+        <img src="images/psmusertree.png" />
+      </subsection>
+      <subsection name="Control Folders">
+        <p>
+          Control folders always start with the underscore _.
+        </p>
+        <p>
+          Control folders are used to separate pages based on runtime parameters.  For example, you may have a different set of pages for a phone vs. a full web-browser.  
+          In that case, you place your pages for the phone under a WML directory, where you may have less portlets per page than the HTML directory.
+        </p>
+        <p>
+          There is a special folder named (_subsite_root) : 
+        </p>
+        <ul>
+          <li>Subsites sub-divide your portal site into independent "portal site" trees.  This enables use-case scenarios such as hosting two or more 
+          portals on the same portal instance (app server)</li> 
+          <li>Users can be configured to point to a particular subsite which will become their view of the portal</li> 
+        </ul>
+        <p>
+          The User folder (_user) : 
+        </p>
+        <ul>
+          <li>The _user folder holds the home pages of all users.  Each user can have a folder with multiple subfolders, pages and links</li> 
+          <li>A user is not required to have a home folder.  Depending on the user profile, the user home page may or may not be used </li> 
+          <li>Usually, a user's home page is made customizable (editable) to the user, but not to others</li> 
+          <li>Jetspeed uses "templates" to create default pages for users when the user first registers or is created by an Administrator</li> 
+        </ul>
+        <p>
+          Roles and Group Folders (_role and _group) : 
+        </p>
+        <ul>
+          <li>Role and group folders are useful for sharing pages based on the roles or groups that a user belongs in.  Typical use cases are for granting (or denying) 
+            access to pages</li> 
+          <li>Role folder names should be the same as the roles defined in the system, likewise for groups</li> 
+          <li>A user's profile defines where pages are to be searched</li> 
+          <li>A user profile called "role-fallback" looks for pages in the _role directory, based on the users's security profile.  It will search 
+            through all folders based on the roles that a user holds</li> 
+          <li>A common profile rule is to first search the user's home directory, then each of the role directories for the given user, and the the 
+            default root tree to find the page</li> 
+        </ul>
+      </subsection>
+    </section>
+  </body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/sso.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/sso.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/sso.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/sso.xml Thu Apr 23 22:28:35 2009
@@ -41,13 +41,14 @@
 </section>
 <section name="SSO Management">
 <para>The SSO management portlet helps to administer SSO credentials and assigning them to Portal Users.</para>
-<table>
-                <tr>
-                    <td style="background-color:#FFFFFF;" align="center">
-                        <img src="images/sso-manage.gif" border="0" />
-                    </td>
-                </tr>
-            </table>
-            </section>
+<p>
+	<img src="images/sso-manage.png" />
+</p>
+<p>
+	The Portal Principal field may be populated by clicking on either the user icon or the group icon.  A pop up window will display to allow you to 
+	select your user or group.
+</p>
+
+</section>
 	</body>
 </document>
\ No newline at end of file

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/subsites.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/subsites.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/subsites.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/subsites.xml Thu Apr 23 22:28:35 2009
@@ -70,7 +70,7 @@
         <p>The screenshots above show using the Site Manager to configure your subsites.
         The Site Manager is useful for configuring a live site. When you configure a site initially, 
         subsites are configured on the file system as folders, subfolders and pages. Optionally, these folders can be imported
-        in the database. See the <a href='guide-psml.html'>Database Page Manager</a> for details on storing subsites in the database.
+        in the database. See the <a href='../devguide/guide-psml.html'>Database Page Manager</a> for details on storing subsites in the database.
         </p>
         <p>
         The Site Manager mirrors your file system (or database structure) in a tree view. Looking at the Site View screenshots 

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/users.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/users.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/users.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/adminguide/users.xml Thu Apr 23 22:28:35 2009
@@ -23,6 +23,7 @@
 			<person name="David Sean Taylor" email="taylor@apache.org" />
 			<person name="Jody McAlister" email="jmcalister@onehippo.com" />
 			<person name="Niels van Kampenhout" email="n.vankampenhout@onehippo.com"/>
+			<person name="Ate Douma" email="ate@douma.nu"/>
 		</authors>
 	</properties>
 	<body>
@@ -32,7 +33,7 @@
 				You can set a user's password, and manage a user's attributes, roles, group memberships, and profiling rules.
 				The User Management page is located inside the Jetspeed Administrative Portlets section.
 				The User Management page is the first tab on the administrative menu across the top.
-				Here you see the User Browser on the left, and the User Details on the right.
+				Here you see the User Browser.
 			</p>
 		</section>
 		<section name="The User Browser">
@@ -59,7 +60,7 @@
 					You can search for a particular user by entering the username or part of the username
 					in the search text box. After clicking on the "Search" button, the user listing
 					will show the search results, starting with the user that best matched your search
-					query, followed by increasingly less matching users.
+					query, followed by the users that normally appear after the matched user in alphabetical order.
 				</p>
 				<p>
 					<img src="images/usersearch.png"/>
@@ -67,7 +68,7 @@
 			</subsection>
 			<subsection name="Filtering">
 				<p>
-					To get only exact matches when searching for (part of) a particular username, check the "filter"
+					To get only exact matches when searching for (or part of) a particular username, check the "filter"
 					checkbox below the search text box.
 				</p>
 				<p>
@@ -118,12 +119,9 @@
 					button to store the new attribute. Note that if you use the name of an
 					existing attribute, its value will be overwritten.
 				</p>
-				<p>
-					For more details on user attributes see <a href="user-attributes.html">User Attributes</a>.
-				</p>
-				<p>
-					<img src="images/userdetailattribute.png"/>
-				</p>
+				<p>   
+     				<img src="images/defininguserattributes.png"/>
+      			</p>
 			</subsection>
 			<subsection name="Password Credentials">
 				<p>
@@ -157,21 +155,32 @@
 				</p>
 			</subsection>
 			<subsection name="Profile">
-				<p>
-					See <a href="user-profiler.html">User Profile</a> for details.
-				</p>
+				<p>Each user principal can be mapped to specific profiling rule. This association is stored in the Jetspeed database.
+The association is three-way, combining the PRINCIPAL + PROFILING RULE + LOCATOR, where the locator values 
+currently supported are <quote>menu</quote> or <quote>page</quote>. Thus we can have two different profiling rules
+applied for locating resources per user: locate pages and locate menus. When the profiler attempts to locate a page
+for the current user, it will apply the profiling rule for the given user. The Jetspeed User Administration portlet
+has a tab for editing user profile information:
+</p>
+<p>    
+<img src="images/user-profile-locator.png" />               
+</p>
+<p>
+Often, profiling rules are determined and then associated by portal-specific logic during user registration (or self-registration).    
+A Jetspeed-specific self-registration portlet could handle the registration process of adding a user to the system, granting roles, 
+setting user attributes, and assigning the profiling rule for the user.        
+</p>
 			</subsection>
 			<subsection name="Deleting a User">
 				<p>
 					To remove a user from the system, click on the "Remove User" button.
-					A message will be shown "Node has been removed". Be aware that this action is permanent! 
-				</p>
-				<p>
-					<img src="images/userremoveuser.png"/> 
+					This action is permanent.  A message indicating that the node has been removed and that the user you just deleted does not exist 
+					will be displayed. 
 				</p>
 				<p>
-					TODO screenshot of feedback message "Node has been removed"
+					<img src="images/usermessage.png"/> 
 				</p>
+
 			</subsection>
 			<subsection name="User Details Configuration">
 				<p>
@@ -296,38 +305,6 @@
 				You can require the password to be changed on the first login. You can also select the default role assigned 
 				to this user, as well as a default profiling rule. Last, you can assign this user to a subsite.
 			</p>
-			<!--
-			<table>
-			<tr>
-			<th>Field</th>
-			<th>Description</th>			
-			</tr>
-			<tr>
-			<td>New User Name</td>
-			<td></td>
-			</tr>
-			<tr>
-			<td>Password</td>
-			<td></td>
-			</tr>
-			<tr>
-			<td>Change Password on first Login</td>
-			<td></td>
-			</tr>
-			<tr>
-			<td>Default Role</td>
-			<td></td>
-			</tr>
-			<tr>
-			<td>Profiling Rule</td>
-			<td></td>
-			</tr>
-			<tr>
-			<td>Subsites</td>
-			<td></td>
-			</tr>
-			</table>
-			-->
 		</section>
 
 	</body>

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/demo.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/demo.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/demo.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/demo.xml Thu Apr 23 22:28:35 2009
@@ -27,13 +27,13 @@
 	<body>
 		<section name="Live Jetspeed Demo">
 			<p>To get a quick look at the Jetspeed decorators, themes,
-			<a href="../features.html">functionalities</a>,
+			<a href="features.html">functionalities</a>,
 			and the admin interface point your browser to
 			<ul>
 			<li>
-			<a href="http://portals.zones.apache.org/jetspeed/portal/">the standard portal demo</a> or</li>
+			<a href="http://portals.zones.apache.org:8080/jetspeed/portal/">the standard portal demo</a> or</li>
 			<li>
-			<a href="http://portals.zones.apache.org/jetspeed/desktop/">the web 2.0 desktop demo</a>.
+			<a href="http://portals.zones.apache.org:8080/jetspeed/desktop/">the web 2.0 desktop demo</a>.
 			Use the username <i>admin</i> connects using the password <i>j2</i>. Note: It is probable that
 			someone changes the password therefore we will regenerate the site on a regular basis.
 			</li>

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-cluster.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-cluster.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-cluster.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-cluster.xml Thu Apr 23 22:28:35 2009
@@ -26,7 +26,104 @@
   <body>
 <section name="Jetspeed Cluster Configuration">
 <p>
+Jetspeed is an enterprise portal capable of running in clustered application servers. There are several configuration changes required fro running in a clustered deployment:
+<ol>
+	<li>Use Database Page Manager</li>
+	<li>Use the Versioned Deployment Manager</li>
+	<li>Enable Distributed Caching</li>
+</ol>
 </p>
+<subsection name='1. Database Page Manager'>
+<p>PSML represents the pages in your portal. There can be lots of them. The default implementation stores the PSML files on the file system.
+A secondary implementation stores the files in the database. Storing in the database is necessary when deploying to a clustered Jetspeed distribution,
+or when you have tens of thousands of users where performance is required. Provided in the alternate directory is a DBPSML alternate configuration, db-page-manager.xml.
+You can take this file and copy it into your overrides directory. It will override the page-manager.xml beans by name.
+</p>
+<source><![CDATA[
+ <bean id="org.apache.jetspeed.page.PageManagerImpl" 
+        name="pageManagerImpl"
+        init-method="init"
+        class="org.apache.jetspeed.page.impl.DatabasePageManager">
+      <!-- OJB configuration file resource path -->
+      <constructor-arg index="0"><value>JETSPEED-INF/ojb/page-manager-repository.xml</value></constructor-arg>       
+      <!-- permissions security enabled flag, default=false -->
+      <constructor-arg index="1"><value>false</value></constructor-arg>
+      <!-- constraints security enabled flag, default=true -->
+      <constructor-arg index="2"><value>true</value></constructor-arg>
+      <!-- folder/page/link cache -->
+      <constructor-arg index="3"><ref bean="pageManagerOidCache"/></constructor-arg>
+      <!-- folder/page/link path cache -->
+      <constructor-arg index="4"><ref bean="pageManagerPathCache"/></constructor-arg>
+  </bean>
+]]></source>
+</subsection>
+<subsection name="2. Versioned Deployment">
+<p>The default Jetspeed Deployer, although it works well for development on Tomcat, doesn't work well in clustered environments. 
+We have implement a second, Versioned Portlet Application Manager for clustered environments.
+The Node Manager implementation will most likely be deprecated in the future. We are running into 
+limitations with the NodeManager-based cluster support when deploying
+to clusters with replicated databases as well as replicated app servers.
+The default PAM (Portlet Application Manager) is not-appropriate for many deployments of the
+portal. This second version of the PAM has no listeners,
+and a simpler deployment algorithm based on a version number supplied in the jetspeed-portlet.xml
+metadata
+If this field is not found, or if it is equal to or less than the version in the database,
+then the PA will not be deployed.
+This will allow for dropping in 2..n PAs in a cluster, without re-registering. The problem
+with re-registering is that the registry algorithm deep deletes the old PA def from the database,
+create a new PA, with all new OIDs, invalidating all other PAs and portlets on other nodes
+in the cluster.
+</p>
+<source><![CDATA[
+<bean id="deployFactory" class="org.apache.jetspeed.tools.deploy.JetspeedDeployFactory"/>
+
+<bean id="org.apache.jetspeed.tools.pamanager.PortletApplicationManager" 
+  	   class="org.apache.jetspeed.tools.pamanager.VersionedPortletApplicationManager" init-method="start" destroy-method="stop"
+  >  	   
+  	   <constructor-arg><ref bean="portletFactory"/></constructor-arg>
+  	   <constructor-arg><ref bean="org.apache.jetspeed.components.portletregistry.PortletRegistry"/></constructor-arg>
+  	   <constructor-arg><ref bean="org.apache.jetspeed.components.portletentity.PortletEntityAccessComponent"/></constructor-arg>
+  	   <constructor-arg><ref bean="org.apache.jetspeed.container.window.PortletWindowAccessor"/></constructor-arg>
+  	   <constructor-arg><ref bean="org.apache.jetspeed.security.PermissionManager"/></constructor-arg>       
+  	   <constructor-arg><ref bean="org.apache.jetspeed.search.SearchEngine"/></constructor-arg>              
+  	   <constructor-arg><ref bean="org.apache.jetspeed.security.RoleManager"/></constructor-arg>                     
+       <!-- role principals to assign a default permission(s) during deployment of a Portlet Application -->
+       <constructor-arg >
+         <list>
+            <value>user</value>
+         </list>
+       </constructor-arg>
+
+       <!--  application root -->
+        <constructor-arg>
+            <value>${applicationRoot}</value>
+        </constructor-arg>
+
+
+   <!-- optional configuration for automatic creation of not yet existing roles as defined in the deployed web.xml:
+       <property name="autoCreateRoles"><value>true</value></property>
+   -->      
+   <!-- optional descriptor change monitor check interval in seconds (0: disabled, default: 10):
+       <property name="descriptorChangeMonitorInterval"><value>10</value></property>
+   -->
+   <!-- optional max PA start retries in case of an error registering ths PA (0: do not retry, default: 10):
+   		this was introduced because of DB constraint validation errors in clustered environments
+   		see https://issues.apache.org/jira/browse/JS2-666
+       <property name="maxRetriedStarts"><value>10</value></property>
+   -->
+  </bean>
+]]></source>
+<p>
+You can find these <code>alternate</code> Spring configurations in the alternate directory is a deployment alternate configuration, deployment.xml.
+ You can take this file and copy it into your overrides directory. It will override the deployment.xml beans by name.
+</p>
+</subsection>
+<subsection name="3. Distributed Cache">
+<p> 
+In a cluster, Jetspeed keeps all internal caches synchronized across the cluster using a distributed cache. Documentation on the Distributed Cache is found <a href='distributed-cache.html'>here</a>. 
+</p>
+</subsection>
+
 </section>
 </body>
 </document>

Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-datasource.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-datasource.xml?rev=768082&r1=768081&r2=768082&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-datasource.xml (original)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/deployguide/config-datasource.xml Thu Apr 23 22:28:35 2009
@@ -24,9 +24,48 @@
     </authors>
   </properties>
   <body>
-<section name="Spring Datasource">
+<section name="Spring Datasource Bootstrap">
 <p>
+Jetspeed uses two Spring containers in the Jetspeed Engine. The first container is the <strong>Bootstrap</strong> container. It contains all database-related Spring components. 
+The second container is the general Jetspeed container. It contains all other Jetspeed components. The main file configured in the bootstrap is the datasource.xml file.
 </p>
+<p>
+The Database can be configured in two modes either via JNDI or directly with JDBC and DBCP connection pool datasource.</p>
+<subsection name='JNDI Database Configuration'>
+<p>
+When configuring with JNDI, Jetspeed does not handle the management of the JDBC data source. The data source and database connection pooling is handling usually
+by an application server, such as Tomcat or Websphere. With Spring, we configure a JNDI bean by JDNI name, and match that with the Tomcat or Websphere JNDI resource 
+configured in the application server.
+</p>
+<source><![CDATA[
+   <bean id="JetspeedDS" class="org.springframework.jndi.JndiObjectFactoryBean">
+        <property name="resourceRef"><value>false</value></property> 
+        <property name="jndiName">
+            <value>java:comp/env/jdbc/jetspeed</value>
+        </property>
+    </bean>
+]]></source>
+<p>This method is the default configuration for Jetspeed. This allows the application to manage the database connection pool and possibly use with JNDI resource in other
+web applications</p>
+</subsection>
+<subsection name='JDBC/DBCP Database Configuration'>
+<p>
+There is a second bean, commented out, in the spring datasource.xml. It has the same name as the JNDI-based implementation. So you can't use both of these beans at the same
+time. You must choose one, and comment out the other. With the JDBC/DBCP (Database Connection Pool) configuration, we setup the database connection directly
+in the Jetspeed web application. We also set up the four standard JDBC connection properties here:
+</p>
+<source><![CDATA[
+    <bean id="JetspeedDS" class="org.apache.commons.dbcp.BasicDataSource" 
+        destroy-method="close"
+        >
+                <property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
+                <property name="url"><value>jdbc:mysql://localhost/j2test</value></property>
+                <property name="username"><value>j2</value></property>
+                <property name="password"><value>XXX</value></property>
+        </bean>    
+]]></source>
+</subsection>
+    		
 </section>
 </body>
 </document>



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org