Hi Devs, IMO I think it is ok to have the statusCode in the success response. And +1 for using "statusMessage" instead of "successMessage".
Regards, Vishanth On Thu, Mar 19, 2015 at 12:42 AM, Imesh Gunaratne <im...@apache.org> wrote: > Hi Devs, > > I'm -1 to following response message format: > > {"statusCode":*200*,"successMessage":"Tenant added successfully: [tenant] > frank.com"} > > 1. We might not need to repeat HTTP status code again in the message body. > Instead we could have an attribute called "status" and say whether the > message was "successful" or "error". > 2. Attribute "successMessage" might not be the right term to use, may be > this could be called "statusMessage". > > Please refer following discussion in stackoverflow on this: > > http://stackoverflow.com/questions/12806386/standard-json-api-response-format > > Thanks > > On Wed, Mar 18, 2015 at 12:22 PM, Mariangela Hills <mariang...@wso2.com> > wrote: > >> Thanks, Udara! >> >> This same issue occurs when adding the following: >> >> - user - https://issues.apache.org/jira/browse/STRATOS-1266 >> - network partition - >> https://issues.apache.org/jira/browse/STRATOS-1260 >> >> I have created JIRAs to track these tasks. >> >> Regards, >> Mariangela >> >> >> >> >> *--* >> Mariangela Hills >> Senior Technical Writer >> >> *WSO2, Inc.*lean.enterprise.middleware. >> m: +94 773 500185 >> w: http://wso2.com >> <http://wso2.com/events/> >> >> On Wed, Mar 18, 2015 at 10:24 AM, Udara Liyanage <ud...@wso2.com> wrote: >> >>> Hi Mari, >>> >>> Tenant addition is fixed now >>> with cd182f21ef31a6a94d71f72f62759a64b29450ce >>> >>> udara@puppet:~/projects/stratos [master]$ curl -X POST -H >>> "Content-Type: application/json" -d @'tenant.json' -k -v -u admin:admin >>> https://localhost:9443/api/tenants >>> * Hostname was NOT found in DNS cache >>> * Trying 127.0.0.1... >>> * Connected to localhost (127.0.0.1) port 9443 (#0) >>> * successfully set certificate verify locations: >>> * CAfile: none >>> CApath: /etc/ssl/certs >>> * 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 ECDHE-RSA-AES256-SHA384 >>> * 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 >>> * 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/tenants HTTP/1.1 >>> > Authorization: Basic YWRtaW46YWRtaW4= >>> > User-Agent: curl/7.35.0 >>> > Host: localhost:9443 >>> > Accept: */* >>> > Content-Type: application/json >>> > Content-Length: 190 >>> > >>> * upload completely sent off: 190 out of 190 bytes >>> < HTTP/1.1 *201* Created >>> < Date: Wed, 18 Mar 2015 03:38:50 GMT >>> < Location: https://localhost:9443/api/tenants/frank.com >>> < Content-Type: application/json >>> < Transfer-Encoding: chunked >>> * Server WSO2 Carbon Server is not blacklisted >>> < Server: WSO2 Carbon Server >>> < >>> * Connection #0 to host localhost left intact >>> {"statusCode":*201*,"successMessage":"Tenant added successfully: >>> [tenant] frank.com"} >>> >>> On Tue, Mar 17, 2015 at 5:16 PM, Mariangela Hills <mariang...@wso2.com> >>> wrote: >>> >>>> I just added a user and I faced the same issue! >>>> >>>> > POST /api/users 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: 142 >>>> > >>>> * upload completely sent off: 142 out of 142 bytes >>>> < HTTP/1.1 201 Created >>>> < Date: Tue, 17 Mar 2015 11:43:00 GMT >>>> < Location: https://localhost:9443/api/users/kim >>>> < Content-Type: application/json >>>> < Transfer-Encoding: chunked >>>> < Server: WSO2 Carbon Server >>>> < >>>> * Connection #0 to host localhost left intact >>>> {"statusCode":200,"successMessage":"User added successfully: [user] >>>> kim"}* Closing connection #0 >>>> * SSLv3, TLS alert, Client hello (1): >>>> >>>> >>>> Regards, >>>> Mariangela >>>> >>>> >>>> >>>> >>>> *--* >>>> Mariangela Hills >>>> Senior Technical Writer >>>> >>>> *WSO2, Inc.*lean.enterprise.middleware. >>>> m: +94 773 500185 >>>> w: http://wso2.com >>>> <http://wso2.com/events/> >>>> >>>> On Tue, Mar 17, 2015 at 5:05 PM, Udara Liyanage <ud...@wso2.com> wrote: >>>> >>>>> Hi Mari, >>>>> >>>>> The reason is it returns a CREATED response (201) with a message code >>>>> OK (200). This is a bug, thanks for reporting >>>>> >>>>> return Response.created(url).entity( >>>>> new SuccessResponseBean(Response.Status.OK.getStatusCode(), >>>>> String.format("Tenant added successfully: >>>>> [tenant] %s", tenantDomain))).build(); >>>>> >>>>> This should work. However I will check and update the thread. >>>>> >>>>> return Response.created(url).entity( >>>>> new SuccessResponseBean(Response.Status.CREATED.getStatusCode(), >>>>> String.format("Tenant added successfully: >>>>> [tenant] %s", tenantDomain))).build(); >>>>> >>>>> >>>>> On Tue, Mar 17, 2015 at 3:56 PM, Mariangela Hills <mariang...@wso2.com >>>>> > wrote: >>>>> >>>>>> Is it correct that two different status codes appear when adding a >>>>>> tenant? >>>>>> >>>>>> curl -X POST -H "Content-Type: application/json" -d @'tenant.json' -k >>>>>> -v -u admin:admin https://localhost:9443/api/tenants >>>>>> * 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' >>>>>> > POST /api/tenants 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: 190 >>>>>> > >>>>>> * upload completely sent off: 190 out of 190 bytes >>>>>> < HTTP/1.1 *201* Created >>>>>> < Date: Tue, 17 Mar 2015 06:35:05 GMT >>>>>> < Location: https://localhost:9443/api/tenants/frank.com >>>>>> < Content-Type: application/json >>>>>> < Transfer-Encoding: chunked >>>>>> < Server: WSO2 Carbon Server >>>>>> < >>>>>> * Connection #0 to host localhost left intact >>>>>> {"statusCode":*200*,"successMessage":"Tenant added successfully: >>>>>> [tenant] frank.com"}* Closing connection #0 >>>>>> * SSLv3, TLS alert, Client hello (1): >>>>>> >>>>>> >>>>>> https://issues.apache.org/jira/browse/STRATOS-1259 >>>>>> >>>>>> >>>>>> Regards, >>>>>> Mariangela >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> *--* >>>>>> Mariangela Hills >>>>>> Senior Technical Writer >>>>>> >>>>>> *WSO2, Inc.*lean.enterprise.middleware. >>>>>> m: +94 773 500185 >>>>>> w: http://wso2.com >>>>>> <http://wso2.com/events/> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Udara Liyanage >>>>> Software Engineer >>>>> WSO2, Inc.: http://wso2.com >>>>> lean. enterprise. middleware >>>>> >>>>> web: http://udaraliyanage.wordpress.com >>>>> phone: +94 71 443 6897 >>>>> >>>> >>>> >>> >>> >>> -- >>> >>> Udara Liyanage >>> Software Engineer >>> WSO2, Inc.: http://wso2.com >>> lean. enterprise. middleware >>> >>> web: http://udaraliyanage.wordpress.com >>> phone: +94 71 443 6897 >>> >> >> > > > -- > Imesh Gunaratne > > Technical Lead, WSO2 > Committer & PMC Member, Apache Stratos > -- *Vishanth Balasubramaniam* Software Engineer WSO2 Inc.; http://wso2.com lean.enterprise.middleware mobile: *+94771737718* about me: *http://about.me/vishanth <http://about.me/vishanth>*