You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stratos.apache.org by "Mariangela Hills (JIRA)" <ji...@apache.org> on 2015/05/01 12:54:06 UTC

[jira] [Updated] (STRATOS-1360) Wrong HTTP status code and status message returned - PUT /applications

     [ https://issues.apache.org/jira/browse/STRATOS-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mariangela Hills updated STRATOS-1360:
--------------------------------------
    Description: 
1) HTTP status code is returned should be 200 not 201 as it is executing a PUT HTTP method [1]. 

2) The status message is wrong as it says the application was added rather than saying that the application was updated.



[1]
> PUT /api/applications 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
> Content-Length: 777
> 
* upload completely sent off: 777 out of 777 bytes
< HTTP/1.1 201 Created
< Date: Fri, 01 May 2015 10:07:27 GMT
< Location: https://localhost:9443/api/applications/single-cartridge-app
< Content-Type: application/json
< Transfer-Encoding: chunked
< Server: WSO2 Carbon Server
< 
* Connection #0 to host localhost left intact
{"statusCode":201,"successMessage":"Application added successfully: [application] single-cartridge-app"}

  was:
Normally the 409 HTTP status code should be returned when there is a conflict (i.e., when trying to add an identical artifact, which is already in the system). However, when executing POST /cartridgeGroups
the 400 HTTP status code is returned [1]. This is incorrect as it gives the user the impression that the cURL command that he/she entered is wrong.

[1]
Admin16s-MacBook-Air:samples Admin16$ curl -X POST -H "Content-Type: application/json" -d @'cartridges-groups/esb-php-group.json' -k -v -u admin:admin https://localhost:9443/api/cartridgeGroups
* About to connect() to localhost port 9443 (#0)
*   Trying 127.0.0.1...
* connected
* Connected to localhost (127.0.0.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'
> POST /api/cartridgeGroups 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
> Content-Length: 273
> 
* upload completely sent off: 273 out of 273 bytes
< HTTP/1.1 400 Bad Request
< Date: Mon, 23 Mar 2015 11:07:31 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":"Could not add cartridge group"}


> Wrong HTTP status code and status message returned - PUT /applications
> ----------------------------------------------------------------------
>
>                 Key: STRATOS-1360
>                 URL: https://issues.apache.org/jira/browse/STRATOS-1360
>             Project: Stratos
>          Issue Type: Sub-task
>          Components: REST API
>    Affects Versions: 4.1.0 Alpha
>            Reporter: Mariangela Hills
>            Priority: Minor
>             Fix For: 4.1.0 RC1
>
>
> 1) HTTP status code is returned should be 200 not 201 as it is executing a PUT HTTP method [1]. 
> 2) The status message is wrong as it says the application was added rather than saying that the application was updated.
> [1]
> > PUT /api/applications 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
> > Content-Length: 777
> > 
> * upload completely sent off: 777 out of 777 bytes
> < HTTP/1.1 201 Created
> < Date: Fri, 01 May 2015 10:07:27 GMT
> < Location: https://localhost:9443/api/applications/single-cartridge-app
> < Content-Type: application/json
> < Transfer-Encoding: chunked
> < Server: WSO2 Carbon Server
> < 
> * Connection #0 to host localhost left intact
> {"statusCode":201,"successMessage":"Application added successfully: [application] single-cartridge-app"}



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