Details
-
Sub-task
-
Status: Resolved
-
Minor
-
Resolution: Implemented
-
4.1.0 Alpha
-
None
-
None
Description
When deleting an artifact that does not exist, the 400 (Bad Request) HTTP status code is returned [1]. This is not correct as it gives the user the impression that they have entered an incorrect cURL command.
(1) In situations like this the 404 (Not found) request should be returned to indicate to the user that the deletion did not take place because the resource was not found.
(2)
The following error message that is returned too should be more meaningful, so the user can identify why the error occurred.
Suggested message:
{"errorCode":404,"errorMessage":"Could not delete the cartridge group as it does not exist."}----------------------------------------------------------------------------
[1]
Admin16s-MacBook-Air:samples Admin16$ curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://localhost:9443/api/cartridgeGroups/group634
- About to connect() to localhost port 9443 (#0)
- Trying ::1...
- connected
- Connected to localhost (::1) port 9443 (#0)
- SSLv3, TLS handshake, Client hello (1):
- SSLv3, TLS handshake, Server hello (2):
- SSLv3, TLS handshake, CERT (11):
- SSLv3, TLS handshake, Server key exchange (12):
- SSLv3, TLS handshake, Server finished (14):
- SSLv3, TLS handshake, Client key exchange (16):
- SSLv3, TLS change cipher, Client hello (1):
- SSLv3, TLS handshake, Finished (20):
- SSLv3, TLS change cipher, Client hello (1):
- SSLv3, TLS handshake, Finished (20):
- SSL connection using DHE-RSA-AES256-SHA
- Server certificate:
- subject: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
- start date: 2010-02-19 07:02:26 GMT
- expire date: 2035-02-13 07:02:26 GMT
- common name: localhost (matched)
- issuer: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
- SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway.
- Server auth using Basic with user 'admin'
> DELETE /api/cartridgeGroups/group634 HTTP/1.1
> Authorization: Basic YWRtaW46YWRtaW4=
> User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8| zlib/1.2.5
> Host: localhost:9443
> Accept: /
> Content-Type: application/json
>
< HTTP/1.1 400 Bad Request
< Date: Tue, 24 Mar 2015 04:25:16 GMT
< Content-Type: application/json
< Transfer-Encoding: chunked
< Connection: close
< Server: WSO2 Carbon Server
< - Closing connection #0
- SSLv3, TLS alert, Client hello (1): {"errorCode":400,"errorMessage":"Error while fulfilling the request"}