Index: src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java =================================================================== --- src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java (revision 399083) +++ src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java (working copy) @@ -261,6 +261,8 @@ { // Put source into destination path. firePutStarted( resource, source ); + + resource.setName( resource.getName() + TEMP_FILE_EXTENSION ); InputStream is = new PutInputStream( source, resource, this, getTransferEventSupport() ); boolean success = wdresource.putMethod( dest, is, (int) source.length() ); @@ -305,6 +307,23 @@ throw new TransferFailedException( msg, e ); } firePutCompleted( resource, source ); + + String temp_name = resource.getName(); + String new_name = removeTempFileExtension( resource ); + + try + { + wdresource.moveMethod( temp_name, new_name ); + } + catch( HttpException e ) + { + throw new TransferFailedException( "Failed to transfer file: " + e.getMessage() ); + } + catch( IOException e ) + { + throw new TransferFailedException( "Failed to transfer file: " + e.getMessage() ); + } + } /**