You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Ana Vinatoru (JIRA)" <ji...@apache.org> on 2017/06/13 15:37:00 UTC

[jira] [Created] (JCR-4146) json extension is removed by AbstractWebdavServlet on COPY request

Ana Vinatoru created JCR-4146:
---------------------------------

             Summary: json extension is removed by AbstractWebdavServlet on COPY request
                 Key: JCR-4146
                 URL: https://issues.apache.org/jira/browse/JCR-4146
             Project: Jackrabbit Content Repository
          Issue Type: Bug
          Components: jackrabbit-webdav
    Affects Versions: 2.15.3
            Reporter: Ana Vinatoru


This issue was first observed via crxDE: the user did a copy / paste on a node with the .json extension (let's say test.json). After saving, the new node was named "Copy of test" instead of "Copy of test.json".

I tracked the request to the AbstractWebdavServlet.doCopy method - and this is where the .json extension seems to be lost.
The Destination header sent by crxde includes the extension, but the new resource created in doCopy does not have it.
The request looked like this:

{code:java}
curl -u admin:admin 'http://localhost:4502/crx/server/crx.default/jcr%3aroot/libs/test.json' -X COPY -H 'Overwrite: T' -H 'Destination: /crx/server/crx.default/jcr%3aroot/libs/Copy%20of%20test.json' -v
{code}

To rule out issues in other layers, I tested with the Jackrabbit 2.14.x standalone.
I uploaded the test.json file via WebDav, then executed the following curl request:

{code:java}
curl -u admin:admin 'http://localhost:9001/server/default/jcr:root/test.json' -X COPY -H 'Overwrite: T' -H 'Destination: /server/default/jcr:root/copytest.json' -v
{code}
The new node was created, but instead of being named "copytest.json", it is called "copytest".





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)