Mariangela Hills created STRATOS-1283:
-----------------------------------------

             Summary: Wrong HTTP status code - deleting an artifact that does 
not exist
                 Key: STRATOS-1283
                 URL: https://issues.apache.org/jira/browse/STRATOS-1283
             Project: Stratos
          Issue Type: Bug
          Components: REST API
    Affects Versions: 4.1.0 Alpha
            Reporter: Mariangela Hills
            Priority: Minor


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.

{"errorCode":400,"errorMessage":"Error while fulfilling the request"}

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"}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to