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 <[email protected]>
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 <[email protected]> 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 <[email protected]>
>> 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 <[email protected]> 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 <[email protected]>
>>>> 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