You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by bu...@apache.org on 2016/02/07 22:02:47 UTC

svn commit: r979780 [4/5] - in /websites/staging/rave/trunk/content: ./ docs/governance/ docs/practices/ documentation/ events/2011/ events/2013/

Modified: websites/staging/rave/trunk/content/documentation/rave-extensions.html
==============================================================================
--- websites/staging/rave/trunk/content/documentation/rave-extensions.html (original)
+++ websites/staging/rave/trunk/content/documentation/rave-extensions.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,46 +88,57 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>One of the (main) goals of Apache Rave is to create an extendible platform. This document is to help Apache Rave users (developers) to customize Apache Rave based on needs.</p>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>One of the (main) goals of Apache Rave is to create an extendible platform. This document is to help Apache Rave users (developers) to customize Apache Rave based on needs.</p>
 <p>To get you started we have created a Maven archetype that generates a Rave project. This project shows how to use a custom (Spring) component and to customize the look and feel.
 Extension developers will be able to use the POM file provide and add additional project dependencies.</p>
-<h2 id="prerequisites">Prerequisites</h2>
+<h2 id="prerequisites">Prerequisites<a class="headerlink" href="#prerequisites" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Java SE 6 or higher</li>
 <li>Apache Maven 3+ (version 3.0.3 or later is <em>required</em>) <a href="http://maven.apache.org/download.html">Download</a> and <a href="http://maven.apache.org/download.html#Installation">install</a></li>
 </ul>
 <p>A Maven archetype will be available to generate a custom Rave project for the 0.19 release (January 2013) and future releases.
 You can also build this archetype from the latest (snapshot) code. To do this, <a href="../source.html">check out Apache Rave from SVN</a> and build with "mvn clean install".</p>
-<h2 id="generate-custom-rave-project">Generate custom Rave project</h2>
+<h2 id="generate-custom-rave-project">Generate custom Rave project<a class="headerlink" href="#generate-custom-rave-project" title="Permanent link">&para;</a></h2>
 <p>In your console or terminal navigate to the folder where you store your projects. The archetype will create the folder of the project inside this folder. Then type:</p>
-<div class="codehilite"><pre><span class="n">mvn</span> <span class="n">archetype:generate</span> <span class="o">-</span><span class="n">DarchetypeGroupId</span><span class="o">=</span><span class="n">org</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">rave</span> <span class="o">-</span><span class="n">DarchetypeArtifactId</span><span class="o">=</span><span class="n">rave</span><span class="o">-</span><span class="n">custom</span><span class="o">-</span><span class="n">project</span><span class="o">-</span><span class="n">archetype</span>
+<div class="codehilite"><pre><span class="n">mvn</span> <span class="n">archetype</span><span class="p">:</span><span class="n">generate</span> <span class="o">-</span><span class="n">DarchetypeGroupId</span><span class="p">=</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">rave</span> <span class="o">-</span><span class="n">DarchetypeArtifactId</span><span class="p">=</span><span class="n">rave</span><span class="o">-</span><span class="n">custom</span><span class="o">-</span><span class="n">project</span><span class="o">-</span><span class="n">archetype</span>
 </pre></div>
 
 
 <p>Maven will try to download the <code>rave-custom-project-archetype</code>. Then asks you to define the custom project's groupId, artifactId etc. The default values are:</p>
-<div class="codehilite"><pre><span class="err">groupId:</span> <span class="err">org.example</span>
-<span class="err">artifactId:</span> <span class="err">myraveproject</span>
-<span class="err">version:</span> <span class="err">1.01.00-SNAPSHOT</span>
-<span class="err">package:</span> <span class="err">org.example</span>
-<span class="err">projectName:</span> <span class="err">My</span> <span class="err">Rave</span> <span class="err">Project</span>
+<div class="codehilite"><pre><span class="n">groupId</span><span class="o">:</span> <span class="n">org</span><span class="o">.</span><span class="na">example</span>
+<span class="n">artifactId</span><span class="o">:</span> <span class="n">myraveproject</span>
+<span class="n">version</span><span class="o">:</span> <span class="mf">1.01</span><span class="o">.</span><span class="mi">00</span><span class="o">-</span><span class="n">SNAPSHOT</span>
+<span class="kd">package</span><span class="o">:</span> <span class="n">org</span><span class="o">.</span><span class="na">example</span>
+<span class="n">projectName</span><span class="o">:</span> <span class="n">My</span> <span class="n">Rave</span> <span class="n">Project</span>
 </pre></div>
 
 
-<h3 id="run-the-project">Run the project</h3>
+<h3 id="run-the-project">Run the project<a class="headerlink" href="#run-the-project" title="Permanent link">&para;</a></h3>
 <p>If you use the defaults, the project is called <code>myraveproject</code> and its portal module <code>myraveproject-portal</code></p>
 <div class="codehilite"><pre><span class="n">cd</span> <span class="n">myraveproject</span>
 <span class="n">mvn</span> <span class="n">install</span>
 
 <span class="n">cd</span> <span class="n">myraveproject</span><span class="o">-</span><span class="n">portal</span>
-<span class="n">mvn</span> <span class="n">cargo:run</span>
+<span class="n">mvn</span> <span class="n">cargo</span><span class="p">:</span><span class="n">run</span>
 </pre></div>
 
 
 <p>You can now navigate to the portal on http://localhost:8080</p>
-<h2 id="custom-project">Custom project</h2>
+<h2 id="custom-project">Custom project<a class="headerlink" href="#custom-project" title="Permanent link">&para;</a></h2>
 <p>The project will have the following structure:</p>
 <p><img alt="Project structure" src="/images/screenshot_custom_project.png" /></p>
-<h3 id="customizations">Customizations</h3>
+<h3 id="customizations">Customizations<a class="headerlink" href="#customizations" title="Permanent link">&para;</a></h3>
 <ul>
 <li>
 <p>User Service : implements Rave UserService interface as CustomUserService. To use CustomUserService for
@@ -145,7 +157,7 @@ You can also build this archetype from t
 <p>There is also a separate module to override the OpenSocial provider (Apache Shindig), but it builds the same configuration as the standard release.</p>
 </li>
 </ul>
-<h3 id="best-practices">Best Practices</h3>
+<h3 id="best-practices">Best Practices<a class="headerlink" href="#best-practices" title="Permanent link">&para;</a></h3>
 <ul>
 <li>Add new javascript functions to new file or copy existing functions to new file and customize them and change imports based on your need. Reason is, changes/fixes in rave libraries should come to your project.</li>
 <li>If you are are customizing css or adding new css methods add new files so that changes in default css files will come to your portal</li>

Modified: websites/staging/rave/trunk/content/documentation/script-manager.html
==============================================================================
--- websites/staging/rave/trunk/content/documentation/script-manager.html (original)
+++ websites/staging/rave/trunk/content/documentation/script-manager.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,17 +88,27 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>The Script Manager is an Apache Rave bean that allows developers to register script blocks for inclusion in the bottom of the page.  The bean is designed to manage the registration of scripts that should be rendered on every page (Global) and within the current context.  Additionally, it tracks the requested position of the scripts relative to included libraries and out of the box Apache Rave scripts.</p>
-<h2 id="getting-the-scriptmanager">Getting the ScriptManager</h2>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>The Script Manager is an Apache Rave bean that allows developers to register script blocks for inclusion in the bottom of the page.  The bean is designed to manage the registration of scripts that should be rendered on every page (Global) and within the current context.  Additionally, it tracks the requested position of the scripts relative to included libraries and out of the box Apache Rave scripts.</p>
+<h2 id="getting-the-scriptmanager">Getting the ScriptManager<a class="headerlink" href="#getting-the-scriptmanager" title="Permanent link">&para;</a></h2>
 <p>The ScriptManager is a Spring bean defined by Rave and can be injected into any class via standard Spring autowiring mechanisms.  If your component is not managed by Apache Rave's Spring Application Context, you can retrieve the bean from the Application Context manually.</p>
-<h2 id="registering-a-script">Registering a Script</h2>
+<h2 id="registering-a-script">Registering a Script<a class="headerlink" href="#registering-a-script" title="Permanent link">&para;</a></h2>
 <p>Scripts are registered to be rendered in a specific scope and relative location. </p>
-<h3 id="scope">Scope</h3>
-<p>There potential values for the scope of a script's registration are defined in the org.apache.rave.web.renderer.RenderScope enumeration.  Currently, there are two, GLOBAL and CURRENT_CONTEXT.  <br />
-</p>
-<h3 id="script-location">Script Location</h3>
+<h3 id="scope">Scope<a class="headerlink" href="#scope" title="Permanent link">&para;</a></h3>
+<p>There potential values for the scope of a script's registration are defined in the org.apache.rave.web.renderer.RenderScope enumeration.  Currently, there are two, GLOBAL and CURRENT_CONTEXT.    </p>
+<h3 id="script-location">Script Location<a class="headerlink" href="#script-location" title="Permanent link">&para;</a></h3>
 <p>Scripts can be rendered at various points relative to Apache Rave default includes and out of the box scripts.  The potential values are defined and document in the org.apache.rave.renderer.ScriptLocation enumeration.</p>
-<h3 id="render-context">Render Context</h3>
+<h3 id="render-context">Render Context<a class="headerlink" href="#render-context" title="Permanent link">&para;</a></h3>
 <p>The render context represents the environment under which the script is to be rendered.  The context contains a set of key/value pairs that provide important context information to various components involved in the render process.  The developers interacting with the script manager are responsible for passing the Render Context to the ScriptManager.  Most often, the developer interacting with the ScriptManager will be doing so from within an Apache Rave render extension point, which will have a RenderContext passed to it.  If this isn't the case, the developer will need to retrieve the RenderContext object from the current HttpServletRequest prior to calling the script manager.</p>
         </article>
     </section>

Modified: websites/staging/rave/trunk/content/documentation/security-model-permission.html
==============================================================================
--- websites/staging/rave/trunk/content/documentation/security-model-permission.html (original)
+++ websites/staging/rave/trunk/content/documentation/security-model-permission.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,7 +88,18 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>In a nutshell, Apache Rave uses Spring Security annotations to protect the service layer methods.  Below is an overview of the permission related classes in rave-core and what each is used for:</p>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>In a nutshell, Apache Rave uses Spring Security annotations to protect the service layer methods.  Below is an overview of the permission related classes in rave-core and what each is used for:</p>
 <p><em>org.apache.rave.portal.security</em></p>
 <p>ModelPermissionEvaluator</p>
 <ul>

Modified: websites/staging/rave/trunk/content/documentation/sso-login.html
==============================================================================
--- websites/staging/rave/trunk/content/documentation/sso-login.html (original)
+++ websites/staging/rave/trunk/content/documentation/sso-login.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,20 +88,31 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>The default login mechanism relies on predefined users in the database with basic authentication or OpenId.
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>The default login mechanism relies on predefined users in the database with basic authentication or OpenId.
 With a different <a href="http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity.html">Spring security</a> configuration Apache Rave supports login based on request headers.</p>
 <p>The following instructions assume there is already an SSO authentication service running in your network like <a href="http://shibboleth.net/">Shibboleth®</a></p>
-<h2 id="1-get-apache-rave">1) Get Apache Rave</h2>
+<h2 id="1-get-apache-rave">1) Get Apache Rave<a class="headerlink" href="#1-get-apache-rave" title="Permanent link">&para;</a></h2>
 <p>There are multiple ways to build your custom Apache Rave instance, but the quickest is to use a Maven WAR overlay.  See <a href="rave-extensions.html">Extending Apache Rave</a> for an example overlay.</p>
-<h2 id="2-build-the-rave-sso-extension">2) Build the Rave SSO extension</h2>
+<h2 id="2-build-the-rave-sso-extension">2) Build the Rave SSO extension<a class="headerlink" href="#2-build-the-rave-sso-extension" title="Permanent link">&para;</a></h2>
 <p>Run the following commands in your shell/terminal/command to build the Single Sign-On extension from the Sandbox:</p>
-<div class="codehilite"><pre><span class="n">svn</span> <span class="n">co</span> <span class="n">http:</span><span class="sr">//s</span><span class="n">vn</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="sr">/repos/</span><span class="n">asf</span><span class="sr">/rave/s</span><span class="n">andbox</span><span class="sr">/rave-extensions/</span><span class="n">rave</span><span class="o">-</span><span class="n">extension</span><span class="o">-</span><span class="n">sso</span>
+<div class="codehilite"><pre><span class="n">svn</span> <span class="n">co</span> <span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">svn</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">org</span><span class="o">/</span><span class="n">repos</span><span class="o">/</span><span class="n">asf</span><span class="o">/</span><span class="n">rave</span><span class="o">/</span><span class="n">sandbox</span><span class="o">/</span><span class="n">rave</span><span class="o">-</span><span class="n">extensions</span><span class="o">/</span><span class="n">rave</span><span class="o">-</span><span class="n">extension</span><span class="o">-</span><span class="n">sso</span>
 <span class="n">cd</span> <span class="n">rave</span><span class="o">-</span><span class="n">extension</span><span class="o">-</span><span class="n">sso</span>
 <span class="n">mvn</span> <span class="n">install</span>
 </pre></div>
 
 
-<h2 id="3-add-the-rave-sso-extension-to-the-pom-of-your-custom-portal-war">3) Add the Rave SSO Extension to the pom of your custom portal war</h2>
+<h2 id="3-add-the-rave-sso-extension-to-the-pom-of-your-custom-portal-war">3) Add the Rave SSO Extension to the pom of your custom portal war<a class="headerlink" href="#3-add-the-rave-sso-extension-to-the-pom-of-your-custom-portal-war" title="Permanent link">&para;</a></h2>
 <div class="codehilite"><pre><span class="nt">&lt;dependency&gt;</span>
   <span class="nt">&lt;groupId&gt;</span>org.apache.rave.extensions<span class="nt">&lt;/groupId&gt;</span>
   <span class="nt">&lt;artifactId&gt;</span>rave-extension-sso<span class="nt">&lt;/artifactId&gt;</span>
@@ -108,76 +120,76 @@ With a different <a href="http://static.
 </pre></div>
 
 
-<h2 id="4-add-a-custom-spring-security-configuration">4) Add a custom Spring security configuration</h2>
+<h2 id="4-add-a-custom-spring-security-configuration">4) Add a custom Spring security configuration<a class="headerlink" href="#4-add-a-custom-spring-security-configuration" title="Permanent link">&para;</a></h2>
 <p>Place the following Spring security configuration in your war overlay project (<code>/src/main/webapp/WEB-INF</code>) as <code>applicationContext-security-extension-sso.xml</code></p>
-<div class="codehilite"><pre><span class="o">&lt;</span><span class="p">?</span><span class="n">xml</span> <span class="n">version</span><span class="o">=</span><span class="s">&quot;1.0&quot;</span> <span class="n">encoding</span><span class="o">=</span><span class="s">&quot;UTF-8&quot;</span><span class="p">?</span><span class="o">&gt;</span>
-<span class="o">&lt;</span><span class="n">beans:beans</span> <span class="n">xmlns:beans</span><span class="o">=</span><span class="s">&quot;http://www.springframework.org/schema/beans&quot;</span>
-             <span class="n">xmlns:xsi</span><span class="o">=</span><span class="s">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>
-             <span class="n">xmlns</span><span class="o">=</span><span class="s">&quot;http://www.springframework.org/schema/security&quot;</span>
-             <span class="n">xsi:schemaLocation</span><span class="o">=</span><span class="s">&quot;http://www.springframework.org/schema/beans</span>
-<span class="s">       http://www.springframework.org/schema/beans/spring-beans-3.1.xsd</span>
-<span class="s">       http://www.springframework.org/schema/security</span>
-<span class="s">       http://www.springframework.org/schema/security/spring-security-3.1.xsd&quot;</span><span class="o">&gt;</span>
-
-  <span class="o">&lt;</span><span class="n">http</span> <span class="k">use</span><span class="o">-</span><span class="n">expressions</span><span class="o">=</span><span class="s">&quot;true&quot;</span><span class="o">&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/newaccount.jsp*&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/app/newaccount*&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/login.jsp*&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/css/**&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/images/**&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/script/**&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/app/admin/**&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;hasRole(&#39;ROLE_ADMIN&#39;)&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">intercept</span><span class="o">-</span><span class="n">url</span> <span class="n">pattern</span><span class="o">=</span><span class="s">&quot;/**&quot;</span> <span class="n">access</span><span class="o">=</span><span class="s">&quot;hasAnyRole(&#39;ROLE_USER&#39;,&#39;ROLE_ADMIN&#39;)&quot;</span><span class="o">/&gt;</span>
-
-    <span class="o">&lt;</span><span class="n">form</span><span class="o">-</span><span class="n">login</span> <span class="n">login</span><span class="o">-</span><span class="n">page</span><span class="o">=</span><span class="s">&quot;/login.jsp&quot;</span> <span class="n">authentication</span><span class="o">-</span><span class="n">failure</span><span class="o">-</span><span class="n">url</span><span class="o">=</span><span class="s">&quot;/login.jsp?authfail=sso&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">logout</span> <span class="n">logout</span><span class="o">-</span><span class="n">success</span><span class="o">-</span><span class="n">url</span><span class="o">=</span><span class="s">&quot;/../Shibboleth.sso/Logout?target=/portal&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;!--</span> <span class="n">To</span> <span class="n">remove</span> <span class="n">SSO</span> <span class="n">header</span> <span class="n">authentication</span><span class="p">,</span> <span class="n">comment</span> <span class="n">out</span> <span class="n">the</span> <span class="n">following</span> <span class="n">line</span> <span class="o">--&gt;</span>
-    <span class="o">&lt;</span><span class="n">custom</span><span class="o">-</span><span class="n">filter</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;ssoHeaderFilter&quot;</span> <span class="n">position</span><span class="o">=</span><span class="s">&quot;PRE_AUTH_FILTER&quot;</span><span class="o">/&gt;</span>
-  <span class="sr">&lt;/http&gt;</span>
-
-  <span class="o">&lt;!--</span>
-    <span class="n">REMOTE_USER</span> <span class="n">is</span> <span class="n">the</span> <span class="n">header</span> <span class="n">we</span><span class="s">&#39;re expecting.</span>
-<span class="s">    It&#39;</span><span class="n">s</span> <span class="n">important</span> <span class="n">that</span> <span class="k">if</span> <span class="n">we</span><span class="err">&#39;</span><span class="n">re</span> <span class="n">using</span> <span class="n">this</span> <span class="n">header</span><span class="p">,</span> <span class="n">the</span> <span class="n">app</span> <span class="n">is</span> <span class="ow">not</span> <span class="n">accessed</span> <span class="n">directly</span><span class="p">,</span>
-    <span class="n">instead</span> <span class="n">accessed</span> <span class="n">only</span> <span class="n">through</span> <span class="n">e</span><span class="o">.</span><span class="n">g</span><span class="o">.</span> <span class="n">the</span> <span class="n">Apache</span> <span class="n">Shibboleth</span> <span class="n">module</span><span class="p">,</span> <span class="n">otherwise</span> <span class="n">this</span> <span class="n">header</span> <span class="n">could</span> <span class="n">be</span> <span class="n">faked</span><span class="o">.</span>
+<div class="codehilite"><pre><span class="cp">&lt;?</span><span class="nx">xml</span> <span class="nx">version</span><span class="o">=</span><span class="s2">&quot;1.0&quot;</span> <span class="nx">encoding</span><span class="o">=</span><span class="s2">&quot;UTF-8&quot;</span><span class="cp">?&gt;</span>
+<span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">beans</span> <span class="nx">xmlns</span><span class="o">:</span><span class="nx">beans</span><span class="o">=</span><span class="s2">&quot;http://www.springframework.org/schema/beans&quot;</span>
+             <span class="nx">xmlns</span><span class="o">:</span><span class="nx">xsi</span><span class="o">=</span><span class="s2">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>
+             <span class="nx">xmlns</span><span class="o">=</span><span class="s2">&quot;http://www.springframework.org/schema/security&quot;</span>
+             <span class="nx">xsi</span><span class="o">:</span><span class="nx">schemaLocation</span><span class="o">=</span><span class="s2">&quot;http://www.springframework.org/schema/beans</span>
+<span class="s2">       http://www.springframework.org/schema/beans/spring-beans-3.1.xsd</span>
+<span class="s2">       http://www.springframework.org/schema/security</span>
+<span class="s2">       http://www.springframework.org/schema/security/spring-security-3.1.xsd&quot;</span><span class="o">&gt;</span>
+
+  <span class="o">&lt;</span><span class="nx">http</span> <span class="nx">use</span><span class="o">-</span><span class="nx">expressions</span><span class="o">=</span><span class="s2">&quot;true&quot;</span><span class="o">&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/newaccount.jsp*&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/app/newaccount*&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/login.jsp*&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/css/**&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/images/**&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/script/**&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;permitAll&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/app/admin/**&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;hasRole(&#39;ROLE_ADMIN&#39;)&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">intercept</span><span class="o">-</span><span class="nx">url</span> <span class="nx">pattern</span><span class="o">=</span><span class="s2">&quot;/**&quot;</span> <span class="nx">access</span><span class="o">=</span><span class="s2">&quot;hasAnyRole(&#39;ROLE_USER&#39;,&#39;ROLE_ADMIN&#39;)&quot;</span><span class="o">/&gt;</span>
+
+    <span class="o">&lt;</span><span class="nx">form</span><span class="o">-</span><span class="nx">login</span> <span class="nx">login</span><span class="o">-</span><span class="nx">page</span><span class="o">=</span><span class="s2">&quot;/login.jsp&quot;</span> <span class="nx">authentication</span><span class="o">-</span><span class="nx">failure</span><span class="o">-</span><span class="nx">url</span><span class="o">=</span><span class="s2">&quot;/login.jsp?authfail=sso&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">logout</span> <span class="nx">logout</span><span class="o">-</span><span class="nx">success</span><span class="o">-</span><span class="nx">url</span><span class="o">=</span><span class="s2">&quot;/../Shibboleth.sso/Logout?target=/portal&quot;</span><span class="o">/&gt;</span>
+    <span class="c">&lt;!--</span> <span class="nx">To</span> <span class="nx">remove</span> <span class="nx">SSO</span> <span class="nx">header</span> <span class="nx">authentication</span><span class="p">,</span> <span class="nx">comment</span> <span class="nx">out</span> <span class="nx">the</span> <span class="nx">following</span> <span class="nx">line</span> <span class="o">--&gt;</span>
+    <span class="o">&lt;</span><span class="nx">custom</span><span class="o">-</span><span class="nx">filter</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;ssoHeaderFilter&quot;</span> <span class="nx">position</span><span class="o">=</span><span class="s2">&quot;PRE_AUTH_FILTER&quot;</span><span class="o">/&gt;</span>
+  <span class="o">&lt;</span><span class="err">/http&gt;</span>
+
+  <span class="c">&lt;!--</span>
+    <span class="nx">REMOTE_USER</span> <span class="nx">is</span> <span class="nx">the</span> <span class="nx">header</span> <span class="nx">we</span><span class="s1">&#39;re expecting.</span>
+<span class="s1">    It&#39;</span><span class="nx">s</span> <span class="nx">important</span> <span class="nx">that</span> <span class="k">if</span> <span class="nx">we</span><span class="err">&#39;</span><span class="nx">re</span> <span class="nx">using</span> <span class="k">this</span> <span class="nx">header</span><span class="p">,</span> <span class="nx">the</span> <span class="nx">app</span> <span class="nx">is</span> <span class="nx">not</span> <span class="nx">accessed</span> <span class="nx">directly</span><span class="p">,</span>
+    <span class="nx">instead</span> <span class="nx">accessed</span> <span class="nx">only</span> <span class="nx">through</span> <span class="nx">e</span><span class="p">.</span><span class="nx">g</span><span class="p">.</span> <span class="nx">the</span> <span class="nx">Apache</span> <span class="nx">Shibboleth</span> <span class="nx">module</span><span class="p">,</span> <span class="nx">otherwise</span> <span class="k">this</span> <span class="nx">header</span> <span class="nx">could</span> <span class="nx">be</span> <span class="nx">faked</span><span class="p">.</span>
   <span class="o">--&gt;</span>
-  <span class="o">&lt;</span><span class="n">beans:bean</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;ssoHeaderFilter&quot;</span>
-              <span class="n">class</span><span class="o">=</span><span class="s">&quot;org.apache.rave.portal.security.filter.SSORequestHeaderAuthenticationFilter&quot;</span><span class="o">&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;principalRequestHeader&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;REMOTE_USER&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;authenticationManager&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;authenticationManager&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;allowPreAuthenticatedPrincipals&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;true&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;exceptionIfHeaderMissing&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;false&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:constructor</span><span class="o">-</span><span class="n">arg</span> <span class="nb">index</span><span class="o">=</span><span class="s">&quot;0&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;userService&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:constructor</span><span class="o">-</span><span class="n">arg</span> <span class="nb">index</span><span class="o">=</span><span class="s">&quot;1&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;ssoLoginHandler&quot;</span><span class="o">/&gt;</span>
-  <span class="sr">&lt;/beans:bean&gt;</span>
-
-  <span class="o">&lt;</span><span class="n">beans:bean</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;ssoLoginHandler&quot;</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;org.apache.rave.portal.security.impl.DefaultSSOLoginHandler&quot;</span><span class="o">&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;autoCreateUser&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;true&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;ssoHeaderEmail&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;Shib-InetOrgPerson-mail&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;ssoHeaderDisplayName&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;displayName&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;defaultPageLayout&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;columns_2&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;defaultUserRole&quot;</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;ROLE_USER&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:constructor</span><span class="o">-</span><span class="n">arg</span> <span class="nb">index</span><span class="o">=</span><span class="s">&quot;0&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;defaultNewAccountService&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:constructor</span><span class="o">-</span><span class="n">arg</span> <span class="nb">index</span><span class="o">=</span><span class="s">&quot;1&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;userDetailsService&quot;</span><span class="o">/&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:constructor</span><span class="o">-</span><span class="n">arg</span> <span class="nb">index</span><span class="o">=</span><span class="s">&quot;2&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;defaultAuthorityService&quot;</span><span class="o">/&gt;</span>
-  <span class="sr">&lt;/beans:bean&gt;</span>
-
-  <span class="o">&lt;</span><span class="n">beans:bean</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;preauthAuthProvider&quot;</span>
-              <span class="n">class</span><span class="o">=</span><span class="s">&quot;org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider&quot;</span><span class="o">&gt;</span>
-    <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;preAuthenticatedUserDetailsService&quot;</span><span class="o">&gt;</span>
-      <span class="o">&lt;</span><span class="n">beans:bean</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;userDetailsServiceWrapper&quot;</span>
-                  <span class="n">class</span><span class="o">=</span><span class="s">&quot;org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper&quot;</span><span class="o">&gt;</span>
-        <span class="o">&lt;</span><span class="n">beans:property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;userDetailsService&quot;</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;userDetailsService&quot;</span><span class="o">/&gt;</span>
-      <span class="sr">&lt;/beans:bean&gt;</span>
-    <span class="sr">&lt;/beans:property&gt;</span>
-  <span class="sr">&lt;/beans:bean&gt;</span>
-
-  <span class="o">&lt;</span><span class="n">beans:bean</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;userDetailsService&quot;</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;org.apache.rave.portal.service.impl.DefaultUserService&quot;</span><span class="o">/&gt;</span>
-
-  <span class="o">&lt;</span><span class="n">authentication</span><span class="o">-</span><span class="n">manager</span> <span class="n">alias</span><span class="o">=</span><span class="s">&quot;authenticationManager&quot;</span><span class="o">&gt;</span>
-    <span class="o">&lt;</span><span class="n">authentication</span><span class="o">-</span><span class="n">provider</span> <span class="nb">ref</span><span class="o">=</span><span class="s">&quot;preauthAuthProvider&quot;</span><span class="o">/&gt;</span>
-  <span class="sr">&lt;/authentication-manager&gt;</span>
+  <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">bean</span> <span class="nx">id</span><span class="o">=</span><span class="s2">&quot;ssoHeaderFilter&quot;</span>
+              <span class="kr">class</span><span class="o">=</span><span class="s2">&quot;org.apache.rave.portal.security.filter.SSORequestHeaderAuthenticationFilter&quot;</span><span class="o">&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;principalRequestHeader&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;REMOTE_USER&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;authenticationManager&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;authenticationManager&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;allowPreAuthenticatedPrincipals&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;true&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;exceptionIfHeaderMissing&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;false&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">constructor</span><span class="o">-</span><span class="nx">arg</span> <span class="nx">index</span><span class="o">=</span><span class="s2">&quot;0&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;userService&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">constructor</span><span class="o">-</span><span class="nx">arg</span> <span class="nx">index</span><span class="o">=</span><span class="s2">&quot;1&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;ssoLoginHandler&quot;</span><span class="o">/&gt;</span>
+  <span class="o">&lt;</span><span class="err">/beans:bean&gt;</span>
+
+  <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">bean</span> <span class="nx">id</span><span class="o">=</span><span class="s2">&quot;ssoLoginHandler&quot;</span> <span class="kr">class</span><span class="o">=</span><span class="s2">&quot;org.apache.rave.portal.security.impl.DefaultSSOLoginHandler&quot;</span><span class="o">&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;autoCreateUser&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;true&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;ssoHeaderEmail&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;Shib-InetOrgPerson-mail&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;ssoHeaderDisplayName&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;displayName&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;defaultPageLayout&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;columns_2&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;defaultUserRole&quot;</span> <span class="nx">value</span><span class="o">=</span><span class="s2">&quot;ROLE_USER&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">constructor</span><span class="o">-</span><span class="nx">arg</span> <span class="nx">index</span><span class="o">=</span><span class="s2">&quot;0&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;defaultNewAccountService&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">constructor</span><span class="o">-</span><span class="nx">arg</span> <span class="nx">index</span><span class="o">=</span><span class="s2">&quot;1&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;userDetailsService&quot;</span><span class="o">/&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">constructor</span><span class="o">-</span><span class="nx">arg</span> <span class="nx">index</span><span class="o">=</span><span class="s2">&quot;2&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;defaultAuthorityService&quot;</span><span class="o">/&gt;</span>
+  <span class="o">&lt;</span><span class="err">/beans:bean&gt;</span>
+
+  <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">bean</span> <span class="nx">id</span><span class="o">=</span><span class="s2">&quot;preauthAuthProvider&quot;</span>
+              <span class="kr">class</span><span class="o">=</span><span class="s2">&quot;org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider&quot;</span><span class="o">&gt;</span>
+    <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;preAuthenticatedUserDetailsService&quot;</span><span class="o">&gt;</span>
+      <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">bean</span> <span class="nx">id</span><span class="o">=</span><span class="s2">&quot;userDetailsServiceWrapper&quot;</span>
+                  <span class="kr">class</span><span class="o">=</span><span class="s2">&quot;org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper&quot;</span><span class="o">&gt;</span>
+        <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">property</span> <span class="nx">name</span><span class="o">=</span><span class="s2">&quot;userDetailsService&quot;</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;userDetailsService&quot;</span><span class="o">/&gt;</span>
+      <span class="o">&lt;</span><span class="err">/beans:bean&gt;</span>
+    <span class="o">&lt;</span><span class="err">/beans:property&gt;</span>
+  <span class="o">&lt;</span><span class="err">/beans:bean&gt;</span>
+
+  <span class="o">&lt;</span><span class="nx">beans</span><span class="o">:</span><span class="nx">bean</span> <span class="nx">id</span><span class="o">=</span><span class="s2">&quot;userDetailsService&quot;</span> <span class="kr">class</span><span class="o">=</span><span class="s2">&quot;org.apache.rave.portal.service.impl.DefaultUserService&quot;</span><span class="o">/&gt;</span>
+
+  <span class="o">&lt;</span><span class="nx">authentication</span><span class="o">-</span><span class="nx">manager</span> <span class="nx">alias</span><span class="o">=</span><span class="s2">&quot;authenticationManager&quot;</span><span class="o">&gt;</span>
+    <span class="o">&lt;</span><span class="nx">authentication</span><span class="o">-</span><span class="nx">provider</span> <span class="nx">ref</span><span class="o">=</span><span class="s2">&quot;preauthAuthProvider&quot;</span><span class="o">/&gt;</span>
+  <span class="o">&lt;</span><span class="err">/authentication-manager&gt;</span>
 
-<span class="sr">&lt;/beans:beans&gt;</span>
+<span class="o">&lt;</span><span class="err">/beans:beans&gt;</span>
 </pre></div>
 
 
@@ -193,7 +205,7 @@ With a different <a href="http://static.
 </pre></div>
 
 
-<h2 id="5-customize-the-loginjsp">5) Customize the login.jsp</h2>
+<h2 id="5-customize-the-loginjsp">5) Customize the login.jsp<a class="headerlink" href="#5-customize-the-loginjsp" title="Permanent link">&para;</a></h2>
 <p>Create your own login.jsp with e.g. a welcome text and a link to your SSO login form.</p>
         </article>
     </section>

Modified: websites/staging/rave/trunk/content/documentation/translate-portal.html
==============================================================================
--- websites/staging/rave/trunk/content/documentation/translate-portal.html (original)
+++ websites/staging/rave/trunk/content/documentation/translate-portal.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,16 +88,27 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>The labels in the portal are maintained in <a href="http://download.oracle.com/javase/tutorial/i18n/resbundle/concept.html">Resource Bundles</a>. The default language of the portal is English. In this example you are going to add french translations to the portal.</p>
-<h2 id="1-get-rave">1) Get Rave</h2>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>The labels in the portal are maintained in <a href="http://download.oracle.com/javase/tutorial/i18n/resbundle/concept.html">Resource Bundles</a>. The default language of the portal is English. In this example you are going to add french translations to the portal.</p>
+<h2 id="1-get-rave">1) Get Rave<a class="headerlink" href="#1-get-rave" title="Permanent link">&para;</a></h2>
 <p>There are multiple ways to build your custom Apache Rave instance, but the quickest is to use a Maven WAR overlay.  See <a href="rave-extensions.html">Extending Rave</a> for an example overlay.</p>
-<h2 id="2-add-your-translation">2) Add your translation</h2>
+<h2 id="2-add-your-translation">2) Add your translation<a class="headerlink" href="#2-add-your-translation" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Create a file <code>messages_fr.properties</code> in <code>src/main/resources</code>.</li>
 <li>Copy the contents from the <a href="http://svn.apache.org/repos/asf/rave/trunk/rave-portal-resources/src/main/resources/messages.properties">default language file</a> into your new file</li>
 <li>Translate the values</li>
 </ul>
-<h2 id="3-build-and-test">3) Build and test</h2>
+<h2 id="3-build-and-test">3) Build and test<a class="headerlink" href="#3-build-and-test" title="Permanent link">&para;</a></h2>
 <p>Build your custom Apache Rave project and deploy it.
 You will see the French translations in the portal if the preferred language of your browser is French.</p>
 <p><img alt="Setting French as preferred language in Firefox" src="/images/screenshot_preference_preferred_language.png" /></p>

Modified: websites/staging/rave/trunk/content/downloads.html
==============================================================================
--- websites/staging/rave/trunk/content/downloads.html (original)
+++ websites/staging/rave/trunk/content/downloads.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">

Modified: websites/staging/rave/trunk/content/edit-website.html
==============================================================================
--- websites/staging/rave/trunk/content/edit-website.html (original)
+++ websites/staging/rave/trunk/content/edit-website.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,10 +88,21 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>This HowTo documentation will show the needed steps to edit the Apache Rave
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>This HowTo documentation will show the needed steps to edit the Apache Rave
 website. This includes creation of new pages, modification, and deletion - for files
 and sub-directories.</p>
-<h2 id="how-it-works-in-general">How it works in general</h2>
+<h2 id="how-it-works-in-general">How it works in general<a class="headerlink" href="#how-it-works-in-general" title="Permanent link">&para;</a></h2>
 <p>The website is hosted in a Content Management System (CMS). You will not edit the
 HTML pages directly. The actual edit is split into two steps:</p>
 <ol>
@@ -106,41 +118,41 @@ HTML pages directly. The actual edit is
     as log message).</p>
 </li>
 </ol>
-<h2 id="what-do-you-prefer-working-via-command-line-or-in-the-browser">What do you prefer: Working via command line or in the browser?</h2>
-<h3 id="via-command-line">Via command line</h3>
+<h2 id="what-do-you-prefer-working-via-command-line-or-in-the-browser">What do you prefer: Working via command line or in the browser?<a class="headerlink" href="#what-do-you-prefer-working-via-command-line-or-in-the-browser" title="Permanent link">&para;</a></h2>
+<h3 id="via-command-line">Via command line<a class="headerlink" href="#via-command-line" title="Permanent link">&para;</a></h3>
 <p>It is assumed that you have already checked out the code from the SVN repository
 (http://svn.apache.org/repos/asf/rave/).</p>
 <p>Edit the file via your favorite editor like vi and finally commit via SVN:</p>
-<div class="codehilite"><pre> <span class="n">vi</span> <span class="n">myfile</span><span class="o">.</span><span class="n">mdtext</span>
- <span class="n">svn</span> <span class="n">ci</span> <span class="o">-</span><span class="n">m</span><span class="s">&quot;My log message&quot;</span> <span class="n">myfile</span><span class="o">.</span><span class="n">mdtext</span>
+<div class="codehilite"><pre> <span class="n">vi</span> <span class="n">myfile</span><span class="p">.</span><span class="n">mdtext</span>
+ <span class="n">svn</span> <span class="n">ci</span> <span class="o">-</span><span class="n">m</span>&quot;<span class="n">My</span> <span class="nb">log</span> <span class="n">message</span>&quot; <span class="n">myfile</span><span class="p">.</span><span class="n">mdtext</span>
 </pre></div>
 
 
 <p>Now wait a few seconds so that the entire website can be rebuilt. Then:</p>
-<div class="codehilite"><pre><span class="n">curl</span> <span class="o">-</span><span class="n">sL</span> <span class="n">http:</span><span class="sr">//s</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="o">/</span><span class="n">cms</span><span class="o">-</span><span class="n">cli</span> <span class="o">|</span> <span class="n">perl</span>
+<div class="codehilite"><pre><span class="n">curl</span> <span class="o">-</span><span class="n">sL</span> <span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">s</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">org</span><span class="o">/</span><span class="n">cms</span><span class="o">-</span><span class="n">cli</span> <span class="o">|</span> <span class="n">perl</span>
 </pre></div>
 
 
 <p>If this does not work on your local machine just do it on "people.apache.org" by
 executing this:</p>
-<div class="codehilite"><pre><span class="n">ssh</span> <span class="o">-</span><span class="n">t</span> <span class="sr">&lt;user&gt;</span><span class="nv">@people</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span> <span class="n">publish</span><span class="o">.</span><span class="n">pl</span> <span class="n">rave</span> <span class="o">&lt;</span><span class="n">your</span> <span class="n">Apache</span> <span class="n">ID</span><span class="o">&gt;</span>
+<div class="codehilite"><pre><span class="n">ssh</span> <span class="o">-</span><span class="n">t</span> <span class="o">&lt;</span><span class="n">user</span><span class="o">&gt;</span><span class="p">@</span><span class="n">people</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">org</span> <span class="n">publish</span><span class="p">.</span><span class="n">pl</span> <span class="n">rave</span> <span class="o">&lt;</span><span class="n">your</span> <span class="n">Apache</span> <span class="n">ID</span><span class="o">&gt;</span>
 </pre></div>
 
 
-<h3 id="editing-in-the-browser">Editing in the browser</h3>
-<h4 id="prerequisites">Prerequisites</h4>
-<h5 id="browser-bookmark">Browser bookmark</h5>
+<h3 id="editing-in-the-browser">Editing in the browser<a class="headerlink" href="#editing-in-the-browser" title="Permanent link">&para;</a></h3>
+<h4 id="prerequisites">Prerequisites<a class="headerlink" href="#prerequisites" title="Permanent link">&para;</a></h4>
+<h5 id="browser-bookmark">Browser bookmark<a class="headerlink" href="#browser-bookmark" title="Permanent link">&para;</a></h5>
 <p>Normally you see the webpage in your browser. To update this page with an
 inline-editor and little preview you need to add a link as bookmark to your browser
 (more information see <a href="https://cms.apache.org/#bookmark">here</a>).</p>
 <p>Drag this <a href="javascript:void(location.href='https://cms.apache.org/redirect?uri='+escape(location.href))">Apache CMS</a> bookmarklet to your browser's toolbar.</p>
-<h5 id="apache-id">Apache ID</h5>
+<h5 id="apache-id">Apache ID<a class="headerlink" href="#apache-id" title="Permanent link">&para;</a></h5>
 <p>Furthermore, you need an Apache ID to authenticate to the system.</p>
-<h4 id="starting">Starting</h4>
+<h4 id="starting">Starting<a class="headerlink" href="#starting" title="Permanent link">&para;</a></h4>
 <p>Browse to the respective webpage or directory you would like to edit and click on
 the bookmark. Now click on the [Edit this directory] link on the top. The following
 is displayed as content from the CMS.</p>
-<h4 id="edit-an-existing-webpage">Edit an existing webpage</h4>
+<h4 id="edit-an-existing-webpage">Edit an existing webpage<a class="headerlink" href="#edit-an-existing-webpage" title="Permanent link">&para;</a></h4>
 <p>Click on the actions link [Edit] in the appropriate table cell for editing the
 favorite file. If the file is not in this directory but in a subdir, just click on
 the directory name (e.g., "docs/") to enter this directory.</p>
@@ -153,20 +165,20 @@ the directory name (e.g., "docs/") to en
 </ol>
 <p>When you have finished writing your text, check the "Log message" box, enter a
 commit message and click on [Submit].</p>
-<h4 id="create-a-new-webpage">Create a new webpage</h4>
+<h4 id="create-a-new-webpage">Create a new webpage<a class="headerlink" href="#create-a-new-webpage" title="Permanent link">&para;</a></h4>
 <p>When in the correct directory, at the top enter a name for the new text file (e.g.,
 "my-file.mdtext"). Now you enter your text (see topic above).</p>
-<h4 id="create-new-subdirectory">Create new subdirectory</h4>
+<h4 id="create-new-subdirectory">Create new subdirectory<a class="headerlink" href="#create-new-subdirectory" title="Permanent link">&para;</a></h4>
 <p>When in the correct directory, at the top enter a name for the new directory (e.g.,
 "my-dir/"). Make sure you entered a trailing "/"!</p>
-<h4 id="delete-a-webpage-or-subdirectory">Delete a webpage or subdirectory</h4>
+<h4 id="delete-a-webpage-or-subdirectory">Delete a webpage or subdirectory<a class="headerlink" href="#delete-a-webpage-or-subdirectory" title="Permanent link">&para;</a></h4>
 <p>When in the correct directory, click on the actions link [Delete] in the appropriate
 table cell and enter a commit message. Finally click on [Submit].</p>
-<h4 id="how-to-put-into-production">How to put into production?</h4>
+<h4 id="how-to-put-into-production">How to put into production?<a class="headerlink" href="#how-to-put-into-production" title="Permanent link">&para;</a></h4>
 <p>After you have edited your files and/or directories, you need now to pubish your
 modifications into production. For this please click on the link
 [Publish site] on the top of the webpage. Enter a commit message on click on [Submit].</p>
-<h3 id="links">Links</h3>
+<h3 id="links">Links<a class="headerlink" href="#links" title="Permanent link">&para;</a></h3>
 <p><a href="http://www.apache.org/dev/cmsref.html">CMS Documentation Reference</a></p>
         </article>
     </section>

Modified: websites/staging/rave/trunk/content/events/2011/apachecon2011-meetup.html
==============================================================================
--- websites/staging/rave/trunk/content/events/2011/apachecon2011-meetup.html (original)
+++ websites/staging/rave/trunk/content/events/2011/apachecon2011-meetup.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,7 +88,18 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <h3 id="rave-community-meetup-in-vancouver-in-november-2011">Rave Community MeetUp in Vancouver in November 2011</h3>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<h3 id="rave-community-meetup-in-vancouver-in-november-2011">Rave Community MeetUp in Vancouver in November 2011<a class="headerlink" href="#rave-community-meetup-in-vancouver-in-november-2011" title="Permanent link">&para;</a></h3>
 <p>As a sidetrack of ApacheCon NA 2011, we are organizing a community gathering for 
 everyone interested in Apache Rave (Incubating), and related projects such as the 
 incubating project <a href="http://incubator.apache.org/wookie">Wookie</a>. The gathering is free for everyone and will take
@@ -96,11 +108,11 @@ place at the ApacheCon venue in Vancouve
 And don't forget to check out the <a href="http://na11.apachecon.com/pages/meetups">list</a> of other MeetUps @ ApacheCon</p>
 <p>Feel free to update this page or send suggestions to the list. If you're new 
 to editing the website, see the <a href="/edit-website.html">help page</a> for how to get started.</p>
-<h3 id="where-and-when">Where and When</h3>
+<h3 id="where-and-when">Where and When<a class="headerlink" href="#where-and-when" title="Permanent link">&para;</a></h3>
 <p>Wednesday, 9 November, 8-10pm
 The Westin Bayshore Vancouver, 1601 Bayshore Drive Vancouver, Canada
 Room: Salon A</p>
-<h3 id="program">Program</h3>
+<h3 id="program">Program<a class="headerlink" href="#program" title="Permanent link">&para;</a></h3>
 <p>Topics:</p>
 <ol>
 <li>

Modified: websites/staging/rave/trunk/content/events/2013/apachecon_na.html
==============================================================================
--- websites/staging/rave/trunk/content/events/2013/apachecon_na.html (original)
+++ websites/staging/rave/trunk/content/events/2013/apachecon_na.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,10 +88,21 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>Apache Rave will be at ApacheCon North America 2013, being held at the Hilton Portland and Executive Towers February 26th - 28th.  For more information about the conference visit the <a href="http://na.apachecon.com">official webpage</a>.</p>
-<h2 id="sessions">Sessions</h2>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>Apache Rave will be at ApacheCon North America 2013, being held at the Hilton Portland and Executive Towers February 26th - 28th.  For more information about the conference visit the <a href="http://na.apachecon.com">official webpage</a>.</p>
+<h2 id="sessions">Sessions<a class="headerlink" href="#sessions" title="Permanent link">&para;</a></h2>
 <p>Apache Rave will be represented in the following tutorials &amp; sessions:</p>
-<table>
+<table class="table">
 <thead>
 <tr>
 <th>Type</th>
@@ -114,7 +126,7 @@
 </tr>
 </tbody>
 </table>
-<h2 id="meetups-hackathons">Meetups &amp; Hackathons</h2>
+<h2 id="meetups-hackathons">Meetups &amp; Hackathons<a class="headerlink" href="#meetups-hackathons" title="Permanent link">&para;</a></h2>
 <p>We are currently working to organize an Apache Rave meetup and potential hackathon session.  If you are interested in attending or helping organize, please add yourself to the <a href="http://wiki.apache.org/rave/MeetupApacheConNa2013">wiki</a>.</p>
 <p>Hackathon - We are trying to get a spot for the Monday Hackathon. Please go to the <a href="http://wiki.apache.org/apachecon/HackathonNA13">ApacheCon NA 2013 Hackathon page</a> and +1 our project if you want to participate.</p>
         </article>

Modified: websites/staging/rave/trunk/content/get-involved.html
==============================================================================
--- websites/staging/rave/trunk/content/get-involved.html (original)
+++ websites/staging/rave/trunk/content/get-involved.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,7 +88,18 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>You don't need to be a software developer to contribute to 
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>You don't need to be a software developer to contribute to 
 Apache Rave. To be successful this project 
 requires a huge range of different skills, levels of involvement and degrees of 
 technical expertise. So, if you want to get involved in Apache Rave, there 
@@ -110,10 +122,10 @@ is almost certainly a role for you. </p>
 the community. The project team and the broader community will 
 therefore welcome and encourage participation, and attempt to make it 
 as easy as possible for people to get involved. </p>
-<h2 id="mailing-lists">Mailing lists</h2>
+<h2 id="mailing-lists">Mailing lists<a class="headerlink" href="#mailing-lists" title="Permanent link">&para;</a></h2>
 <p>Your first engagement with the project should be to subscribe to our
 <a href="/mailing-lists.html">mailing lists</a>.</p>
-<h2 id="decision-making">Decision Making</h2>
+<h2 id="decision-making">Decision Making<a class="headerlink" href="#decision-making" title="Permanent link">&para;</a></h2>
 <p>The most important thing about engaging with any Apache project is that everyone
 is equal. All people with an opinion are entitled to express that opinion and, where 
 appropriate, have it considered by the community.</p>
@@ -123,22 +135,22 @@ set of simple processes to ensure things
 <p>In ASF projects we don't like to vote. We reserve that for the few things that need 
 official approval for legal or process reasons (e.g. a release or a new committer). 
 Most of the time we work with the consensus building techniques documented below.</p>
-<h3 id="lazy-consensus">Lazy Consensus</h3>
+<h3 id="lazy-consensus">Lazy Consensus<a class="headerlink" href="#lazy-consensus" title="Permanent link">&para;</a></h3>
 <p><a href="/docs/governance/lazyConsensus.html">Lazy consensus</a> is the first, and possibly the most important, consensus building 
 tool we have. Essentially lazy consensus means that you don't need to get explicit
 approval to proceed, but you need to be prepared to listen if someone objects.</p>
-<h3 id="consensus-building">Consensus Building</h3>
+<h3 id="consensus-building">Consensus Building<a class="headerlink" href="#consensus-building" title="Permanent link">&para;</a></h3>
 <p>Sometimes lazy consensus is not appropriate. In such cases it is necessary to
 make a proposal to the mailing list and discuss options. There are mechanisms
 for quickly showing your support or otherwise for a proposal and 
 <a href="/docs/governance/consensusBuilding.html">building consensus</a> amongst the community.</p>
 <p>Once there is a consensus people can proceed with the work under the <a href="/docs/governance/lazyConsensus.html">lazy 
 consensus</a> model.</p>
-<h3 id="voting">Voting</h3>
+<h3 id="voting">Voting<a class="headerlink" href="#voting" title="Permanent link">&para;</a></h3>
 <p>Occasionally a "feel" for consensus is not enough. Sometimes we need to 
 have a measurable consensus. For example, when <a href="/docs/governance/voting.html">voting</a> in new committers or 
 to approve a release. </p>
-<h2 id="contributing-guidelines">Contributing Guidelines</h2>
+<h2 id="contributing-guidelines">Contributing Guidelines<a class="headerlink" href="#contributing-guidelines" title="Permanent link">&para;</a></h2>
 <p>We welcome code contributions for both existing and new project issues.  If you wish to contribute a solution to an existing entry in 
 <a href="https://issues.apache.org/jira/browse/RAVE">Rave's Jira</a>, please first comment on the issue to provide a description and patch for your solution.  Submitting the patch to
 Apache's Jira and selecting the "Grant license to ASF for inclusion" option is required. Then submit your patch to 

Modified: websites/staging/rave/trunk/content/ide-settings-and-debugging.html
==============================================================================
--- websites/staging/rave/trunk/content/ide-settings-and-debugging.html (original)
+++ websites/staging/rave/trunk/content/ide-settings-and-debugging.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,7 +88,18 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <h2 id="configuring-eclipse">Configuring Eclipse</h2>
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<h2 id="configuring-eclipse">Configuring Eclipse<a class="headerlink" href="#configuring-eclipse" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Install <a href="http://download.eclipse.org/webtools/downloads/">Eclipse for Java EE</a></li>
 <li>Install M2Eclipse from:<ul>
@@ -127,7 +139,7 @@
 Apache Rave from inside Eclipse. This gives a faster turnaround in the
 edit/build/deploy cycle.</p>
 <p>There are a few different ways to do this:</p>
-<h3 id="using-remote-debugging-and-the-eclipse-filesync-plugin">Using Remote debugging and the Eclipse FileSync plugin</h3>
+<h3 id="using-remote-debugging-and-the-eclipse-filesync-plugin">Using Remote debugging and the Eclipse FileSync plugin<a class="headerlink" href="#using-remote-debugging-and-the-eclipse-filesync-plugin" title="Permanent link">&para;</a></h3>
 <p>The OSS <a href="http://andrei.gmxhome.de/filesync/index.html">Eclipse FileSync</a> plugin can automatically synchronize (re)source changes
 (e.g. .jsp, .css, .js) made in the Eclipse IDE directly to the runtime tomcat deployment
 started (separately) through maven cargo:run. And you can attach the Eclipse debugger
@@ -148,7 +160,7 @@ exist. Furthermore, if you are not using
 <p>If you have "Build automatically" enabled within Eclipse, the FileSync plugin will synchronize
 changes automatically after you saved them in Eclipse. Otherwise you can force a manual
 synchronization from the project (rave-portal or rave-shindig) its context menu actions.</p>
-<h3 id="using-eclipse-wtp">Using Eclipse WTP</h3>
+<h3 id="using-eclipse-wtp">Using Eclipse WTP<a class="headerlink" href="#using-eclipse-wtp" title="Permanent link">&para;</a></h3>
 <p>The Apache Rave project can also be deployed through Eclipse WTP, and might be adequate for some, but it
 it is less functional and sometimes a bit quirky. Furthermore, because of (current) limitations
 of the m2eclipse WTP integration for maven war overlays (which the rave-shindig project uses),
@@ -177,12 +189,12 @@ and then (re)import the Apache Rave proj
 <li>Start the server</li>
 <li>Now see the instructions above for logging into the server</li>
 </ul>
-<h2 id="configuring-intellij">Configuring Intellij</h2>
+<h2 id="configuring-intellij">Configuring Intellij<a class="headerlink" href="#configuring-intellij" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Checkout Apache Rave project</li>
 <li>File &gt; New project &gt; Import project from external model and select pom.xml</li>
 </ul>
-<h2 id="configure-remote-tomcat-and-intellij">Configure remote Tomcat and Intellij</h2>
+<h2 id="configure-remote-tomcat-and-intellij">Configure remote Tomcat and Intellij<a class="headerlink" href="#configure-remote-tomcat-and-intellij" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Go to Project Structure  and select Artifacts</li>
 <li>Add new artifact of type "Other"</li>
@@ -191,7 +203,7 @@ and then (re)import the Apache Rave proj
 <li>Repeat above steps for Shindig artifact (use "rave-shindig:war exploded" artifact and use "CATALINA_HOME/webapps/ROOT" as output directory</li>
 <li>Repeat above steps for Gadgets artifact (use "rave-demo-gadgets:war exploded" artifact and use "CATALINA_HOME/webapps/gadgets" as output directory</li>
 </ul>
-<h2 id="debug-with-intellij-and-remote-tomcat">Debug with Intellij and remote tomcat</h2>
+<h2 id="debug-with-intellij-and-remote-tomcat">Debug with Intellij and remote tomcat<a class="headerlink" href="#debug-with-intellij-and-remote-tomcat" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Install <a href="http://plugins.intellij.net/plugin/?idea&amp;id=6617">OpenJpa Enhancer integration plugin</a> Without this plugin you'll need to use maven for compiling. See also <a href="https://github.com/machak/enhancer/wiki">plugin documentation</a></li>
 <li>Configure Remote Tomcat debugging configuration at port 8000</li>

Modified: websites/staging/rave/trunk/content/index.html
==============================================================================
--- websites/staging/rave/trunk/content/index.html (original)
+++ websites/staging/rave/trunk/content/index.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,17 +88,27 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <div class="hero-unit">
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<div class="hero-unit">
   <h1>Welcome to Apache Rave!</h1>
   <p>Apache Rave a new web and social mashup engine that aggregates and serves web widgets.  Rave is targeted as engine for internet and intranet portals and
    integrates Apache Shindig & Apache Wookie to provide OpenSocial & W3C widget support, respectively.</p> 
 </div>
 
 <blockquote>
-<p><strong>Apache Rave team is proud to announce the release of <a href="/downloads.html">Apache Rave <span id="latest_release">&nbsp;</span></a>.</strong><br />
-</p>
+<p><strong>Apache Rave team is proud to announce the release of <a href="/downloads.html">Apache Rave <span id="latest_release">&nbsp;</span></a>.</strong>  </p>
 </blockquote>
-<h2 id="status-of-apache-rave">Status of Apache Rave</h2>
+<h2 id="status-of-apache-rave">Status of Apache Rave<a class="headerlink" href="#status-of-apache-rave" title="Permanent link">&para;</a></h2>
 <p>Apache Rave brings together and combines several pre-existing projects and teams
 working towards more or less the same or overlapping goals. Each of these projects
 is already in production, but Rave is a brand new start. We are bringing together
@@ -109,7 +120,7 @@ personalization, collaboration and conte
 quality out-of-the-box installation as well as be easy to integrate in other 
 platforms and solutions.</p>
 <p>The intended features include:</p>
-<h3 id="core-features">Core Features</h3>
+<h3 id="core-features">Core Features<a class="headerlink" href="#core-features" title="Permanent link">&para;</a></h3>
 <ol>
 <li>Advanced OpenSocial compliance and optional features support</li>
 <li>Native W3C Widgets support through <a href="http://wookie.apache.org">Apache Wookie</a></li>
@@ -123,7 +134,7 @@ platforms and solutions.</p>
 <li>Set of common and general purpose Gadgets to be usable out-of-the-box</li>
 <li>Support for inter-gadget messaging with examples </li>
 </ol>
-<h3 id="extensible-features">Extensible Features</h3>
+<h3 id="extensible-features">Extensible Features<a class="headerlink" href="#extensible-features" title="Permanent link">&para;</a></h3>
 <ol>
 <li>Pluggable persistence</li>
 <li>Pluggable security model with example modules for authentication and authorization</li>

Modified: websites/staging/rave/trunk/content/integration-tests.html
==============================================================================
--- websites/staging/rave/trunk/content/integration-tests.html (original)
+++ websites/staging/rave/trunk/content/integration-tests.html Sun Feb  7 21:02:46 2016
@@ -29,6 +29,7 @@
 </head>
 
 <body>
+  <div style="background: red"><h1>2016/02/07 - Apache Rave has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
 
   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
@@ -87,20 +88,31 @@
     </header>
     <section id="content" class="row">
         <article class="span12">
-          <p>Individual classes and methods should be covered with JUnit tests. In order to check the overall features of the Apache
+          <style type="text/css">
+/* The following code is added by mdx_elementid.py
+   It was originally lifted from http://subversion.apache.org/style/site.css */
+/*
+ * Hide class="elementid-permalink", except when an enclosing heading
+ * has the :hover property.
+ */
+.headerlink, .elementid-permalink {
+  visibility: hidden;
+}
+h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
+<p>Individual classes and methods should be covered with JUnit tests. In order to check the overall features of the Apache
 Rave project, integration tests are needed. For Apache Rave we use <a href="http://jbehave.org">JBehave</a> to develop and run
 test stories. JBehave uses Selenium to start a browser session and perform the tests in the browser (Mozilla Firefox).</p>
-<h2 id="system-requirements">System requirements</h2>
+<h2 id="system-requirements">System requirements<a class="headerlink" href="#system-requirements" title="Permanent link">&para;</a></h2>
 <ul>
 <li>Java 6 or up</li>
 <li><a href="http://maven.apache.org">Maven 3</a></li>
 </ul>
 <p>Running the integration tests requires more memory than a normal build. It is recommended to raise the memory settings:</p>
-<div class="codehilite"><pre><span class="n">export</span> <span class="n">MAVEN_OPTS</span><span class="o">=</span><span class="s">&quot;-Xmx768m -XX:MaxPermSize=256m&quot;</span>
+<div class="codehilite"><pre><span class="n">export</span> <span class="n">MAVEN_OPTS</span><span class="p">=</span>&quot;<span class="o">-</span><span class="n">Xmx768m</span> <span class="o">-</span><span class="n">XX</span><span class="p">:</span><span class="n">MaxPermSize</span><span class="p">=</span>256<span class="n">m</span>&quot;
 </pre></div>
 
 
-<h2 id="run-all-tests">Run all tests</h2>
+<h2 id="run-all-tests">Run all tests<a class="headerlink" href="#run-all-tests" title="Permanent link">&para;</a></h2>
 <p>The integration tests can be triggered as integral part of the portal build from the <code>rave-project</code> directory:</p>
 <div class="codehilite"><pre><span class="n">mvn</span> <span class="o">-</span><span class="n">Pintegration</span><span class="o">-</span><span class="n">tests</span>
 </pre></div>
@@ -109,7 +121,7 @@ test stories. JBehave uses Selenium to s
 <p>If you only want to run the integration tests without building the whole project execute this from <code>rave-integration-tests</code>
 directory.</p>
 <p>Maven will delete the existing H2 database in <code>/tmp</code>, start up the portal, run all tests and then shut down the portal.</p>
-<h2 id="run-individual-test-stories">Run individual test stories</h2>
+<h2 id="run-individual-test-stories">Run individual test stories<a class="headerlink" href="#run-individual-test-stories" title="Permanent link">&para;</a></h2>
 <p>Individual stories that extend <code>org.apache.rave.integrationtests.stories.PortalStories</code> can be run as junit tests in
 your IDE.</p>
 <p>For individual stories Maven will not automatically start or stop the portal. You need a running portal on