diff --git a/config/src/main/java/org/springframework/security/config/http/DefaultFilterChainValidator.java b/config/src/main/java/org/springframework/security/config/http/DefaultFilterChainValidator.java
index e8b5d50028..a55a59a835 100644
--- a/config/src/main/java/org/springframework/security/config/http/DefaultFilterChainValidator.java
+++ b/config/src/main/java/org/springframework/security/config/http/DefaultFilterChainValidator.java
@@ -19,8 +19,8 @@ import org.springframework.security.web.authentication.UsernamePasswordAuthentic
import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
import org.springframework.security.web.authentication.www.BasicProcessingFilter;
import org.springframework.security.web.context.SecurityContextPersistenceFilter;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter;
import org.springframework.security.web.session.SessionManagementFilter;
-import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
public class DefaultFilterChainValidator implements FilterChainProxy.FilterChainValidator {
private Log logger = LogFactory.getLog(getClass());
diff --git a/config/src/main/java/org/springframework/security/config/http/HttpConfigurationBuilder.java b/config/src/main/java/org/springframework/security/config/http/HttpConfigurationBuilder.java
index cdcfd282cd..31e7297722 100644
--- a/config/src/main/java/org/springframework/security/config/http/HttpConfigurationBuilder.java
+++ b/config/src/main/java/org/springframework/security/config/http/HttpConfigurationBuilder.java
@@ -42,11 +42,11 @@ import org.springframework.security.web.authentication.session.ConcurrentSession
import org.springframework.security.web.authentication.session.SessionFixationProtectionStrategy;
import org.springframework.security.web.context.HttpSessionSecurityContextRepository;
import org.springframework.security.web.context.SecurityContextPersistenceFilter;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter;
import org.springframework.security.web.session.ConcurrentSessionFilter;
import org.springframework.security.web.session.SessionManagementFilter;
import org.springframework.security.web.util.AntUrlPathMatcher;
import org.springframework.security.web.util.UrlMatcher;
-import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
import org.springframework.util.StringUtils;
import org.springframework.util.xml.DomUtils;
import org.w3c.dom.Element;
diff --git a/config/src/test/java/org/springframework/security/config/FilterChainProxyConfigTests.java b/config/src/test/java/org/springframework/security/config/FilterChainProxyConfigTests.java
index ce398aed0f..94142c05cb 100644
--- a/config/src/test/java/org/springframework/security/config/FilterChainProxyConfigTests.java
+++ b/config/src/test/java/org/springframework/security/config/FilterChainProxyConfigTests.java
@@ -36,7 +36,7 @@ import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.security.web.FilterChainProxy;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationProcessingFilter;
import org.springframework.security.web.context.SecurityContextPersistenceFilter;
-import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter;
/**
* Tests {@link FilterChainProxy}.
diff --git a/config/src/test/java/org/springframework/security/config/http/HttpSecurityBeanDefinitionParserTests.java b/config/src/test/java/org/springframework/security/config/http/HttpSecurityBeanDefinitionParserTests.java
index 9cf40ca473..916303b9df 100644
--- a/config/src/test/java/org/springframework/security/config/http/HttpSecurityBeanDefinitionParserTests.java
+++ b/config/src/test/java/org/springframework/security/config/http/HttpSecurityBeanDefinitionParserTests.java
@@ -69,9 +69,9 @@ import org.springframework.security.web.context.HttpSessionSecurityContextReposi
import org.springframework.security.web.context.SecurityContextPersistenceFilter;
import org.springframework.security.web.savedrequest.HttpSessionRequestCache;
import org.springframework.security.web.savedrequest.RequestCacheAwareFilter;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter;
import org.springframework.security.web.session.ConcurrentSessionFilter;
import org.springframework.security.web.session.SessionManagementFilter;
-import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
import org.springframework.util.ReflectionUtils;
/**
diff --git a/config/src/test/resources/org/springframework/security/util/filtertest-valid.xml b/config/src/test/resources/org/springframework/security/util/filtertest-valid.xml
index aff02845c8..7e2a7823c3 100644
--- a/config/src/test/resources/org/springframework/security/util/filtertest-valid.xml
+++ b/config/src/test/resources/org/springframework/security/util/filtertest-valid.xml
@@ -24,9 +24,9 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.xsd">
-
+
-
+
diff --git a/itest/context/src/test/resources/filter-chain-performance-app-context.xml b/itest/context/src/test/resources/filter-chain-performance-app-context.xml
index 02d82e02c5..d37b985bf0 100644
--- a/itest/context/src/test/resources/filter-chain-performance-app-context.xml
+++ b/itest/context/src/test/resources/filter-chain-performance-app-context.xml
@@ -52,7 +52,7 @@
-
+
diff --git a/samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml b/samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml
index ec0defb214..c6c1ddee35 100644
--- a/samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml
+++ b/samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml
@@ -88,8 +88,8 @@
-
-
+
+
diff --git a/web/src/main/java/org/springframework/security/web/authentication/session/package.html b/web/src/main/java/org/springframework/security/web/authentication/session/package.html
new file mode 100644
index 0000000000..a15f4a52b3
--- /dev/null
+++ b/web/src/main/java/org/springframework/security/web/authentication/session/package.html
@@ -0,0 +1,5 @@
+
+
+Strategy interface and implementations for handling session-related behaviour for a newly authenticated user.
+
+
diff --git a/web/src/main/java/org/springframework/security/web/authentication/ui/package.html b/web/src/main/java/org/springframework/security/web/authentication/ui/package.html
new file mode 100644
index 0000000000..079628f15a
--- /dev/null
+++ b/web/src/main/java/org/springframework/security/web/authentication/ui/package.html
@@ -0,0 +1,6 @@
+
+
+Authentication user-interface rendering code. Used to conveniently create an appropriate login page when using namespace
+configuration without defining a login page URL.
+
+
diff --git a/web/src/main/java/org/springframework/security/web/authentication/www/package.html b/web/src/main/java/org/springframework/security/web/authentication/www/package.html
new file mode 100644
index 0000000000..f23bf80f5c
--- /dev/null
+++ b/web/src/main/java/org/springframework/security/web/authentication/www/package.html
@@ -0,0 +1,5 @@
+
+
+Contains WWW-Authenticate based authentication mechanism implementations: Basic and Digest authentication.
+
+
diff --git a/web/src/main/java/org/springframework/security/web/savedrequest/package.html b/web/src/main/java/org/springframework/security/web/savedrequest/package.html
index 6264c5ee5a..4eb5c52d65 100644
--- a/web/src/main/java/org/springframework/security/web/savedrequest/package.html
+++ b/web/src/main/java/org/springframework/security/web/savedrequest/package.html
@@ -1,6 +1,8 @@
-Stores a HttpServletRequest
so that it can subsequently be emulated by the
-SavedRequestAwareWrapper
.
+Classes related top the caching of an HttpServletRequest
which requires authentication. While the user is
+logging in, the request is cached (using the RequestCache implementation) by the ExceptionTranslationFilter.
+Once the user has been authenticated, the original request is restored following a redirect to a matching URL, and the
+RequestCache is queried to obtain the original (matching) request.
diff --git a/web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilter.java b/web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilter.java
similarity index 97%
rename from web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilter.java
rename to web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilter.java
index e266b6fd3e..298bebb97a 100644
--- a/web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilter.java
+++ b/web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilter.java
@@ -13,7 +13,7 @@
* limitations under the License.
*/
-package org.springframework.security.web.wrapper;
+package org.springframework.security.web.servletapi;
import java.io.IOException;
diff --git a/web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapper.java b/web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapper.java
similarity index 99%
rename from web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapper.java
rename to web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapper.java
index 0da855cd86..f179a0539b 100644
--- a/web/src/main/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapper.java
+++ b/web/src/main/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapper.java
@@ -13,7 +13,7 @@
* limitations under the License.
*/
-package org.springframework.security.web.wrapper;
+package org.springframework.security.web.servletapi;
import java.security.Principal;
diff --git a/web/src/main/java/org/springframework/security/web/wrapper/package.html b/web/src/main/java/org/springframework/security/web/servletapi/package.html
similarity index 100%
rename from web/src/main/java/org/springframework/security/web/wrapper/package.html
rename to web/src/main/java/org/springframework/security/web/servletapi/package.html
diff --git a/web/src/main/java/org/springframework/security/web/session/package.html b/web/src/main/java/org/springframework/security/web/session/package.html
index d7adceb97c..82e4ff8951 100644
--- a/web/src/main/java/org/springframework/security/web/session/package.html
+++ b/web/src/main/java/org/springframework/security/web/session/package.html
@@ -1,5 +1,5 @@
-HttpSession events and publisher classes.
+Session management filters, HttpSession events and publisher classes.
diff --git a/web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilterTests.java b/web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilterTests.java
similarity index 90%
rename from web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilterTests.java
rename to web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilterTests.java
index 5e0e4d1f3b..9ae7ce0728 100644
--- a/web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestFilterTests.java
+++ b/web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestFilterTests.java
@@ -13,7 +13,7 @@
* limitations under the License.
*/
-package org.springframework.security.web.wrapper;
+package org.springframework.security.web.servletapi;
import javax.servlet.FilterChain;
import javax.servlet.http.HttpServletResponse;
@@ -24,6 +24,8 @@ import org.jmock.integration.junit4.JUnit4Mockery;
import org.junit.Test;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestWrapper;
/**
diff --git a/web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapperTests.java b/web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapperTests.java
similarity index 97%
rename from web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapperTests.java
rename to web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapperTests.java
index b66bc139a6..915d25f3fa 100644
--- a/web/src/test/java/org/springframework/security/web/wrapper/SecurityContextHolderAwareRequestWrapperTests.java
+++ b/web/src/test/java/org/springframework/security/web/servletapi/SecurityContextHolderAwareRequestWrapperTests.java
@@ -13,7 +13,7 @@
* limitations under the License.
*/
-package org.springframework.security.web.wrapper;
+package org.springframework.security.web.servletapi;
import junit.framework.TestCase;
@@ -23,6 +23,7 @@ import org.springframework.security.core.Authentication;
import org.springframework.security.core.authority.AuthorityUtils;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.User;
+import org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestWrapper;
/**
* Tests {@link SecurityContextHolderAwareRequestWrapper}.