Problematic inheritance of @Produces/@Consumes
----------------------------------------------
Key: CXF-3760
URL: https://issues.apache.org/jira/browse/CXF-3760
Project: CXF
Issue Type: Bug
Components: JAX-RS
Affects Versions: 2.4.2
Reporter: Marco Schulte
Given the sample interface invoiceWebservice:
@Path("invoice/")
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.APPLICATION_XML)
public interface InvoiceWebservice {
@POST
public void insert(WSInvoice wsInvoice);
[...]
}
The usage of insert of this sample interface will cause an error, if used as
both client and server interface.
The client will send the http header "Accept: text/plain" due to return type
void of insert(WSInvoice). But the server will respond with http "406 not
acceptable", because the method inherited @Produces(MediaType.APPLICATION_XML).
A workaround is to only annotate the methods, so insert does not get an
@Produces annotation, or adding "text/plain" to @Consumes.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira