[ 
https://issues.apache.org/jira/browse/SLING-3203?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13804035#comment-13804035
 ] 

Julian Sedding commented on SLING-3203:
---------------------------------------

bq. to return a 400 BAD REQUEST status

I think 400 is the incorrect status code. It is defined in 
[RFC2616|http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html] as "The 
request could not be understood by the server due to malformed syntax.",^, 
however, the syntax of the request is just fine.

Would it make sense to use a simple 404 Not Found?

> Post servlet's delete operation deletes parent of nonexisting node
> ------------------------------------------------------------------
>
>                 Key: SLING-3203
>                 URL: https://issues.apache.org/jira/browse/SLING-3203
>             Project: Sling
>          Issue Type: Bug
>          Components: Servlets
>    Affects Versions: Servlets Post 2.3.2
>            Reporter: Bertrand Delacretaz
>         Attachments: SLING-3203.patch
>
>
> In the below scenario, /tmp/test is gone after the delete operation - the 
> resource resolver goes up the path of the nonexisting node, and it's 
> /tmp/test that's provided to the DeleteOperation.
> I think we should change this (maybe with a backwards compatibility switch), 
> as it's clear that the user's intention in this case is not to delete 
> /tmp/test. Maybe just reject :delete operations if the request has any 
> selector or extensions.
> curl -u admin:admin -X POST http://localhost:8080/tmp/test/some.node
> curl -u admin:admin http://localhost:8080/tmp/test.tidy.2.json # looks good
> curl -u admin:admin -F:operation=delete 
> http://localhost:8080/tmp/test.other/nothing
> curl -u admin:admin http://localhost:8080/tmp/test.tidy.2.json # 404



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to