[ https://issues.apache.org/jira/browse/WW-3303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lukasz Lenart closed WW-3303. ----------------------------- Resolution: Fixed Fix Version/s: 2.3.1 It should be fixed with WW-3713 > allow POST, PUT or DELETE to return content > ------------------------------------------- > > Key: WW-3303 > URL: https://issues.apache.org/jira/browse/WW-3303 > Project: Struts 2 > Issue Type: Improvement > Components: Plugin - REST > Affects Versions: 2.3.x > Environment: this problem involve any environment > Reporter: Luca Marrocco > Priority: Minor > Fix For: 2.3.1 > > Attachments: allow-content-for-POST-PUT-DELETE.patch > > > currently return a content from a request using POST, PUT or DELETE method is > explicit ignored by DefaultContentTypeHandlerManager: > // Don't return any content for PUT, DELETE, and POST where there are no > errors > if (!statusNotOk && !"get".equalsIgnoreCase(req.getMethod())) { > target = null; > } > many time expecially in ajax application that use restful webservice > endpoints required that returned content from those request had some > information. This help client to reduce the network usage. So the client > don't need to do 2 request to update a content and retrive updated content. > for instance DELETE /items/1 can responde with information usegul to the > client: > { movingTo: "/archived-items/1", status: "archiving" } > in general would be responsability of protocol implementation chose right > content to return back to the client. Or in other world developer need to > have freedom to chose to return back a content or not. > to complete the description of this issue i report here some excerpt of HTTP > 1.1 specification where is described that those method request should return > a content (see http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5): > * POST, "The action performed by the POST method might not result in a > resource that can be identified by a URI. In this case, either 200 (OK)_ or > 204 (No Content) is the appropriate response status, depending on whether or > not the response includes an entity that describes the result." > * PUT, rfc do not explicit disallow returning a content > * DELETE, "A successful response SHOULD be 200 (OK) if the response includes > an entity describing the status, 202 (Accepted) if the action has not yet > been enacted, or 204 (No Content) if the action has been enacted but the > response does not include an entity. " -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira