You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by jo...@apache.org on 2007/11/08 16:59:34 UTC
svn commit: r593215 -
/maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/repository/ProxiedDavServer.java
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 );