diff --git a/modules/dcache-webdav/src/main/java/org/dcache/webdav/transfer/CopyFilter.java b/modules/dcache-webdav/src/main/java/org/dcache/webdav/transfer/CopyFilter.java index 9a2dfb1d177..a9f1f3e944e 100644 --- a/modules/dcache-webdav/src/main/java/org/dcache/webdav/transfer/CopyFilter.java +++ b/modules/dcache-webdav/src/main/java/org/dcache/webdav/transfer/CopyFilter.java @@ -387,8 +387,9 @@ private void processThirdPartyCopy(Request request, Response response) TransferType type = TransferType.fromScheme(remote.getScheme()); + var requestPath = URI.create(request.getAbsoluteUrl()).getPath(); FsPath path = _pathMapper.asDcachePath(ServletRequest.getRequest(), - request.getAbsolutePath(), m -> new ErrorResponseException(Status.SC_FORBIDDEN, m)); + requestPath, m -> new ErrorResponseException(Status.SC_FORBIDDEN, m)); // Always check any client-supplied Overwrite header, to throw an error if the value is malformed. boolean overwriteAllowed = clientAllowsOverwrite();