diff -r 72aff69f7c29 nuxeo-platform-wss-backend/pom.xml
--- a/nuxeo-platform-wss-backend/pom.xml	Mon Jul 19 15:47:58 2010 +0200
+++ b/nuxeo-platform-wss-backend/pom.xml	Sun Aug 01 19:40:40 2010 +0200
@@ -16,6 +16,11 @@
 
     <dependencies>
         <dependency>
+    <groupId>org.nuxeo.ecm.platform</groupId>
+  <artifactId>nuxeo-platform-web-common</artifactId>
+        </dependency>
+
+        <dependency>
             <groupId>org.nuxeo.ecm.core</groupId>
             <artifactId>nuxeo-core-api</artifactId>
         </dependency>
diff -r 72aff69f7c29 nuxeo-platform-wss-backend/src/main/java/org/nuxeo/ecm/platform/wss/auth/NuxeoWSSAuthenticationFilter.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nuxeo-platform-wss-backend/src/main/java/org/nuxeo/ecm/platform/wss/auth/NuxeoWSSAuthenticationFilter.java	Sun Aug 01 19:40:40 2010 +0200
@@ -0,0 +1,76 @@
+/*
+ * (C) Copyright 2006-2009 Nuxeo SA (http://nuxeo.com/) and contributors.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the GNU Lesser General Public License
+ * (LGPL) version 2.1 which accompanies this distribution, and is available at
+ * http://www.gnu.org/licenses/lgpl.html
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Contributors:
+ *     Christophe Capon
+ */
+
+package org.nuxeo.ecm.platform.wss.auth;
+
+import java.io.IOException;
+
+import javax.servlet.FilterChain;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+import org.nuxeo.ecm.platform.ui.web.auth.CachableUserIdentificationInfo;
+import org.nuxeo.ecm.platform.ui.web.auth.NXAuthConstants;
+import org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter;
+
+/**
+ *
+ * This class prevents the standard NuxeoAuthenticationFilter to cache the user identity
+ * returned by NTLM authentication. It is necessary for NTLM to work with WSS, since
+ * MSOffice applications post several NTLMSSP_NEGOTIATE and are waiting for the 401 Unauthorized
+ * response. When caching is activated, the standard NuxeoAuthenticationFilter recognizes the
+ * user previously identified with NTLM and forwards the request to the servlet.
+ * Since the request is a /_vti_bin/.... the servlet fails.
+ * 
+ * All /_vti_bin/* requests are forwarded to this filter instead of NuxeoAuthenticationFilter.
+ * When a negotiation is issued by MSOffice, it removes the cached identity, and therefore forces
+ * the NTLMAuthenticato to issue the challenge again.
+ * 
+ * @author <a href="mailto:christophe.capon@vilogia.fr">Christophe Capon</a>
+ *
+ */
+
+public class NuxeoWSSAuthenticationFilter extends NuxeoAuthenticationFilter {
+
+    @Override
+    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
+            ServletException {
+	
+        HttpServletRequest httpRequest = (HttpServletRequest) request;
+
+        String authHeader = httpRequest.getHeader("Authorization");
+        if (authHeader != null && authHeader.contains("NTLM")) {
+            HttpSession session = httpRequest.getSession(false);
+            if (session != null) {
+                CachableUserIdentificationInfo cachableUserInfo = (CachableUserIdentificationInfo) session.getAttribute(NXAuthConstants.USERIDENT_KEY);
+                if (cachableUserInfo != null) {
+                    session.removeAttribute(NXAuthConstants.USERIDENT_KEY);
+                }
+            }
+        }
+        
+        super.doFilter(request, response, chain);
+        
+        
+    }
+    
+    
+    
+}
diff -r 72aff69f7c29 nuxeo-platform-wss-backend/src/main/resources/OSGI-INF/deployment-fragment.xml
--- a/nuxeo-platform-wss-backend/src/main/resources/OSGI-INF/deployment-fragment.xml	Mon Jul 19 15:47:58 2010 +0200
+++ b/nuxeo-platform-wss-backend/src/main/resources/OSGI-INF/deployment-fragment.xml	Sun Aug 01 19:40:40 2010 +0200
@@ -7,15 +7,25 @@
     </module>
   </extension>
 
+
   <extension target="web#STD-AUTH-FILTER">
+
+    <filter>
+      <display-name>WSS Authentication Filter</display-name>
+      <filter-name>NuxeoWSSAuthenticationFilter</filter-name>
+      <filter-class>org.nuxeo.ecm.platform.wss.auth.NuxeoWSSAuthenticationFilter</filter-class>
+    </filter>
+
+  
     <filter-mapping>
-      <filter-name>NuxeoAuthenticationFilter</filter-name>
+      <filter-name>NuxeoWSSAuthenticationFilter</filter-name>
       <url-pattern>/_vti_bin/*</url-pattern>
       <dispatcher>REQUEST</dispatcher>
       <dispatcher>FORWARD</dispatcher>
     </filter-mapping>
+    
     <filter-mapping>
-      <filter-name>NuxeoAuthenticationFilter</filter-name>
+      <filter-name>NuxeoWSSAuthenticationFilter</filter-name>
       <url-pattern>/nuxeo/_vti_bin/*</url-pattern>
       <dispatcher>REQUEST</dispatcher>
       <dispatcher>FORWARD</dispatcher>
