Author: joakime Date: Thu Nov 8 07:59:34 2007 New Revision: 593215 URL: http://svn.apache.org/viewvc?rev=593215&view=rev Log: [MRM-440] If webdav URL lacks a trailing /, navigating to all links in the listing return 404. Fixed by redirecting to proper url in the situation of a GET request on an existing directory.
Modified: maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java Modified: maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java?rev=593215&r1=593214&r2=593215&view=diff ============================================================================== --- maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java (original) +++ maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java Thu Nov 8 07:59:34 2007 @@ -146,8 +146,15 @@ // If this a directory resource, then we are likely browsing. if ( resourceFile.exists() && resourceFile.isDirectory() ) { - // TODO: [MRM-440] - If webdav URL lacks a trailing /, navigating to all links in the listing return 404. - // TODO: Issue redirect with proper pathing. + String requestURL = request.getRequest().getRequestURL().toString(); + + // [MRM-440] - If webdav URL lacks a trailing /, navigating to all links in the listing return 404. + if( !requestURL.endsWith( "/" ) ) + { + String redirectToLocation = requestURL + "/"; + response.sendRedirect( redirectToLocation ); + return; + } // Process the request. davServer.process( request, response );