Apache Archiva Versionned docs for 2.2.1

git-svn-id: http://svn.apache.org/repos/asf/archiva/site-content@1746104 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/docs/2.2.1/adminguide/customising-security.html b/docs/2.2.1/adminguide/customising-security.html
index 006758a..8bfb9fa 100644
--- a/docs/2.2.1/adminguide/customising-security.html
+++ b/docs/2.2.1/adminguide/customising-security.html
@@ -389,7 +389,46 @@
 <p><b>Note:</b> If installed standalone, Archiva's list of configuration files is <i>itself</i> configurable, and can be found in: <tt>apps/archiva/WEB-INF/applicationContext.xml</tt></p>
 <p>Values from sources</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div></div>
+<pre>&lt;bean name=&quot;commons-configuration&quot; class=&quot;org.apache.archiva.redback.components.registry.commons.CommonsConfigurationRegistry&quot;
+  init-method=&quot;initialize&quot;&gt;
+  &lt;property name=&quot;properties&quot;&gt;
+    &lt;value&gt;
+      &lt;![CDATA[
+      &lt;configuration&gt;
+        &lt;system/&gt;
+        &lt;jndi prefix=&quot;java:comp/env&quot; config-optional=&quot;true&quot;/&gt;
+        &lt;xml fileName=&quot;${user.home}/.m2/archiva.xml&quot; config-optional=&quot;true&quot;
+             config-name=&quot;org.apache.archiva.user&quot;
+             config-at=&quot;org.apache.archiva&quot;/&gt;
+        &lt;xml fileName=&quot;${user.home}/.m2/shared.xml&quot; config-optional=&quot;true&quot;
+             config-name=&quot;org.apache.maven.shared.app.user&quot; config-at=&quot;org.apache.maven.shared.app&quot;
+             config-forceCreate=&quot;true&quot;/&gt;
+        &lt;properties fileName=&quot;${user.home}/.m2/security.properties&quot; config-optional=&quot;true&quot;
+                    config-at=&quot;org.apache.archiva.redback&quot;/&gt;
+        &lt;properties fileName=&quot;${user.home}/.m2/archiva.properties&quot; config-optional=&quot;true&quot;
+                    config-at=&quot;org.apache.archiva.redback&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.base}/conf/archiva.xml&quot; config-optional=&quot;true&quot;
+             config-name=&quot;org.apache.archiva.base&quot;
+             config-at=&quot;org.apache.archiva&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.base}/conf/shared.xml&quot; config-optional=&quot;true&quot;
+             config-name=&quot;org.apache.maven.shared.app.base&quot; config-at=&quot;org.apache.maven.shared.app&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.base}/conf/common.xml&quot; config-optional=&quot;true&quot;/&gt;
+        &lt;properties fileName=&quot;${appserver.base}/conf/security.properties&quot; config-optional=&quot;true&quot;
+                    config-at=&quot;org.apache.archiva.redback&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.home}/conf/archiva.xml&quot; config-optional=&quot;true&quot;
+             config-at=&quot;org.apache.archiva&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.home}/conf/shared.xml&quot; config-optional=&quot;true&quot;
+             config-at=&quot;org.apache.maven.shared.app&quot;/&gt;
+        &lt;xml fileName=&quot;${appserver.home}/conf/common.xml&quot; config-optional=&quot;true&quot;/&gt;
+        &lt;properties fileName=&quot;${appserver.home}/conf/security.properties&quot; config-optional=&quot;true&quot;
+                    config-at=&quot;org.apache.archiva.redback&quot;/&gt;
+        &lt;properties fileName=&quot;org/apache/archiva/redback-security.properties&quot; config-at=&quot;org.apache.archiva.redback&quot;/&gt;
+      &lt;/configuration&gt;
+      ]]&gt;
+    &lt;/value&gt;
+  &lt;/property&gt;    
+&lt;/bean&gt;
+</pre></div></div>
                   </div>
             </div>
           </div>
diff --git a/docs/2.2.1/adminguide/repositories-content-storage.html b/docs/2.2.1/adminguide/repositories-content-storage.html
index 2d490b0..4329a6e 100644
--- a/docs/2.2.1/adminguide/repositories-content-storage.html
+++ b/docs/2.2.1/adminguide/repositories-content-storage.html
@@ -350,12 +350,44 @@
 <p>Prior to version 1.4-M1, repository content is now stored in a jcr repository (based on Apache Jackrabbit implementation).</p>
 <p>A default Jackrabbit configuration is provided :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>&lt;Repository&gt;
+  &lt;FileSystem class=&quot;org.apache.jackrabbit.core.fs.local.LocalFileSystem&quot;&gt;
+    &lt;param name=&quot;path&quot; value=&quot;${rep.home}/repository&quot;/&gt;
+  &lt;/FileSystem&gt;
+  &lt;Security appName=&quot;Jackrabbit&quot;&gt;
+    &lt;SecurityManager class=&quot;org.apache.jackrabbit.core.security.simple.SimpleSecurityManager&quot; workspaceName=&quot;security&quot;/&gt;
+    &lt;AccessManager class=&quot;org.apache.jackrabbit.core.security.simple.SimpleAccessManager&quot;/&gt;
+    &lt;LoginModule class=&quot;org.apache.jackrabbit.core.security.simple.SimpleLoginModule&quot;/&gt;
+  &lt;/Security&gt;
+  &lt;Workspaces rootPath=&quot;${rep.home}/workspaces&quot; defaultWorkspace=&quot;default&quot;/&gt;
+  &lt;Workspace name=&quot;${wsp.name}&quot;&gt;
+    &lt;FileSystem class=&quot;org.apache.jackrabbit.core.fs.local.LocalFileSystem&quot;&gt;
+      &lt;param name=&quot;path&quot; value=&quot;${wsp.home}&quot;/&gt;
+    &lt;/FileSystem&gt;
+    &lt;PersistenceManager class=&quot;org.apache.jackrabbit.core.persistence.bundle.BundleFsPersistenceManager&quot;/&gt;
+    &lt;SearchIndex class=&quot;org.apache.jackrabbit.core.query.lucene.SearchIndex&quot;&gt;
+      &lt;param name=&quot;path&quot; value=&quot;${wsp.home}/index&quot;/&gt;
+    &lt;/SearchIndex&gt;
+  &lt;/Workspace&gt;
+  &lt;Versioning rootPath=&quot;${rep.home}/version&quot;&gt;
+    &lt;FileSystem class=&quot;org.apache.jackrabbit.core.fs.local.LocalFileSystem&quot;&gt;
+      &lt;param name=&quot;path&quot; value=&quot;${rep.home}/version&quot;/&gt;
+    &lt;/FileSystem&gt;
+    &lt;PersistenceManager class=&quot;org.apache.jackrabbit.core.persistence.bundle.BundleFsPersistenceManager&quot;/&gt;
+  &lt;/Versioning&gt;
+&lt;/Repository&gt;
+</pre></div>
 <p>You can use your own configuration by adding a file repository.xml in ${appserver.base}/conf.</p>
 <p>By default, the Jcr repository is stored ${appserver.base}/data/jcr.</p>
 <p>If you want to change this default location, you must edit the file WEB-INF/applicationContext.xml, uncomment/edit lines and change with your values:</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div></div>
+<pre>&lt;!--
+&lt;bean id=&quot;jcr-config&quot; class=&quot;org.apache.archiva.metadata.repository.jcr.ArchivaJcrRepositoryConfig&quot; factory-method=&quot;create&quot;&gt;
+  &lt;constructor-arg value=&quot;${appserver.base}/conf/repository.xml&quot;/&gt;
+  &lt;constructor-arg value=&quot;${appserver.base}/data/jcr&quot;/&gt;
+&lt;/bean&gt;
+--&gt;
+</pre></div></div>
 <div class="section">
 <h3><a name="Cassandra"></a>Cassandra</h3>
 <p>With the distribution including the embeded Jetty, you can configure Cassandra runtime in the file conf/archiva-cassandra.properties.</p>
diff --git a/docs/2.2.1/adminguide/webservices/rest.html b/docs/2.2.1/adminguide/webservices/rest.html
index 2fceab4..55a3fcb 100644
--- a/docs/2.2.1/adminguide/webservices/rest.html
+++ b/docs/2.2.1/adminguide/webservices/rest.html
@@ -347,22 +347,45 @@
 <h3><a name="Search_Service"></a>Search Service</h3>
 <p>Authentication headers for connect to your Archiva instance :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>    // guest with an empty password
+    public static String guestAuthzHeader =
+        &quot;Basic &quot; + org.apache.cxf.common.util.Base64Utility.encode( ( &quot;guest&quot; + &quot;:&quot; ).getBytes() );
+
+    // with an other login/password
+    //public String authzHeader =
+    //    &quot;Basic &quot; + org.apache.cxf.common.util.Base64Utility.encode( ( &quot;login&quot; + &quot;:password&quot; ).getBytes() );
+
+</pre></div>
 <p>Get a Search Service Client :</p>
 <div class="source">
 <pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
 <p>Quick Search</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>List&lt;Artifact&gt; artifacts = searchService.quickSearch( &quot;commons-logging&quot; );
+// return all artifacts with groupId OR artifactId OR version OR packaging OR className
+// NOTE : only artifacts with classifier empty are returned
+</pre></div>
 <p>Search Artifacts Version : to search all availables version with a groupId and artifactId and packaging (if empty jar is used)</p>
 <div class="source">
 <pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
 <p>Search Service with a classifier :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>        SearchRequest searchRequest = new SearchRequest();
+        searchRequest.setGroupId( &quot;commons-logging&quot; );
+        searchRequest.setArtifactId( &quot;commons-logging&quot; );
+        searchRequest.setClassifier( &quot;sources&quot; );
+
+        List&lt;Artifact&gt; artifacts = searchService.searchArtifacts( searchRequest );
+</pre></div>
 <p>Search Service with a classifier :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>        SearchRequest searchRequest = new SearchRequest();
+        searchRequest.setGroupId( &quot;commons-logging&quot; );
+        searchRequest.setArtifactId( &quot;commons-logging&quot; );
+        searchRequest.setClassifier( &quot;sources&quot; );
+
+        List&lt;Artifact&gt; artifacts = searchService.searchArtifacts( searchRequest );
+</pre></div>
 <p>Copy Artifact from a repository to an other one :</p>
 <p>For some reasons you want to use a test repository before moving your artifacts to a repository used by final users. To achieve this, you can use a service which can copy an artifact from a repository to an other one</p>
 <div class="source">
@@ -409,7 +432,15 @@
 </pre></div>
 <p>Get artifacts based on project version metadata, generic metadata added previously in Archiva :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>        BrowseService browseService = getBrowseService( authorizationHeader, true );
+
+        browseService.addMetadata( &quot;commons-cli&quot;, &quot;commons-cli&quot;, &quot;1.0&quot;, &quot;wine&quot;, &quot;bordeaux&quot;, TEST_REPO_ID );
+
+        List&lt;Artifact&gt; artifactDownloadInfos =
+            browseService.getArtifactsByProjectVersionMetadata( &quot;wine&quot;, &quot;bordeaux&quot;, TEST_REPO_ID );
+
+        assertThat( artifactDownloadInfos ).isNotNull().isNotEmpty().hasSize( 3 );
+</pre></div>
 <p>Get artifacts based on the artifact properties :</p>
 <div class="source">
 <pre>        BrowseService browseService = getBrowseService( authorizationHeader, true );
@@ -420,7 +451,13 @@
 </pre></div>
 <p>Get artifacts based on the project properties from POM :</p>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>        BrowseService browseService = getBrowseService( authorizationHeader, true );
+
+        List&lt;Artifact&gt; artifactDownloadInfos =
+            browseService.getArtifactsByProperty( &quot;org.name&quot;, &quot;The Apache Software Foundation&quot;, TEST_REPO_ID );
+
+        assertThat( artifactDownloadInfos ).isNotNull().isNotEmpty().hasSize( 7 );
+</pre></div>
 <p>Searching by properties and metadata :</p>
 <div class="source">
 <pre>        BrowseService browseService = getBrowseService( authorizationHeader, true );
@@ -431,7 +468,13 @@
         assertThat( artifactDownloadInfos ).isNotNull().isNotEmpty().hasSize( 7 );
 </pre></div>
 <div class="source">
-<pre>Error during retrieving content skip as ignoreDownloadError activated.</pre></div>
+<pre>        BrowseService browseService = getBrowseService( authorizationHeader, true );
+
+        List&lt;Artifact&gt; artifactDownloadInfos =
+            browseService.searchArtifacts( &quot;The Apache Software Foundation&quot;, TEST_REPO_ID, true );
+
+        assertThat( artifactDownloadInfos ).isNotNull().isNotEmpty().hasSize( 7 );
+</pre></div>
 <p>Get Search</p>
 <div class="source">
 <pre>List&lt;Artifact&gt; artifacts = searchService.quickSearch( &quot;commons-logging&quot; );
diff --git a/docs/2.2.1/release-notes.html b/docs/2.2.1/release-notes.html
index c70fe29..1c3cbf5 100644
--- a/docs/2.2.1/release-notes.html
+++ b/docs/2.2.1/release-notes.html
@@ -352,7 +352,7 @@
 <ul>
 <li>If using the Cassandra backend, the metadatafacet column 'key' has been renamed to 'facetKey' in 2.2.0 so you should copy the data to the new column manually.</li>
 <li>If upgrading from earlier versions of Archiva, the list of libraries in <tt>wrapper.conf</tt> has changed. If you have customized your copy of <tt>wrapper.conf</tt>, please update it for compatibility with the version distributed with the current release.</li>
-<li>As the database storage has been removed, you can remove the JNDI entry for <tt>jdbc/archiva</tt>. After upgrading from a previous version, you will have to run a full scan to populate the new JCR Repository. This will be done on first start of Archiva.
+<li>As the database storage has been removed, you can remove the JNDI entry for <tt>jdbc/archiva</tt>. 
 <p>Refer to the <a href="./adminguide/upgrade.html"> Upgrading Archiva guide</a> for more information.</p></li></ul></div>
 <div class="section">
 <h3><a name="Release_Notes"></a>Release Notes</h3>
@@ -361,41 +361,22 @@
 <h3><a name="Changes_in_Archiva_2.2.1"></a>Changes in Archiva 2.2.1</h3>
 <p>Released: <b>???</b></p>
 <div class="section">
-<h4><a name="New_Feature"></a>New Feature</h4>
-<ul>
-<li>[MRM-1867] - Adding a find jar by checksum functionality to the REST api</li></ul></div>
-<div class="section">
 <h4><a name="Improvement"></a>Improvement</h4>
 <ul>
-<li>[MRM-1390] - Generic metadata should be searcheable in Archiva search</li>
-<li>[MRM-1844] - Allow LDAP groupOfNames</li></ul></div>
+<li>[MRM-1201] - Artifact upload success message should mention the classifier</li>
+<li>[MRM-1906] - Allowing filtering of LDAP groups</li></ul></div>
 <div class="section">
 <h4><a name="Bug"></a>Bug</h4>
 <ul>
-<li>[MRM-770] - Archiva web client does not recognize classifier</li>
-<li>[MRM-813] - Audit log is reporting &quot;Modify File (proxied)&quot; when no proxy connectors exist and the file has not changed</li>
-<li>[MRM-837] - Cannot download SNAPSHOT version</li>
-<li>[MRM-935] - Archiva doesn't supports artifact with &lt;version&gt;SNAPSHOT&lt;/version&gt;</li>
-<li>[MRM-1145] - RSS tests do not correctly check responses</li>
-<li>[MRM-1311] - Logging in ArtifactMissingChecksumsConsumer does not appear in the logs even if configured properly</li>
-<li>[MRM-1486] - ldap.config.mapper.attribute.user.filter using ldap not working correctly with commas.</li>
-<li>[MRM-1767] - When selecting a specific repository to browse, I get an error that I don't have sufficient privileges.</li>
-<li>[MRM-1807] - Archiva wrapper fail to start</li>
-<li>[MRM-1810] - LDAP - groups config not available in Users Runtime Configuration - Properties</li>
-<li>[MRM-1811] - Users - Manage section: pagination needs to change</li>
-<li>[MRM-1846] - Regression in 2.0.1 : uniqueVersion false not supported</li>
-<li>[MRM-1848] - download links for files mult-dot extensions incorrect in Browse view</li>
-<li>[MRM-1851] - generic metadata GUI broken</li>
-<li>[MRM-1860] - ClassNotFound exception with JBoss</li>
-<li>[MRM-1863] - RepositoryGroup URL is not build using the Application URL</li>
-<li>[MRM-1864] - Default configuration for central should now use SSL</li>
-<li>[MRM-1871] - ConcurrentModificationException in DefaultRepositoryProxyConnectors</li>
-<li>[MRM-1873] - archiva doesn't recognise ldap-group to ldap-users mapping</li></ul></div>
-<div class="section">
-<h4><a name="Task"></a>Task</h4>
-<ul>
-<li>[MRM-1359] - Remove Maven 1.x functionality</li>
-<li>[MRM-1865] - remove isPermanent from Consumer API</li></ul></div></div>
+<li>[MRM-1873] - archiva doesn't recognise ldap-group to ldap-users mapping</li>
+<li>[MRM-1877] - Checksum files always recreated</li>
+<li>[MRM-1879] - Bug in create-missing-checksum consumer</li>
+<li>[MRM-1886] - View Artifact Content Action does not Work </li>
+<li>[MRM-1887] - Syntax error in DOAP file release section; wrong bug- database URL</li>
+<li>[MRM-1892] - Only One Page of Proxy Connector Rules Shown</li>
+<li>[MRM-1893] - Please delete old releases from mirroring system</li>
+<li>[MRM-1896] - Invalid link to license</li>
+<li>[MRM-1914] - Maven cannot find dependency</li></ul></div></div>
 <div class="section">
 <h3><a name="History"></a>History</h3>
 <p>Archiva was started in November 2005, building a simple framework on top of some existing repository conversion tools within the Maven project. Initial development focused on repository conversion, error reporting, and indexing. From January 2006 a web application was started to visualise the information and to start incorporating functionality from the unmaintained maven-proxy project.</p>