Re: Question on new PUT section

On Mar 11, 2011, at 11:54 AM, Julian Reschke wrote:
> On 11.03.2011 20:45, Roy T. Fielding wrote:
>> On Mar 11, 2011, at 10:59 AM, Robert Brewer wrote:
>> 
>>> http://trac.tools.ietf.org/wg/httpbis/trac/changeset/1158
>>> modified section 7.6.p.5 to say:
>>> 
>>> "For example, if the target resource is configured to always
>>> have a Content-Type of "text/html" and the representation being
>>> PUT has a Content-Type of "image/jpeg", then the origin server
>>> SHOULD do one of: (a) reconfigure the target resource to
>>> reflect the new media type; (b) transform the PUT representation
>>> to a format consistent with that of the resource before saving
>>> it as the new resource state; or, (c) reject the request with a
>>> 409 response indicating that the target resource is limited to
>>> "text/html", perhaps including a link to a different resource
>>> that would be a suitable target for the new representation.
>>> 
>>> Roy, can you explain why 409 is a better choice than 415 in case (c)?
>> 
>> It is just a slight preference for uniform handling of PUT
>> (409 is also used by webdav, IIRC).  415 was created for POST
> 
> ...WebDAV does use 409 in several places, but it doesn't say anything specific about PUT. (as far as I recall)
> 
>> handling processes.  It could go either way for this example.
>> 
>> Anyone know of implementations that do this kind of error?
> 
> I believe Spring/Rest will return 415 if the media type isn't accepted.

Ah, ugh, did I really need to look at that?

<http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-exceptionhandlers>

The exception is from the Jersey annotation support, so it might
apply to both POST and PUT.  I guess that means the example should
use 415 and the text above it should say to respond with 409 or 415,
as appropriate. 

....Roy

Received on Friday, 11 March 2011 20:20:54 UTC