I'll go so far as to suggest a change that would enable both of these. In the DefaultRestletBinding class, the populateRestletResponseFromExchange method could start like this:
public void populateRestletResponseFromExchange(Exchange exchange, Response response) { Object body = exchange.getOut().getBody(); MediaType mediaType = null; String contentType = (String) exchange.getOut().getHeader( CONTENT_TYPE_HEADER); if (contentType != null) { mediaType = MediaType.valueOf(contentType); } if (mediaType == null) { if (body instanceof String) { mediaType = MediaType.TEXT_PLAIN; } else if (body instanceof StringSource || body instanceof DOMSource) { mediaType = MediaType.TEXT_XML; } } String responseCodeHeader = (String) exchange.getOut().getHeader( RESPONSE_STATUS_CODE_HEADER); if (responseCodeHeader != null) { response.setStatus(Status.valueOf(Integer .parseInt(responseCodeHeader))); } ... (rest of method is as before) In this case, headers could be set that would indicate what content type / status code to use, and the current behavior would be retained if not specified. nojonojo wrote: > > > Is there a way to set the content type and return code on the response > sent by the Restlet component? Looking at the code, it's clear that the > answer is "no" for the content type - you get either text/plain or > text/xml (no chance for application/JSON or anything else user-defined). > > Thanks. > > Nolan > -- View this message in context: http://www.nabble.com/restlet-response-content-type-and-return-code-tp21819209s22882p21820115.html Sent from the Camel - Users mailing list archive at Nabble.com.