Yes, IMO we need to merge successful message and error message formats into one generic response message format:
{ "status":"successful", "message":"Application A1 created successfully" } { "status":"error", "message":"An application with the id A1 already exists" } On Fri, Apr 17, 2015 at 2:57 PM, Mariangela Hills <mariang...@wso2.com> wrote: > Has a final decision been reached regarding the response message format? > > 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 Thu, Mar 19, 2015 at 6:11 PM, Vishanth Balasubramaniam < > vishan...@wso2.com> wrote: > >> 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>* >> >> > -- Imesh Gunaratne Technical Lead, WSO2 Committer & PMC Member, Apache Stratos